Usa la virtualizzazione annidata per eseguire gli hypervisor nelle istanze Amazon EC2 - Amazon Elastic Compute Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Usa la virtualizzazione annidata per eseguire gli hypervisor nelle istanze Amazon EC2

La virtualizzazione annidata consente di eseguire hypervisor come Hyper-V e KVM all'interno di istanze virtuali di Amazon EC2. Le istanze EC2 virtuali non sono istanze bare metal. Questa funzionalità estende la flessibilità di virtualizzazione aggiungendo il supporto per la virtualizzazione a livello di processore alle istanze EC2 virtuali, consentendo a un hypervisor in esecuzione nell'istanza di creare e gestire macchine virtuali.

La virtualizzazione annidata può essere utile quando utilizzi strumenti di sviluppo come Docker Desktop, Windows Subsystem for Linux 2 (WSL2), emulatori Android Studio o QEMU nel tuo flusso di lavoro di sviluppo, in quanto ti consente di scegliere tra un'ampia gamma di tipi di istanze Amazon EC2 virtuali standard che soddisfano i tuoi requisiti specifici di prestazioni e prezzo.

L'utilizzo della virtualizzazione annidata non comporta costi aggiuntivi.

Come funziona

Le istanze EC2 virtuali vengono eseguite su un host fisico dotato dell'hypervisor Nitro. Per supportare la virtualizzazione annidata, il sistema Nitro trasmette le estensioni del processore, come Intel VT-x, alle istanze per facilitare l'esecuzione di macchine virtuali nidificate. L'architettura di virtualizzazione annidata è composta da tre livelli: l' AWS infrastruttura fisica e l'hypervisor Nitro (L0), l'istanza EC2 che esegue un hypervisor (L1) e una o più macchine virtuali create all'interno di quell'istanza (L2).

Considerazioni

Prima di iniziare a utilizzare la virtualizzazione annidata, considera quanto segue:

  • Tipi di istanze supportati: la virtualizzazione annidata è attualmente supportata sulle istanze C8i, M8i e R8i.

  • Hypervisor supportati: attualmente, KVM e Hyper-V sono gli hypervisor L1 supportati.

  • Istanze Windows: quando la virtualizzazione annidata è abilitata su un'istanza Windows:

    • Credential Guard: la modalità Virtual Secure (VSM) viene disattivata automaticamente.

    • Ibernazione: l'ibernazione e la ripresa delle istanze non sono supportate.

    • Limite di CPU: non supportato su istanze Windows con più di 192, ad esempio. CPUs m8i.96xl

  • Responsabilità in materia di sicurezza: quando utilizza la virtualizzazione annidata su istanze EC2, AWS è responsabile della «sicurezza del cloud», della protezione dell'infrastruttura sottostante e del mantenimento dei forti confini di isolamento tra le istanze EC2 forniti dal sistema Nitro. AWS I clienti sono responsabili della «sicurezza nel cloud», che include la protezione del sistema operativo, dell'hypervisor, delle macchine virtuali annidate, dei sistemi operativi guest, delle applicazioni e dei dati all'interno delle istanze EC2.

  • Prestazioni: AWS consiglia ai clienti che desiderano eseguire carichi di lavoro che richiedono l'accesso alle estensioni di virtualizzazione dell'hardware e sono sensibili alle prestazioni o hanno requisiti di latenza rigorosi, di valutare le istanze bare metal.

Avvia una nuova istanza con la virtualizzazione annidata abilitata

Quando avvii una nuova istanza, puoi attivare la virtualizzazione annidata per eseguire hypervisor e macchine virtuali su di essa.

Prerequisiti

È necessario disporre delle autorizzazioni IAM necessarie per avviare un'istanza Amazon EC2.

Console
Per abilitare la virtualizzazione annidata durante il lancio dell'istanza
  1. Segui la procedura Avvia un' EC2 istanza utilizzando la procedura guidata di avvio dell'istanza nella console e configura l'istanza in base alle esigenze.

  2. Assicurati che sia selezionato un tipo di istanza supportato.

  3. Espandi i dettagli avanzati e, per la virtualizzazione annidata, scegli Abilita.

  4. Nel pannello Summary (Riepilogo), verifica la configurazione dell'istanza, quindi scegli Launch instance (Avvia istanza).

AWS CLI
Per avviare un'istanza con la virtualizzazione annidata abilitata

Utilizzare il comando run-instances.

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type r8i.4xlarge \ --cpu-options "NestedVirtualization=enabled" \ --key-name my-key-pair \ --placement "Tenancy=host"
PowerShell
Per avviare un'istanza con la virtualizzazione annidata abilitata

Utilizza il comando New-EC2Instance.

New-EC2Instance `     -ImageId ami-0abcdef1234567890 `     -InstanceType r8i.4xlarge `     -CpuOption @{NestedVirtualization='enabled'} `     -KeyName my-key-pair `     -Placement_Tenancy host

Configura un'istanza esistente per utilizzare la virtualizzazione annidata

Puoi attivare la virtualizzazione annidata su un'istanza Amazon EC2 esistente.

Prerequisiti
  • L'istanza deve trovarsi in uno stato. stopped

  • Il tipo di istanza deve supportare la virtualizzazione annidata.

Console
Per abilitare la virtualizzazione annidata su un'istanza esistente
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, scegliere Instances (Istanze).

  3. Seleziona l'istanza che desideri modificare dalla tabella delle istanze.

  4. Scegli Azioni, Impostazioni dell'istanza, Modifica opzioni CPU.

  5. Nella pagina Modifica opzioni CPU, per la virtualizzazione annidata, scegli una delle seguenti opzioni:

    • Abilita: attiva la virtualizzazione annidata per l'istanza

    • Disabilita: disattiva la virtualizzazione annidata per l'istanza

  6. Controlla le modifiche, quindi scegli Cambia per applicare le nuove opzioni della CPU.

AWS CLI
Per abilitare la virtualizzazione annidata su un'istanza esistente

Per prima cosa arrestate l'istanza, quindi utilizzate il modify-instance-cpu-optionscomando.

aws ec2 modify-instance-cpu-options \ --instance-id i-1234567890abcdef0 \ --core-count 4 \ --threads-per-core 2 \ --nested-virtualization enabled
PowerShell
Per abilitare la virtualizzazione annidata su un'istanza esistente

Per prima cosa arrestate l'istanza, quindi utilizzate il Edit-EC2InstanceCpuOptioncomando.

Edit-EC2InstanceCpuOption `     -InstanceId i-1234567890abcdef0 `     -CoreCount 4 `     -ThreadsPerCore 2 `     -NestedVirtualization enabled