Condividi tramite


Abilitare la virtualizzazione annidata in Azure Lab Services

Importante

Azure Lab Services verrà ritirato il 28 giugno 2027. Per altre informazioni, vedere la guida al ritiro.

La virtualizzazione annidata supporta un lab in Azure Lab Services che contiene un ambiente di più macchine virtuali. È possibile preparare un modello di lab per l'ambiente di più macchine virtuali. Gli utenti non devono abilitare la virtualizzazione annidata nella macchina virtuale del lab né installare le macchine virtuali nidificate. Quando si pubblica il lab, ogni utente del lab ha una macchina virtuale lab che contiene già le macchine virtuali annidate.

Prerequisiti

  • Un account Azure con una sottoscrizione attiva. Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Per concetti, considerazioni e consigli sulla virtualizzazione annidata, vedere Virtualizzazione annidata in Azure Lab Services.

Nota

Le applicazioni di virtualizzazione diverse da Hyper-V non sono supportate per la virtualizzazione annidata. Sono inclusi tutti i software che richiedono estensioni di virtualizzazione hardware.

Importante

Per la creazione del lab, selezionare le dimensioni Medium (virtualizzazione annidata) o Large (virtualizzazione annidata) per la macchina virtuale. In caso contrario, la virtualizzazione annidata non funziona.

Abilitare la virtualizzazione annidata

Per abilitare la virtualizzazione annidata nella macchina virtuale modello, connettersi prima alla macchina virtuale tramite un client desktop remoto (RDP). È quindi possibile applicare le modifiche di configurazione eseguendo uno script di PowerShell o usando gli strumenti di Windows.

Importante

È consigliabile usare la virtualizzazione annidata con Windows 11. È possibile sfruttare i vantaggi dell'opzione predefinita creata quando si installa Hyper-V in un sistema operativo client Windows. È consigliabile usare la virtualizzazione annidata nei sistemi operativi Windows Server quando è necessario un controllo aggiuntivo sulle impostazioni di rete.

Importante

Azure Lab Services verrà ritirato il 28 giugno 2027. Per altre informazioni, vedere la guida al ritiro.

È possibile usare uno script di PowerShell per configurare la virtualizzazione annidata in una macchina virtuale modello in Azure Lab Services. I passaggi seguenti illustrano come usare gli script Hyper-V di Lab Services. Lo script è pensato per Windows 11.

  1. Seguire questa procedura per connettersi e aggiornare il computer modello.

  2. Avviare PowerShell come amministratore.

  3. Potrebbe essere necessario modificare i criteri di esecuzione per eseguire correttamente lo script. Esegui questo comando:

    Set-ExecutionPolicy bypass -force
    
  4. Scaricare ed eseguire lo script per abilitare la funzionalità e gli strumenti di Hyper-V.

    Invoke-WebRequest 'https://aka.ms/azlabs/scripts/hyperV-powershell' -Outfile SetupForNestedVirtualization.ps1
    .\SetupForNestedVirtualization.ps1
    

    Nota

    Lo script potrebbe richiedere il riavvio della macchina virtuale. In tal caso, arrestare e avviare la macchina virtuale modello dal sito Web di Azure Lab Services ed eseguire nuovamente lo script finché non viene visualizzato Script completato nell'output.

  5. Non dimenticare di reimpostare i criteri di esecuzione.

    Set-ExecutionPolicy default -force
    

La macchina virtuale modello è ora configurata per l'uso con la virtualizzazione annidata. È possibile creare macchine virtuali al suo interno. Usare l'opzione specificata dallo script durante la creazione di nuove macchine virtuali Hyper-V.

Connettersi a una macchina virtuale nidificata in un'altra macchina virtuale lab

È necessaria una configurazione aggiuntiva per connettersi da una macchina virtuale annidata in una macchina virtuale lab a una macchina virtuale annidata ospitata in un'altra macchina virtuale lab. Aggiungere un mapping statico all'istanza NAT con il cmdlet PowerShell Add-NetNatStaticMapping.

Nota

Non è possibile usare il comando ping per testare la connettività da o verso una macchina virtuale annidata.

Nota

Il mapping statico funziona solo quando si usano indirizzi IP privati. La macchina virtuale da cui si connette l'utente del lab deve essere una macchina virtuale lab oppure deve trovarsi nella stessa rete se si usa la rete avanzata.

Scenari di esempio

Si consideri la configurazione del lab di esempio seguente:

  • Macchina virtuale del lab 1 (Windows Server 2022, IP 10.0.0.8)

    • Macchina virtuale nidificata 1-1 (Ubuntu 20.04, IP 192.168.0.102, SSH consentito)
    • Macchina virtuale nidificata 1-2 (Windows 11, IP 192.168.0.103, desktop remoto abilitato e consentito)
  • Macchina virtuale del lab 2 (Windows Server 2022, IP 10.0.0.9)

    • Macchina virtuale nidificata 2-1 (Ubuntu 20.04, IP 192.168.0.102, SSH consentito)
    • Macchina virtuale nidificata 2-2 (Windows 11, IP 192.168.0.103, desktop remoto abilitato e consentito)

Abilitare la connessione con SSH dalla macchina virtuale lab 2 alla macchina virtuale lab annidata 1-1:

  1. Nella macchina virtuale lab 1 aggiungere un mapping statico:

    Add-NetNatStaticMapping -NatName "LabServicesNat" -Protocol TCP -ExternalIPAddress 0.0.0.0 -InternalIPAddress 192.168.0.102 -InternalPort 22 -ExternalPort 23
    
  2. Nella macchina virtuale lab 2 connettersi con SSH:

    ssh user1@10.0.0.8 -p 23
    

Abilitare la connessione con RDP dalla macchina virtuale lab 2 o dalle relative macchine virtuali annidate alla macchina virtuale del lab annidata 1-2:

  1. Nella macchina virtuale lab 1 aggiungere un mapping statico.

    Add-NetNatStaticMapping -NatName "LabServicesNat" -Protocol TCP -ExternalIPAddress 0.0.0.0 -InternalIPAddress 192.168.0.103 -InternalPort 3389 -ExternalPort 3390
    
  2. Nella macchina virtuale lab 2 o nelle macchine virtuali annidate connettersi usando RDP a 10.0.0.8:3390.

    Importante

    Includere ~\ davanti al nome utente. Ad esempio, ~\Administrator o ~\user1.

Risoluzione dei problemi

Questi suggerimenti potrebbero risolvere alcuni problemi comuni.

La macchina virtuale Linux mostra solo una schermata nera

Per verificare la configurazione della macchina virtuale annidata, seguire questa procedura:

Hyper-V non si avvia con l'errore The virtual machine is using processor-specific xsave features not supported

  • Questo errore può verificarsi quando un utente del lab lascia la macchina virtuale Hyper-V nello stato salvato. È possibile selezionare la macchina virtuale nella console di gestione di Hyper-V e selezionare Elimina stato salvato.

    Attenzione

    L'eliminazione dello stato salvato indica che qualsiasi lavoro non salvato viene perso, ma qualsiasi operazione salvata su disco rimane intatta.

  • Questo errore può verificarsi quando la macchina virtuale Hyper-V è disattivata e il file VHDX è danneggiato. Se l'utente del lab crea un backup del file VDHX o salva uno snapshot, può ripristinare la macchina virtuale da quel punto.

È consigliabile impostare l'azione di arresto automatico delle macchine virtuali Hyper-V da arrestare.

Hyper-V è troppo lento

Aumentare il numero di vCPU e memoria assegnati alla macchina virtuale Hyper-V nella console di gestione di Hyper-V. Il numero totale di vCPU non può superare il numero di core della macchina virtuale host (macchina virtuale lab). Se si usa la memoria variabile, l'opzione predefinita aumenta la quantità minima di memoria assegnata alla macchina virtuale. La quantità massima di memoria assegnata, se si usa la memoria variabile, può superare quella della macchina virtuale host. Questo approccio consente una maggiore flessibilità quando è necessario completare operazioni a elevato utilizzo su una sola delle macchine virtuali Hyper-V.

Se si usa la dimensione Medium (virtualizzazione annidata) per la macchina virtuale per il lab, è consigliabile usare le dimensioni Large (virtualizzazione annidata) per avere più risorse di calcolo per ogni macchina virtuale lab.

La connettività Internet non funziona per le macchine virtuali nidificate

  • Verificare di aver seguito i passaggi precedenti per abilitare la virtualizzazione annidata. Prendere in considerazione l'uso dell'opzione script di PowerShell.

  • Controllare se nella macchina virtuale host (macchina virtuale lab) è installato il ruolo DHCP se si usa Windows Server.

    L'esecuzione di una macchina virtuale lab come server DHCP non è supportata. Vedere È possibile distribuire un server DHCP in una rete virtuale?. La modifica delle impostazioni della macchina virtuale del lab può causare problemi con altre macchine virtuali del lab.

  • Controllare le impostazioni della scheda di rete per la macchina virtuale Hyper-V.

    • Impostare l'indirizzo IP del server DNS e del server DHCP su 168.63.129.16.

    • Se l'indirizzo IPv4 della macchina virtuale guest è impostato manualmente, verificare che sia compreso nell'intervallo della rete NAT connessa al commutatore Hyper-V.

    • Provare ad abilitare Controllo DHCP e Controllo router di Hyper-V.

      Get-VMNetworkAdapter * | Set-VMNetworkAdapter -RouterGuard On -DhcpGuard On
      

Nota

Non è possibile usare il comando ping da una macchina virtuale Hyper-V alla macchina virtuale host. Per testare la connettività Internet, avviare un Web browser e verificare che la pagina Web venga caricata correttamente.

Non è possibile avviare macchine virtuali Hyper-V

È possibile scegliere di creare un utente non amministratore quando si crea un lab. Per poter avviare o arrestare macchine virtuali Hyper-V, è necessario aggiungere tale utente al gruppo Amministratori di Hyper-V. Per altre informazioni sugli utenti Hyper-V e non amministratori, vedere Utente non amministratore.

Dopo aver configurato la virtualizzazione annidata nella macchina virtuale modello, è possibile creare macchine virtuali annidate con Hyper-V. Vedere Microsoft Evaluation Center per consultare i sistemi operativi e il software disponibili.