Esiste un modo standard per eseguire il benchmark delle prestazioni di una VM Windows dall'interno del SO guest?


9

Stiamo vedendo il nostro software comportarsi in modo insolito presso uno dei clienti in cui viene eseguito all'interno di una macchina virtuale Windows 2008. L'host è VMWare ESX Server.

Il problema più grande che ho visto è che i nostri processi eliminano le connessioni socket o il timeout delle connessioni socket. Alcuni dei nostri processi comunicano tra loro tramite socket TCP. In alcuni casi realizziamo connessioni socket a sistemi remoti (es. WMI, JDBC).

Sono indotto a credere che la VM sia priva di risorse. Non abbiamo accesso ai dashboard di amministrazione / prestazioni ESX. Ho anche appreso che tutti i numeri forniti da perfmon o task manager all'interno della VM host non sono una vera indicazione della salute del sistema operativo host.

Potrei scrivere un programma che fa un sacco di matematica a virgola mobile e stampa il tempo impiegato. Quindi confrontare quel tempo con lo stesso ottenuto su macchine virtuali diverse o caselle di Windows reali.

Questo approccio è sufficiente per poter determinare se la causa principale è effettivamente la prestazione della VM. Tuttavia, sarebbe molto più semplice convincere il cliente se esistesse un metodo o uno strumento standard per farlo.

Ce n'è uno?


Credo che Windows 2008, e sicuramente Windows2008R2, ti consenta di esaminare nuovi contatori (e altri) che mostrano la frequenza della CPU, la memoria ecc. Appositamente per la virtualizzazione. Ma il modo più rapido sarebbe chiedere all'amministratore della VM: assicurati di non aver sottoscritto una sottoscrizione eccessiva della memoria, specialmente sull'host della VM (la casella host potrebbe avere 64 GB, ma la somma delle macchine virtuali su quell'host potrebbe avere 80 GB di RAM) . Oh, e se questo ha appena iniziato a verificarsi, forse l'host di macchine virtuali è diventato più pesantemente caricato. Chiedere loro di spostare il guest VM su un host meno occupato.
Peter Schofield,

Mi ricorda questo - Blame (Virtualization) lonesysadmin.net/2011/02/08/blame
Doug Luxem

Per favore condividi se hai idea di quali siano questi segnalini. In questo momento sto giocando con questo URL per ottenere alcune prime indicazioni fossiltoys.com/speed.html (forse questo non è un test affidabile, ma sto cercando di trovarne uno più affidabile)
akirekadu

Risposte:


2

Tendo a utilizzare gli stessi prodotti che utilizzo per confrontare l'hardware fisico.

http://www.passmark.com/products/pt.htm

Salta il test 3d ovviamente, ma gli altri possono essere utili, in particolare i benchmark del disco e della rete. Assicurati di utilizzare i driver di rete e I / O appropriati e assicurati che tutte le impostazioni di Windows siano ottimizzate per VM.


1

Per testare la rete, utilizzo iperf e netperf per stressarlo.

Per testare l'I / O del disco, utilizzare sqlio che è un altro strumento standard del settore. Esegui test di I / O sia casuali che sequenziali con blocchi di dimensioni diverse.

Per i test CPU / RAM, non riesco a pensare a nulla per Windows al di sopra della mia testa.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.