Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Sebbene la maggior parte dei principi per analizzare le prestazioni di un sistema operativo guest installato su una macchina virtuale Hyper-V siano gli stessi dell'analisi delle prestazioni di un sistema operativo installato su una macchina fisica, molti dei metodi di raccolta sono diversi. Le sezioni seguenti devono essere usate come riferimento rapido quando si valutano le prestazioni della soluzione BizTalk Server in esecuzione in un sistema operativo guest installato in una macchina virtuale Hyper-V.
Misurazione delle prestazioni di I/O del disco
Usare i contatori di monitoraggio delle prestazioni seguenti per misurare le prestazioni di I/O del disco in un sistema operativo guest installato in una macchina virtuale Hyper-V:
Passo | Riferimenti |
---|---|
Misurare la latenza del disco in un sistema operativo host Hyper-V : l'indicatore iniziale migliore delle prestazioni del disco in un sistema operativo host Hyper-V viene ottenuto utilizzando i contatori di monitoraggio delle prestazioni "\Disco logico()\Avg. Disk sec/Read" e "\Logical Disk(*)\Avg. Disk sec/Write". Questi contatori di monitoraggio delle prestazioni misurano la quantità di tempo richiesta dalle operazioni di lettura e scrittura per rispondere al sistema operativo. Come regola generale, i tempi di risposta medi superiori a 15 ms sono considerati sub-ottimali. Come regola generale, i tempi di risposta medi superiori a 15 ms sono considerati sub-ottimali. Si basa sul tempo di ricerca tipico di un disco rigido da 7200 RPM senza cache. È consigliabile usare i contatori di monitoraggio delle prestazioni del disco logico rispetto a quello fisico perché le applicazioni e i servizi Windows usano unità logiche rappresentate come lettere di unità in cui il disco fisico (LUN) presentato al sistema operativo può essere costituito da più unità disco fisiche in una matrice di dischi. Usare la regola seguente quando si misura la latenza del disco nel sistema operativo host Hyper-V usando i contatori \Logical Disk(*)\Avg. Disk sec/Read o \Logical Disk(*)\Avg. Disk sec/Write del monitoraggio delle prestazioni. Si basa su un tempo di ricerca tipico di un'unità disco da 7200 RPM senza cache. È consigliabile usare i contatori di monitoraggio delle prestazioni del disco logico rispetto a quello fisico perché le applicazioni e i servizi Windows usano unità logiche rappresentate come lettere di unità in cui il disco fisico (LUN) presentato al sistema operativo può essere costituito da più unità disco fisiche in una matrice di dischi. Usare la regola seguente quando si misura la latenza del disco nel sistema operativo host Hyper-V usando i contatori del monitor delle prestazioni: \Logical Disk(*)\Avg. Disk sec/Read o \Logical Disk(*)\Avg. Disk sec/Write. - Da 1 ms a 15 ms = Salubre - da 15 ms a 25 ms = avviso o monitoraggio - 26 ms o superiore = Critico, le prestazioni saranno influenzate negativamente **Nota:* I dischi fisici installati in un ambiente non virtualizzato offrono prestazioni migliori rispetto ai dischi a cui si accede tramite un sistema operativo host Hyper-V. Se le prestazioni del disco sono assolutamente critiche per le prestazioni complessive dell'applicazione, prendere in considerazione l'hosting dei dischi solo su hardware fisico. Nota: Quando si valutano le prestazioni di I/O del disco, assicurarsi di configurare il software antivirus per escludere l'analisi di tutte le partizioni del disco valutate. L'analisi antivirus introduce un sovraccarico che può influire negativamente sulle prestazioni e sugli sfasamenti dei risultati dei test. Misurare la latenza del disco nei sistemi operativi guest : i tempi di risposta dei dischi usati dai sistemi operativi guest possono essere misurati usando gli stessi contatori di monitoraggio delle prestazioni usati per misurare i tempi di risposta dei dischi usati dal sistema operativo host Hyper-V. |
Per altre informazioni sull'analisi delle prestazioni del disco, vedere le risorse seguenti: - Sezione "Overhead delle prestazioni dell'esecuzione di SQL Server in Hyper-V" nel white paper "Esecuzione di SQL Server 2008 in un ambiente Hyper-V - Procedure consigliate e considerazioni sulle prestazioni" - Eliminare i problemi di Disk-Bound - Procedure consigliate per le operazioni di I/O di pre-distribuzione di SQL Server - Sezione "Colli di bottiglia di I/O" nel documento ufficiale "Risoluzione dei problemi di prestazioni in SQL Server 2008" - Come identificare un problema di prestazioni del disco utilizzando lo strumento Microsoft Server Performance Advisor (SPA) |
Misurazione delle prestazioni della memoria
Usare i contatori di monitoraggio delle prestazioni seguenti per misurare l'impatto della memoria disponibile sulle prestazioni di un sistema operativo guest installato in una macchina virtuale Hyper-V:
Passo | Riferimenti |
---|---|
Misurare la memoria disponibile nel sistema operativo host Hyper-V : la quantità di memoria fisica disponibile per il sistema operativo host Hyper-V può essere determinata monitorando il contatore delle prestazioni "\Memory\Available MBytes" nel computer fisico. Questo contatore segnala la quantità di memoria fisica disponibile per il sistema operativo host. Quando si valuta la memoria fisica disponibile per il sistema operativo host, usare le regole seguenti:
Misurare la memoria disponibile nel sistema operativo guest : la memoria disponibile per i sistemi operativi guest può essere misurata con gli stessi contatori del monitoraggio delle prestazioni usati per misurare la memoria disponibile per il sistema operativo host Hyper-V. |
Per ulteriori informazioni sull'impatto della memoria fisica disponibile sulle prestazioni del server delle applicazioni, consultare l'articolo di Exchange Server 2003, "Escludere problemi di Memory-Bound". |
Misurazione delle prestazioni di rete
Hyper-V consente ai computer guest di condividere la stessa scheda di rete fisica. Anche se questo aiuta a consolidare l'hardware, prestare attenzione a non saturare l'adattatore fisico. Usare i metodi seguenti per garantire l'integrità della rete usata dalle macchine virtuali Hyper-V:
Passo | Riferimenti |
---|---|
Testare la latenza di rete | Effettuare il ping di ogni macchina virtuale per garantire una latenza di rete adeguata. Nelle reti locali si prevede di ricevere meno di 1 ms di tempi di risposta. |
Testare la perdita di pacchetti | Usare l'utilità pathping.exe per testare la perdita di pacchetti tra le macchine virtuali. Pathping.exe misura la perdita di pacchetti nella rete ed è disponibile con tutte le versioni di Windows a partire da Windows 2000 Server. Pathping.exe invia un burst di 100 richieste ping a ogni nodo di rete e calcola il numero di ping restituiti. Nelle reti locali non dovrebbe essere presente alcuna perdita di richieste ping dall'utilità pathping.exe. |
Testare i trasferimenti di file di rete | Copiare un file da 100 MB tra macchine virtuali e misurare il tempo necessario per completare la copia. In una rete a 100Mbit (megabit) integra, un file da 100 MB (megabyte) deve essere copiato in 10 a 20 secondi. In una rete a 1Gbit integro, un file da 100 MB deve essere copiato in circa 3-5 secondi. I tempi di copia al di fuori di questi parametri sono indicativi di un problema di rete. Una causa comune di trasferimenti di rete scarsi si verifica quando la scheda di rete ha "rilevato automaticamente" una rete half duplex di 10 MB che impedisce alla scheda di rete di sfruttare appieno la larghezza di banda disponibile. |
Misurare l'utilizzo della rete nel sistema operativo host Hyper-V | Usare i contatori di monitoraggio delle prestazioni seguenti per misurare l'utilizzo della rete nel sistema operativo host Hyper-V: \Interfaccia di rete(*)\Byte totale/sec : la percentuale di utilizzo della rete viene calcolata moltiplicando il totale byte/sec per 8 per convertirlo in bit, moltiplicare il risultato per 100, quindi dividere per la larghezza di banda corrente della scheda di rete. Usare le soglie seguenti per valutare l'utilizzo della larghezza di banda di rete: - Meno di 40% dell'interfaccia utilizzata = Integro - 41%-64% dell'interfaccia utilizzata = Monitoraggio o cautela - 65-100% dell'interfaccia consumata = Critiche, le prestazioni saranno compromesse negativamente \Interfaccia di rete(*)\Lunghezza coda output : la lunghezza della coda di output misura il numero di thread in attesa sulla scheda di rete. Se sono presenti più di 2 thread in attesa sulla scheda di rete, la rete potrebbe costituire un collo di bottiglia. Le cause comuni di questa situazione sono latenza di rete scarsa e/o frequenze di collisione elevate nella rete. Usare le soglie seguenti per valutare la lunghezza della coda di output: - 0 = Sano - 1-2 = Monitorare o prestare attenzione - Maggiore di 2 = Critico, le prestazioni saranno influenzate negativamente. Assicurarsi che le schede di rete per tutti i computer (fisici e virtuali) nella soluzione siano configurate in modo da usare lo stesso valore per l'unità di trasmissione massima (MTU). Per altre informazioni sulla configurazione del valore MTU, vedere Appendice A: Parametri di configurazione TCP/IP. Se viene misurata una lunghezza della coda di output di 2 o più, è consigliabile aggiungere una o più schede di rete fisiche al computer fisico che ospita le macchine virtuali e associare le schede di rete usate dai sistemi operativi guest a queste schede di rete fisiche. |
Misurare l'utilizzo della rete nei sistemi operativi guest | Se una scheda di rete nella Hyper-V partizione radice è occupata come indicato dai contatori del monitoraggio delle prestazioni indicati in precedenza, è consigliabile usare il contatore di monitoraggio delle prestazioni "\Hyper-V scheda di rete virtuale(*)\Byte/sec" per identificare le schede di rete virtuali che utilizzano la maggior parte dell'utilizzo della rete. |
Per altre informazioni sull'analisi delle prestazioni di rete, vedere Capitolo 15 - Misurazione delle prestazioni delle applicazioni .NET.
Misurazione delle prestazioni del processore
Usare i metodi seguenti per valutare le prestazioni del processore in un sistema operativo guest installato in una macchina virtuale Hyper-V:
Misurare l'utilizzo del processore del sistema operativo guest - Tradizionalmente, le prestazioni del processore possono essere misurate usando il contatore delle prestazioni "\Processore(*)\% Tempo del processore". Questo non è un contatore accurato per valutare l'utilizzo del processore di un sistema operativo guest, anche se poiché Hyper-V misura e segnala questo valore rispetto al numero di processori allocati alla macchina virtuale. Se vengono allocati più processori alle macchine virtuali in esecuzione rispetto a quanti siano effettivamente presenti sul computer fisico, il valore restituito da ogni sistema operativo guest per il contatore del monitoraggio delle prestazioni "\Processore(*)\% tempo processo" sarà basso, anche se in realtà l'utilizzo del processore è un fattore limitante. Ciò si verifica perché i processori virtuali utilizzano i processori fisici a turno. Ogni processore virtuale tenterà di allocare una condivisione di risorse di sistema complessive, quindi in un sistema di processore fisico 4, ogni processore virtuale tenterà per impostazione predefinita di usare 25% delle risorse di sistema. Se vengono creati 8 processori virtuali, ciò significa che collettivamente i processori virtuali tenteranno di utilizzare 200% della capacità della CPU del server. In questo caso, ogni processore virtuale riporterà un basso livello di utilizzo, misurato dal contatore delle prestazioni "\Processore(*)\% tempo processore" (rispetto al livello previsto) e l'eccessivo cambio di contesto tra i processori virtuali risulterà in scarse prestazioni per ciascuna macchina virtuale. In questo scenario è consigliabile ridurre il numero di processori virtuali allocati alle macchine virtuali Hyper-V nel sistema operativo host.Hyper-V fornisce oggetti prestazioni dell'hypervisor per monitorare le prestazioni dei processori logici e virtuali. Un processore logico è correlato direttamente al numero di processori o core installati nel computer fisico. Ad esempio, 2 processori quad core installati nel computer fisico sono correlati a 8 processori logici. I processori virtuali sono ciò che le macchine virtuali usano effettivamente e tutte le esecuzioni nelle partizioni radice e figlio si verificano nei processori virtuali.
Hyper-V fornisce gli oggetti di prestazioni hypervisor per monitorare le prestazioni dei processori logici e virtuali. Un processore logico è correlato direttamente al numero di processori o core installati nel computer fisico. Ad esempio, 2 processori quad core installati nel computer fisico sono correlati a 8 processori logici. I processori virtuali sono ciò che le macchine virtuali usano effettivamente e tutte le esecuzioni nelle partizioni radice e figlio si verificano nei processori virtuali.
Per misurare con precisione l'utilizzo del processore di un sistema operativo guest, usare il contatore delle prestazioni "Hyper-V Hypervisor processore logico (_Totale)% Tempo di esecuzione totale" nel sistema operativo host Hyper-V. Usare le soglie seguenti per valutare l'utilizzo del processore del sistema operativo guest utilizzando il contatore del monitoraggio delle prestazioni "Hyper-V Processori Logici Hypervisor (_Totale)% Tempo Totale di Esecuzione":
Meno di 60% consumati = Sano
60% - 89% consumata = Monitoraggio o cautela
90% - 100% consumati = Critico, le prestazioni ne risentiranno negativamente
Per risolvere i problemi relativi alle prestazioni del processore dei sistemi operativi guest in un ambiente Hyper-V, è consigliabile cercare un equilibrio tra i valori segnalati dal sistema operativo host per "\Hyper-V Processore logico Hypervisor (_Total)\% tempo di esecuzione totale" (LPTR) e "\Hyper-V Hypervisor Virtual Processor (_Total)\% tempo di esecuzione totale" (VPTR). Se LPTR è elevato e VPTR è basso, verificare che non ci siano più processori allocati alle macchine virtuali di quanto siano fisicamente disponibili nel computer fisico. Usa i contatori "\Hyper-V processore virtuale Hypervisor(*)\%Guest tempo di esecuzione" per determinare quali processori virtuali utilizzano la CPU e deallocare i processori virtuali dalle macchine virtuali secondo necessità per configurare una mappatura uno a uno di processori virtuali a processori logici. Per ulteriori informazioni sulla configurazione di un mapping uno a uno tra processori virtuali e processori logici, vedere la sezione "Ottimizzazione delle prestazioni del processore" in Elenco di controllo: Ottimizzazione delle prestazioni in Hyper-V. Se VPTR è elevato e LPTR è basso, prendere in considerazione l'allocazione di processori aggiuntivi alle macchine virtuali se sono disponibili processori logici e se i processori aggiuntivi sono supportati dal sistema operativo guest. Nel caso in cui VPTR sia elevato e LPTR sia basso, con processori logici disponibili per l'allocazione, ma i processori aggiuntivi non siano supportati dal sistema operativo guest, si consiglia di scalare aggiungendo altre macchine virtuali al computer fisico e allocando i processori disponibili a queste macchine virtuali. Nel caso in cui sia VPTR che LPTR siano elevati, la configurazione spinge i limiti del computer fisico e dovrebbe considerare di scalare orizzontalmente aggiungendo un altro computer fisico e altre Hyper-V macchine virtuali all'ambiente. Il diagramma di flusso seguente descrive il processo da usare per la risoluzione dei problemi relativi alle prestazioni del processore in un ambiente Hyper-V.
Se VPTR è elevato e LPTR è basso, valutare la possibilità di allocare processori aggiuntivi alle macchine virtuali se sono disponibili processori logici e se sono supportati processori aggiuntivi dal sistema operativo guest. Nel caso in cui VPTR sia elevato e LPTR sia basso, e siano disponibili processori logici da allocare, ma i processori aggiuntivi non siano supportati dal sistema operativo guest, si dovrebbe prendere in considerazione la possibilità di aumentare le risorse orizzontalmente. Questo può essere fatto aggiungendo altre macchine virtuali al computer fisico e allocando i processori disponibili a queste nuove macchine virtuali. Nel caso in cui sia VPTR che LPTR siano elevati, la configurazione sta raggiungendo i limiti del computer fisico e dovrebbe considerare di espandere l'infrastruttura aggiungendo un altro computer fisico e altre Hyper-V macchine virtuali all'ambiente. Il diagramma di flusso seguente descrive il processo da usare per la risoluzione dei problemi relativi alle prestazioni del processore in un ambiente Hyper-V.
Risoluzione dei problemi relativi alle prestazioni della CPU in un ambiente Hyper-V
Annotazioni
I processori del sistema operativo guest non hanno un'affinità impostata su processori fisici/core : l'hypervisor determina il modo in cui vengono usate le risorse fisiche. In caso di utilizzo del processore, l'hypervisor pianifica il tempo del processore guest al processore fisico sotto forma di thread. Ciò significa che il carico del processore delle macchine virtuali verrà distribuito tra i processori del computer fisico. Inoltre, le macchine virtuali non possono superare l'utilizzo del processore del numero configurato di processori logici, ad esempio se una singola macchina virtuale è configurata per l'esecuzione con 2 processori logici in un computer fisico con 8 processori/core, la macchina virtuale non può superare la capacità del processore del numero di processori logici configurati (in questo caso 2 processori).
Misurare l'utilizzo complessivo del processore dell'ambiente Hyper-V usando i contatori di monitoraggio delle prestazioni Hyper-V : Ai fini della misurazione dell'utilizzo del processore, il sistema operativo host viene considerato logicamente come un altro sistema operativo guest. Pertanto, il contatore di monitoraggio "\Processore(*)\% Tempo processore" misura solo l'utilizzo del processore del sistema operativo host. Per misurare l'utilizzo totale del processore fisico del sistema operativo host e di tutti i sistemi operativi guest, utilizzare il contatore delle prestazioni "\Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time". Questo contatore misura la percentuale totale di tempo impiegato dal processore che esegue il sistema operativo host e tutti i sistemi operativi guest.
Usare le soglie seguenti per valutare l'utilizzo complessivo del processore dell'ambiente Hyper-V usando il contatore delle prestazioni "\Hyper-V processori logici Hypervisor (_Total)\% tempo di esecuzione totale":
Meno di 60% consumati = Sano
60% - 89% consumata = Monitoraggio o cautela
90% - 100% consumati = Critico, le prestazioni ne risentiranno negativamente
Per altre informazioni sull'utilizzo del processore, vedere le risorse seguenti:
Capitolo 15 - Misurazione delle prestazioni delle applicazioni .NET.