Condividi tramite


Elenco di controllo: Ottimizzazione delle prestazioni in Hyper-V

Le considerazioni seguenti si applicano quando si eseguono BizTalk Server e/o le istanze di SQL Server con i database BizTalk Server nelle macchine virtuali Hyper-V.

Allocare il 110%-125% delle risorse CPU e disco all'Macchine virtuali Hyper-V

Pianificare l'allocazione del 110% al 125% delle risorse della CPU e del 105% - 110% delle risorse del disco necessarie da una soluzione hardware fisica alle macchine virtuali Hyper-V usate per la soluzione. Configurando la macchina virtuale Hyper-V con risorse aggiuntive, si assicurerà che possa offrire prestazioni in modo equivalente all'hardware fisico, consentendo qualsiasi sovraccarico richiesto dalla tecnologia di virtualizzazione Hyper-V.

Passaggio Riferimento
Ambito dei requisiti hardware per la soluzione BizTalk Server. - Per definire i requisiti hardware per la soluzione, seguire le indicazioni riportate nella sezione "Pianificazione dell'ambiente per BizTalk Server" nella Guida alle operazioni di BizTalk Server.

- Per definire l'ambito dell'edizione e del numero di Server BizTalk richiesti dalla revisione della soluzione BizTalk Server considerazioni sulla pianificazione documentate in Pianificazione del livello di BizTalk Server.

- Per definire l'ambito della versione e del numero di computer SQL Server necessari per la soluzione, esaminare le considerazioni sulla pianificazione del database nella documentazione seguente:
--- "Pianificazione del livello di database"
--- la sezione "Sovraccarico delle prestazioni di esecuzione SQL Server in Hyper-V" nel white paper "Esecuzione SQL Server 2008 in una procedura consigliata per l'ambiente Hyper-V e considerazioni sulle prestazioni".

- Per completare la pianificazione per gli ambienti di sviluppo, test, staging e produzione, vedere "Pianificazione dello sviluppo, test, gestione temporanea e ambienti di produzione".
Dopo aver ambito i requisiti hardware della soluzione BizTalk Server, pianificare la configurazione dei computer Hyper-V con il 110% - 125% delle risorse CPU e disco, se possibile. Ad esempio, se i requisiti hardware per un computer fisico BizTalk Server usato dalla soluzione sono determinati come 2 GB di RAM, una CPU dual core in esecuzione a 2GHZ e dischi fisici 2x 500 GB, quindi idealmente, la macchina virtuale Hyper-V usata dalla soluzione verrebbe configurata con 2 o più processori virtuali in esecuzione >= 2,2 GHZ e dischi fisici più veloci (in genere aggiungendo spindles o usando dischi più veloci).

Ottimizzare le prestazioni di Hyper-V

Usare le linee guida generali seguenti per configurare Hyper-V per prestazioni ottimali.

Passaggio Riferimento
Applicare indicazioni consigliate per l'ottimizzazione delle prestazioni dei server di virtualizzazione.

Nota: per gli scenari di test descritti in Test BizTalk Server Prestazioni di virtualizzazione, le opzioni di configurazione applicate sono descritte nelle sezioni "Specifiche dell'infrastruttura fisica" e le sezioni "Specifiche di virtualizzazione" nell'articolo Panoramica dello scenario di test.
"Ottimizzazione delle prestazioni per i server di virtualizzazione" nell'articolo "Linee guida per l'ottimizzazione delle prestazioni per Windows Server 2008 R2".
Chiudere tutte le finestre di connessione della macchina virtuale che non sono in uso. Nella gestione Hyper-V, quando si seleziona doppio un nome di macchina virtuale, vengono visualizzate le finestre Connessione macchina virtuale. Queste finestre usano risorse che potrebbero essere altrimenti gratuite per l'uso.
Chiudere o ridurre al minimo la gestione Hyper-V. Il manager Hyper-V usa risorse eseguendo continuamente il polling di ogni macchina virtuale in esecuzione per l'utilizzo e il tempo di attività della CPU. La chiusura o la riduzione al minimo della gestione Hyper-V libera queste risorse.

Ottimizzare le prestazioni di disco, memoria, rete e processore in un ambiente Hyper-V

Usare le linee guida seguenti per ottimizzare le prestazioni del disco, della memoria, della rete e del processore in un ambiente virtuale Hyper-V.

Ottimizzare le prestazioni del processore

Seguire queste linee guida per ottimizzare le prestazioni del processore dei sistemi operativi guest in esecuzione in un ambiente virtuale Hyper-V:

  • Configurare un'allocazione da 1 a 1 di processori virtuali ai processori logici disponibili per prestazioni ottimali - Quando si esegue un'applicazione con utilizzo elevato di CPU, la configurazione migliore è un rapporto da 1 a 1 di processori virtuali nel sistema operativo guest ai processori logici disponibili per il sistema operativo host. Qualsiasi altra configurazione, ad esempio 2:1 o 1:2, è meno efficiente. L'immagine seguente illustra un'allocazione da 1 a 1 dei core del processore virtuale nei sistemi operativi guest a processori logici disponibili per il sistema operativo host:

    Uno a uno fisico al processore virtuale rapporto Rapporto del processore virtuale a logico

  • Tenere presente il limite del processore virtuale per sistemi operativi guest diversi e pianificare di conseguenza - Il numero di core del processore disponibili per il sistema operativo guest in esecuzione in una macchina virtuale Hyper-V può influire sulle prestazioni complessive dell'applicazione ospitata. Pertanto, è consigliabile prendere in considerazione come quale sistema operativo guest verrà installato nella macchina virtuale Hyper-V per ospitare le istanze di BizTalk Server e/o di SQL Server che ospitano i database BizTalk Server. Hyper-V supporta il numero seguente di processori virtuali per il sistema operativo guest specificato:

Sistema operativo Limite del processore virtuale
Windows Server 2008 R2. Tutte le edizioni di Windows Server 2008 R2 sono solo a 64 bit. 4
Windows Server 2008 SP2 a 64 bit 4
Windows Server 2008 SP2 a 32 bit 4
Windows 7 a 64 bit 4
Windows 7 a 32 bit 4
Windows Vista a 64 bit 2
Windows Vista 32 bit 2

Ottimizzare le prestazioni del disco

Seguire queste linee guida per ottimizzare le prestazioni del disco dei sistemi operativi guest in esecuzione in un ambiente virtuale Hyper-V:

Passaggio Riferimento
Configurare i dischi virtuali da usare con le macchine virtuali Hyper-V usando l'opzione disco rigido virtuale di dimensioni fisse .Configure virtual disks for use with the Hyper-V virtual machines using the Hyper-V virtual machines using the fixed-size virtual disk (VHD). Il disco rigido virtuale di dimensioni fisse offre prestazioni che si avvicinano a quello dei dischi fisici insieme alla flessibilità delle funzionalità, ad esempio il supporto del clustering e del disco snapshot. L'archiviazione su disco in un ambiente Hyper-V è accessibile tramite un controller IDE virtuale o un controller SCSI virtuale. A differenza delle versioni precedenti della tecnologia di virtualizzazione Microsoft, non esiste alcuna differenza di prestazioni tra l'uso di un controller IDE virtuale o un controller SCSI virtuale quando si accede a dischi rigidi virtuali. Le opzioni di archiviazione su disco seguenti sono disponibili per l'uso in un ambiente Hyper-V:

- Dischi di dimensioni fisse - Un disco rigido virtuale di dimensioni fisse (VHD) è uno per il quale i blocchi di dati vengono pre-allocati in un disco fisico in base alle dimensioni massime del disco definite al momento della creazione. Ad esempio, se si crea un disco rigido virtuale di 100 GB, Hyper-V allocherà tutti i 100 GB di archiviazione a blocchi di dati oltre al sovraccarico necessario per le intestazioni e i piè di pagina del disco rigido virtuale quando crea il nuovo disco rigido virtuale.
- Espansione dinamica dei dischi - Un disco rigido virtuale in espansione dinamica è uno per cui il disco rigido virtuale iniziale non contiene blocchi di dati. Lo spazio viene invece allocato in modo dinamico quando i dati vengono scritti nel disco rigido virtuale, fino alla dimensione massima specificata al momento della creazione del disco rigido virtuale. Ad esempio, un disco con espansione dinamica di 100 GB contiene inizialmente solo intestazioni del disco rigido virtuale e richiede meno di 2 MB di spazio di archiviazione fisico. Poiché i nuovi dati vengono scritti dalla macchina virtuale nel disco rigido virtuale in espansione dinamica, i blocchi di dati fisici aggiuntivi vengono allocati in incrementi di 2 MB al file VHD, fino a un massimo di 100 GB.
- Dischi diversi - Un disco diverso è un tipo speciale di file VHD in espansione dinamica associato a un disco rigido virtuale "padre". In questa topologia di archiviazione padre/figlio il disco padre rimane invariato e tutte le operazioni di scrittura eseguite nel disco diverso "figlio". Tutte le operazioni di lettura vengono prima controllate sul disco diverso per verificare se il contenuto aggiornato è stato scritto nel disco di differenza; se il contenuto non si trova nel disco diverso, il contenuto viene letto dal disco rigido virtuale padre. I dischi diversi sono utili per gli scenari in cui è necessario mantenere una configurazione di base specifica e si desidera testare facilmente e quindi eseguire il rollback delle modifiche alla baseline. Anche se la flessibilità della topologia di archiviazione padre/figlio fornita tramite dischi diversi è utile per il test, questa non è la configurazione ottimale per le prestazioni perché esiste un sovraccarico associato alla gestione della topologia padre/figlio necessaria quando si usano dischi diversi.
- Dischi pass-through : La funzionalità del disco pass-through consente al sistema operativo guest di ignorare il file system host Hyper-V e accedere direttamente al disco. I dischi resi disponibili per i sistemi operativi guest tramite pass-through devono essere impostati su "offline" nell'host Hyper-V per garantire che sia l'host che il sistema operativo guest non tentino di accedere contemporaneamente al disco. Il disco pass-through offre un vantaggio di prestazioni marginale rispetto ad altre opzioni di archiviazione su disco, ma non supporta determinate funzionalità dei dischi virtuali, ad esempio snapshot di macchine virtuali e supporto per il clustering. Pertanto, l'uso della funzionalità del disco pass-through non è consigliato in un ambiente BizTalk o SQL Server perché i vantaggi di prestazioni marginali sono più che offset dalla funzionalità mancante.

Per altre informazioni sulle prestazioni relative delle scelte di archiviazione su disco fornite con Hyper-V, vedere la voce di blog Analisi archiviazione Hyper-V.
Configurare i dischi per i volumi di dati usando il controller SCSI Questo è consigliabile perché il controller SCSI può essere installato solo se i servizi di integrazione Hyper-V sono installati mentre il controller IDE emulato è disponibile senza installare i servizi di integrazione Hyper-V. L'I/O del disco eseguito usando il driver di filtro IDE fornito con i servizi di integrazione è significativamente migliore delle prestazioni di I/O del disco fornite con il controller IDE emulato. Pertanto, per garantire prestazioni ottimali di I/O del disco per i file di dati in un ambiente virtualizzato Hyper-V, installare i servizi di integrazione nel sistema operativo host e guest e configurare i dischi per i volumi di dati con il controller SCSI sintetico. Per carichi di lavoro I/O di archiviazione altamente intensivi che si estendono su più unità dati, ogni disco rigido virtuale deve essere collegato a un controller SCSI sintetico separato per migliorare le prestazioni complessive. Inoltre, ogni disco rigido virtuale deve essere archiviato in dischi fisici separati. Importante: Non collegare un disco di sistema a un controller SCSI. Un disco rigido virtuale che contiene un sistema operativo deve essere collegato a un controller IDE.

Ottimizzare le prestazioni della memoria

Seguire queste linee guida per ottimizzare le prestazioni di memoria dei sistemi operativi guest in esecuzione in un ambiente virtuale Hyper-V:

Passaggio Riferimento
Assicurarsi che nel computer fisico sia installata memoria sufficiente che ospita le macchine virtuali Hyper-V - La memoria fisica disponibile è spesso il fattore di prestazioni più significativo per BizTalk Server in esecuzione in una macchina virtuale Hyper-V. Si tratta del fatto che ogni macchina virtuale deve risiedere nella memoria del pool non a pagina o nella memoria che non può essere paginata sul disco. Poiché la memoria del pool non a pagina non può essere paginata su disco, il computer fisico che ospita le macchine virtuali deve avere memoria fisica disponibile uguale alla somma della memoria allocata per ogni macchina virtuale e quanto segue:
300 MB per Hypervisor più 32 MB per il primo GB di RAM allocata a ogni macchina virtuale più un altro 8 MB per ogni GB aggiuntivo di RAM allocato a ogni macchina virtuale più 512 MB per il sistema operativo host in esecuzione nella partizione radice
Ad esempio, se una macchina virtuale Hyper-V viene allocata 2 GB di memoria in Hyper-V Manager, la memoria fisica effettiva usata durante l'esecuzione della macchina virtuale Hyper-V sarebbe approssimativamente 2388 MB (300 MB per l'hypervisor +2 GB allocata per la macchina virtuale + 32 MB + 8 MB = 2388 MB). Poiché l'hypervisor deve essere caricato una sola volta, l'inizializzazione delle macchine virtuali successive non comporta il sovraccarico di 300 MB associato al caricamento dell'hypervisor. Pertanto, se due macchine virtuali Hyper-V sono ognuna allocata 2 GB di memoria in Hyper-V Manager, la memoria fisica effettiva usata durante l'esecuzione di queste macchine virtuali Hyper-V sarebbe approssimativamente 4476 MB (300 MB per l'hypervisor +4 GB allocata per le macchine virtuali + 64 MB + 16 MB = 4476 MB). Nota: Come regola generale, pianificare di allocare almeno 512 MB di memoria per la partizione radice per fornire servizi come la virtualizzazione di I/O, il supporto dei file snapshot e la gestione delle partizioni figlio.
- Usare un sistema operativo guest a 64 bit quando possibile: valutare l'uso di un sistema operativo a 64 bit per ogni sistema operativo guest. Questa operazione deve essere eseguita perché per impostazione predefinita, i sistemi operativi Windows a 32 bit possono affrontare solo fino a 2 GB di spazio indirizzi virtuale per ogni processo. L'installazione di un sistema operativo a 64 bit consente alle applicazioni di sfruttare al meglio la memoria installata nel computer fisico che ospita le macchine virtuali Hyper-V.

Ottimizzare le prestazioni di rete

Hyper-V supporta schede di rete sintetiche ed emulate nelle macchine virtuali, ma i dispositivi sintetici offrono prestazioni notevolmente migliori e riduzione del sovraccarico della CPU. Ognuna di queste schede è connessa a un commutatore di rete virtuale, che può essere connessa a una scheda di rete fisica se è necessaria la connettività di rete esterna. Seguire le raccomandazioni riportate in questa sezione per ottimizzare le prestazioni di rete dei sistemi operativi guest in esecuzione in un ambiente virtuale Hyper-V.

Nota

Questi consigli sono disponibili nella sezione "Ottimizzazione prestazioni per i server di virtualizzazione" delle linee guida per l'ottimizzazione delle prestazioni per Windows Server 2008 R2 disponibile per il download. Per informazioni su come ottimizzare la scheda di rete nella partizione radice, inclusa la moderazione degli interruzioni, vedere la sezione "Ottimizzazione delle prestazioni per sottosistema di rete" di questa guida. Le ottimizzazioni TCP in tale sezione devono essere applicate, se necessario, alle partizioni figlio.

Passaggio Riferimento
Configurare Macchine virtuali Hyper-V in esecuzione nello stesso computer host Hyper-V per usare un Rete virtuale privato Seguire le raccomandazioni riportate nella sezione "Configurare Macchine virtuali Hyper-V in esecuzione nello stesso computer host Hyper-V per usare un Rete virtuale privato" di Ottimizzazioni di rete.
Disabilitare l'offload TCP per le schede di rete della macchina virtuale Seguire le raccomandazioni nella sezione "Disabilita offload TCP per le schede di rete della macchina virtuale" di Ottimizzazioni di rete.
Configurare i sistemi operativi guest per usare la scheda di rete sintetica Hyper-V. Hyper-V offre una scheda di rete sintetica progettata in modo specifico per le macchine virtuali per ottenere un sovraccarico della CPU significativamente ridotto su I/O di rete quando viene confrontato con la scheda di rete emulata che simula l'hardware esistente. La scheda di rete sintetica comunica tra le partizioni figlio e radice sul vmBus usando la memoria condivisa per il trasferimento di dati più efficiente.
La scheda di rete emulata deve essere rimossa tramite la finestra di dialogo Impostazioni macchina virtuale e sostituita con una scheda di rete sintetica. Il guest richiede l'installazione dei servizi di integrazione della macchina virtuale.
Se disponibile, abilitare le funzionalità di offload per il driver della scheda di rete fisica nella partizione radice. Come per lo scenario nativo, le funzionalità di offload nella scheda di rete fisica riducono l'utilizzo della CPU degli scenari di I/O di rete negli scenari di macchina virtuale. Hyper-V usa attualmente l'offload checksum LSOv1 e TCPv4. Le funzionalità di offload devono essere abilitate nel driver per la scheda di rete fisica nella partizione radice. Per informazioni dettagliate sulle funzionalità di offload nelle schede di rete, vedere la sezione "Scelta di una scheda di rete" della sezione " Ottimizzazione prestazioni per i server di virtualizzazione" delle linee guida per l'ottimizzazione delle prestazioni per Windows Server 2008 R2 disponibile per il download.
I driver per determinate schede di rete disabilitano LSOv1 ma abilitano LSOv2 per impostazione predefinita. Gli amministratori di sistema devono abilitare in modo esplicito LSOv1 usando la finestra di dialogo Proprietà driver in Gestione dispositivi.
Configurare la topologia del commutatore di rete per usare più schede di rete. Hyper-V supporta la creazione di più commutatori di rete virtuale, ognuno dei quali può essere collegato a una scheda di rete fisica, se necessario. Ogni scheda di rete in una macchina virtuale può essere connessa a un commutatore di rete virtuale. Se il server fisico dispone di più schede di rete, le macchine virtuali con carichi a elevato utilizzo di rete possono trarre vantaggio dalla connessione a diversi commutatori virtuali per usare meglio le schede di rete fisiche.
Se nel computer host Hyper-V vengono installate più schede di rete fisiche, associare gli interruzioni del dispositivo per ogni scheda di rete a un singolo processore logico. In determinati carichi di lavoro, l'associazione degli interruzioni del dispositivo per una singola scheda di rete a un singolo processore logico può migliorare le prestazioni per Hyper-V. È consigliabile usare questa ottimizzazione avanzata solo per risolvere problemi specifici nell'uso completo della larghezza di banda di rete. Gli amministratori di sistema possono usare lo strumento IntPolicy per associare gli interruzioni del dispositivo a processori specifici.
Se possibile, abilitare l'assegnazione di tag VLAN per la scheda di rete sintetica Hyper-V. La scheda di rete sintetica Hyper-V supporta l'assegnazione di tag VLAN. Offre prestazioni di rete notevolmente migliori se la scheda di rete fisica supporta NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB incapsulamento per l'offload di invio e checksum di grandi dimensioni. Senza questo supporto, Hyper-V non può usare l'offload hardware per i pacchetti che richiedono l'assegnazione di tag VLAN e le prestazioni di rete possono essere ridotte.
Installare scheda di rete ad alta velocità nel computer host Hyper-V e configurare per prestazioni massime. Prendere in considerazione l'installazione di schede di rete da 1 GB nel computer host Hyper-V e configurare le schede di rete con una velocità fissa anziché l'uso di "negoziazione automatica" - È molto importante che i parametri di controllo di rete, duplex e flusso siano impostati per corrispondere alle impostazioni sul commutatore a cui sono connessi.
Seguire le procedure consigliate per ottimizzare le prestazioni di rete. L'argomento Ottimizzazioni di rete offre indicazioni generali per ottimizzare le prestazioni di rete. Anche se questo argomento non offre raccomandazioni specifiche per ottimizzare le prestazioni di BizTalk Server in un ambiente virtualizzato Hyper-V, le tecniche sono applicabili a qualsiasi soluzione BizTalk Server, indipendentemente dall'esecuzione su hardware fisico o in un ambiente virtualizzato Hyper-V.

Ottimizzare le prestazioni SQL Server

Seguire i consigli nell'argomento SQL Server Ottimizzazioni per ottimizzare le prestazioni SQL Server per la soluzione BizTalk Server. Anche se questo argomento non offre raccomandazioni specifiche per ottimizzare le prestazioni di BizTalk Server in un ambiente virtualizzato Hyper-V, le tecniche sono applicabili a qualsiasi soluzione BizTalk Server, indipendentemente dall'esecuzione su hardware fisico o in un ambiente virtualizzato Hyper-V.

Ottimizzare la soluzione BizTalk Server

Seguire le raccomandazioni nell'argomento BizTalk Server Ottimizzazioni per ottimizzare le prestazioni della soluzione BizTalk Server. Anche se questo argomento non offre raccomandazioni specifiche per ottimizzare le prestazioni di BizTalk Server in un ambiente virtualizzato Hyper-V, le tecniche sono applicabili a qualsiasi soluzione BizTalk Server, indipendentemente dall'esecuzione su hardware fisico o in un ambiente virtualizzato Hyper-V.