Che cos'è Nested Virtualization?

La virtualizzazione annidata è una funzionalità che consente di eseguire Hyper-V all'interno di una macchina virtuale Hyper-V (VM). Negli anni l'hardware è migliorato e i casi d'uso per La virtualizzazione annidata sono stati espansi. Ad esempio, La virtualizzazione annidata può essere utile per:

  • Esecuzione di applicazioni o emulatori in una macchina virtuale annidata
  • Test delle versioni software nelle macchine virtuali
  • Riduzione dei tempi di distribuzione per gli ambienti di training
  • Uso dell'isolamento Hyper-V per i contenitori

I processori moderni includono funzionalità hardware che rendono la virtualizzazione più veloce e sicura. Hyper-V si basa su queste estensioni del processore per eseguire macchine virtuali, ad esempio Intel VT-x e AMD-V. La virtualizzazione annidata rende questo supporto hardware disponibile per le macchine virtuali guest.

Il diagramma seguente mostra Hyper-V senza annidamento. L'hypervisor Hyper-V prende il controllo completo delle funzionalità di virtualizzazione hardware (freccia arancione) e non le espone al sistema operativo guest.

Diagramma dei livelli di Hyper V con virtualizzazione annidata disabilitata.

Al contrario, il diagramma seguente mostra Hyper-V con virtualizzazione annidata abilitata. In questo caso, Hyper-V espone le estensioni di virtualizzazione hardware alle macchine virtuali. Se la funzione di nidificazione è abilitata, una macchina virtuale guest può installare un hypervisor ed eseguire macchine virtuali guest.

Diagramma dei livelli di Hyper V con virtualizzazione annidata abilitata.

Ridimensionamento della memoria dinamica e della memoria di runtime

Quando Hyper-V è in esecuzione all'interno di una macchina virtuale, la macchina virtuale deve essere disattivata per regolare la quantità di memoria. Ciò significa che anche se la memoria dinamica è abilitata, la quantità di memoria non varia. L'abilitazione della virtualizzazione annidata non ha alcun effetto sul ridimensionamento della memoria dinamica o della memoria di runtime.

Per le macchine virtuali senza memoria dinamica abilitata, tentativo di modificare la quantità di memoria durante l'esecuzione ha esito negativo. L'incompatibilità si verifica solo durante l'esecuzione di Hyper-V nella macchina virtuale.

App di virtualizzazione di terze parti

Le applicazioni di virtualizzazione diverse da Hyper-V non sono supportate nelle macchine virtuali Hyper-V e potrebbero non riuscire. Le applicazioni di virtualizzazione includono qualsiasi software che richiede estensioni di virtualizzazione hardware.

Scenari supportati

L'uso di una macchina virtuale Hyper-V annidata nell'ambiente di produzione è supportata sia per Azure che per gli scenari locali seguenti. È anche consigliabile assicurarsi che i servizi e le applicazioni siano supportati.

La virtualizzazione annidata non è adatta per il clustering di failover di Windows Server e le applicazioni sensibili alle prestazioni. È consigliabile valutare completamente i servizi e le applicazioni.

Macchine virtuali Hyper-V nelle macchine virtuali Hyper-V

L'esecuzione di macchine virtuali Hyper-V annidate in macchine virtuali Hyper-V è ideale per i lab di test e gli ambienti di valutazione. In particolare, quando le configurazioni possono essere facilmente modificate e salvate, possono essere usate per ripristinare configurazioni specifiche. I lab di test non richiedono in genere lo stesso contratto di servizio (contratto di servizio) degli ambienti di produzione.

Gli ambienti di produzione che eseguono macchine virtuali Hyper-V in esecuzione nelle macchine virtuali Hyper-V sono supportati. È tuttavia consigliabile assicurarsi che i servizi e le applicazioni siano supportati anche. Se si usa una macchina virtuale Hyper-V annidata in produzione, è consigliabile valutare completamente se i servizi o le applicazioni forniscono il comportamento previsto.

Per altre informazioni sulla configurazione della virtualizzazione annidata in Azure, vedere il blog di Tech Community How to Setup Nested Virtualization for Azure VM/VHD.

Virtualizzazione di terze parti nella virtualizzazione Hyper-V

Anche se potrebbe essere possibile eseguire la virtualizzazione di terze parti in Hyper-V, Microsoft non testa questo scenario. La virtualizzazione di terze parti nella virtualizzazione Hyper-V non è supportata, assicurarsi che il fornitore di hypervisor supporti questo scenario.

Virtualizzazione Hyper-V in virtualizzazione di terze parti

Anche se potrebbe essere possibile eseguire la virtualizzazione Hyper-V nella virtualizzazione di terze parti, Microsoft non testa questo scenario. La virtualizzazione Hyper-V nella virtualizzazione di terze parti non è supportata, assicurarsi che il fornitore di hypervisor supporti questo scenario.

Azure Stack HCI annidato nelle macchine virtuali Hyper-V

Azure Stack HCI è progettato e testato per l'esecuzione su hardware fisico convalidato. Azure Stack HCI può essere eseguito annidato in una macchina virtuale per la valutazione, ma gli ambienti di produzione in una configurazione annidata non sono supportati.

Per altre informazioni su Azure Stack HCI annidato nelle macchine virtuali Hyper-V, vedere Virtualizzazione annidata in Azure Stack HCI.

Contenitori isolati Hyper-V in esecuzione in Hyper-V

Microsoft offre l'isolamento Hyper-V per i contenitori. Questa modalità di isolamento offre sicurezza avanzata e compatibilità più ampia tra le versioni host e contenitore. Con l'isolamento Hyper-V, più istanze del contenitore vengono eseguite simultaneamente in un host. Ogni contenitore viene eseguito all'interno di una macchina virtuale altamente ottimizzata e ottiene in modo efficace il proprio kernel. Poiché un contenitore isolato Hyper-V offre l'isolamento tramite un livello hypervisor tra se stesso e l'host contenitore, quando l'host del contenitore è una macchina virtuale basata su Hyper-V, è previsto un sovraccarico delle prestazioni. Il sovraccarico delle prestazioni associato si verifica in termini di tempo di avvio del contenitore, archiviazione, rete e operazioni cpu.

Quando un contenitore isolato Hyper-V viene eseguito in una macchina virtuale Hyper-V, viene eseguito annidato. L'uso di una macchina virtuale Hyper-V apre molti scenari utili, ma aumenta anche la latenza, perché esistono due livelli di hypervisor in esecuzione sopra l'host fisico.

L'esecuzione di contenitori isolati Hyper-V annidati in Hyper-V è supportata.

Per altre informazioni sui contenitori Hyper-V annidati, vedere Ottimizzazione delle prestazioni dei contenitori di Windows Server.

Esecuzione di WSL2 in una macchina virtuale Hyper-V in esecuzione annidata in Hyper-V

sottosistema Windows per Linux (WSL) è una funzionalità del sistema operativo Windows che consente di eseguire un file system Linux, insieme agli strumenti della riga di comando Linux e alle app GUI, direttamente in Windows.

L'esecuzione di WSL2 in una macchina virtuale Hyper-V in esecuzione in Hyper-V è supportata.

Per altre informazioni su come abilitare WSL 2 per l'esecuzione in una macchina virtuale, vedere Domande frequenti su sottosistema Windows per Linux.

Passaggio successivo