Per eseguire la migrazione di macchine virtuali con vMotion, la macchina virtuale deve soddisfare determinati requisiti di rete, disco, CPU, USB e altri dispositivi.

Quando si utilizza vSphere vMotion, si applicano le seguenti condizioni e limitazioni della macchina virtuale:

  • Le famiglie di indirizzi IP della rete di gestione di origine e destinazione devono corrispondere. Non è possibile eseguire la migrazione di una macchina virtuale da un host registrato in vCenter Server con un indirizzo IPv4 a un host registrato con un indirizzo IPv6.
  • L'utilizzo di schede di rete da 1 GbE per la rete di vSphere vMotion potrebbe causare un errore di migrazione se si esegue la migrazione di macchine virtuali con profili vGPU di grandi dimensioni. Utilizzare schede di rete da 10 GbE per la rete di vSphere vMotion.
  • Se i contatori delle prestazioni della CPU virtuale sono abilitati, è possibile eseguire la migrazione delle macchine virtuali solo in host che dispongono di contatori delle prestazioni della CPU compatibili.
  • È possibile eseguire la migrazione delle macchine virtuali in cui è abilitata la grafica 3D. Se il rendering 3D è impostato su Automatico, le macchine virtuali utilizzano il rendering grafico presente nell'host di destinazione. Il rendering può essere la CPU host o una scheda grafica GPU. Per eseguire la migrazione di macchine virtuali con il rendering 3D impostato su Hardware, l'host di destinazione deve disporre di una scheda grafica GPU.
  • A partire da vSphere 6.7 Update 1 e versioni successive, vSphere vMotion supporta le macchine virtuali con vGPU.
  • vSphere DRS supporta il posizionamento iniziale di macchine virtuali vGPU in esecuzione in vSphere 6.7 Update 1 o versioni successive senza supporto del bilanciamento del carico.
  • È possibile eseguire la migrazione di macchine virtuali con dispositivi USB collegati a un dispositivo USB fisico nell'host. È necessario abilitare i dispositivi per vSphere vMotion.
  • Non è possibile utilizzare la migrazione tramite vSphere vMotion per eseguire la migrazione di una macchina virtuale che utilizza un dispositivo virtuale supportato da un dispositivo non accessibile nell'host di destinazione. Ad esempio, non è possibile eseguire la migrazione di una macchina virtuale con un'unità CD supportata dall'unità CD fisica nell'host di origine. Disconnettere questi dispositivi prima di effettuare la migrazione della macchina virtuale.
  • Non è possibile utilizzare la migrazione tramite vSphere vMotion per eseguire la migrazione di una macchina virtuale che utilizza un dispositivo virtuale supportato da un dispositivo nel computer client. Disconnettere questi dispositivi prima di effettuare la migrazione della macchina virtuale.

Utilizzo di vSphere vMotion per effettuare la migrazione di macchine virtuali vGPU

È possibile utilizzare vMotion per eseguire una migrazione live di macchine virtuali con tecnologia vGPU NVIDIA senza causare la perdita di dati.

Per abilitare vMotion per le macchine virtuali vGPU, è necessario impostare l'impostazione avanzata vgpu.hotmigrate.enabled su true. Per ulteriori informazioni sulla configurazione delle impostazioni avanzate di vCenter Server, vedere Configurazione delle impostazioni avanzate nella documentazione Configurazione di vCenter Server.

In vSphere 6.7 Update 1 e vSphere 6.7 Update 2, quando si esegue la migrazione di macchine virtuali vGPU tramite vMotion e il tempo di disattivazione supera i 100 secondi, il processo di migrazione potrebbe non riuscire per i profili vGPU con dimensioni del buffer del frame di 24 GB o superiori. Per evitare il timeout di vMotion, eseguire l'aggiornamento a vSphere 6.7 Update 3 o versione successiva.

Durante il tempo di disattivazione, non è possibile accedere alla macchina virtuale, al desktop o all'applicazione. Una volta completata la migrazione, l'accesso alla macchina virtuale riprende e tutte le applicazioni continuano dal loro stato precedente. Per informazioni sulle dimensioni del buffer del frame nei profili vGPU, fare riferimento alla documentazione relativa alla GPU virtuale NVIDIA.

Il tempo di disattivazione della macchina virtuale previsto (il tempo in cui la macchina virtuale non è accessibile per gli utenti durante vMotion) e il tempo di disattivazione massimo stimato sono elencati nelle tabelle seguenti. I tempi di disattivazione previsti sono stati testati in una rete a 10 Gb con GPU NVIDIA Tesla V100 PCIe 32 GB:

Tabella 1. Tempi di disattivazione previsti per vMotion delle macchine virtuali vGPU
Buffer del frame vGPU utilizzato (GB) Tempo di disattivazione della macchina virtuale (sec)
1 2
2 4
4 6
8 12
16 22
32 39
Tabella 2. Tempo di disattivazione massimo previsto (sec)
Memoria vGPU Memoria della macchina virtuale 4 GB Memoria della macchina virtuale 8 GB Memoria della macchina virtuale 16 GB Memoria della macchina virtuale 32 GB
1 GB 5 6 8 12
2 GB 7 9 11 15
4 GB 13 14 16 21
8 GB 24 25 28 32
16 GB 47 48 50 54
32 GB 91 92 95 99
Nota: Quando si considerano il tempo di disattivazione previsto e il tempo di disattivazione massimo stimato, tenere presenti i punti seguenti:
  • Il profilo vGPU configurato rappresenta un limite superiore al buffer del frame della vGPU utilizzato. In molti casi d'uso, la quantità di memoria del buffer del frame della vGPU utilizzata dalla macchina virtuale in un determinato momento è inferiore alla memoria della vGPU assegnata nel profilo.
  • Il tempo di disattivazione previsto e il tempo di disattivazione massimo stimato sono validi solo quando si esegue la migrazione di una singola macchina virtuale. Se si esegue la migrazione di più macchine virtuali contemporaneamente, ad esempio per un processo di correzione manuale di vSphere, i tempi di disattivazione hanno effetti negativi.
  • Le stime indicate presuppongono che la CPU, la memoria, la PCIe e la capacità di rete siano sufficienti per ottenere una velocità effettiva di migrazione di 10 Gbps.

DRS supporta il posizionamento iniziale di macchine virtuali vGPU che eseguono vSphere 6.7 Update 1 e versioni successive senza il supporto del bilanciamento del carico.

La funzionalità VMware vSphere vMotion è supportata solo con e tra modelli di dispositivi GPU NVIDIA compatibili e versioni dei driver host GRID NVIDIA definiti e supportati da NVIDIA. Per informazioni sulla compatibilità, fare riferimento alla Guida utente alla GPU virtuale NVIDIA.

Per verificare la compatibilità tra i driver host vGPU NVIDIA, vSphere e Horizon, fare riferimento alla Matrice di compatibilità VMware.

Come impostare un limite di tempo di disattivazione per le macchine virtuali vGPU

Informazioni su come impostare un limite di tempo di disattivazione per macchina virtuale quando si esegue la migrazione di macchine virtuali con tecnologia NVIDIA vGPU con vSphere vMotion. L'impostazione di un limite di tempo di disattivazione potrebbe impedire a vCenter Server di accendere la macchina virtuale o di eseguirne la migrazione in un host e in una rete il cui tempo massimo di disattivazione stimato supera tale limite.

Il tempo di disattivazione della macchina virtuale è il tempo in cui la macchina virtuale non è accessibile agli utenti durante vMotion. A partire da vSphere 8.0 Update 2, è possibile impostare un limite di tempo di disattivazione di vMotion per le macchine virtuali vGPU.

Il limite impostato deve essere superiore al tempo di disattivazione massimo stimato per la configurazione corrente del dispositivo. Nel caso di più dispositivi PCI, il limite di tempo di disattivazione impostato deve essere superiore alla somma dei contributi di tutti i dispositivi PCI. L'impostazione di un limite di tempo di disattivazione inferiore al tempo di disattivazione massimo stimato potrebbe impedire l'accensione della macchina virtuale.

Nota: Le stime del tempo di disattivazione massimo sono disponibili solo per i tipi di vGPU serie C e serie Q.

Il tempo di disattivazione massimo viene calcolato in base alla larghezza di banda dell'host su cui è attualmente in esecuzione la macchina virtuale. I calcoli possono cambiare al momento della migrazione se la larghezza di banda dell'host di destinazione è inferiore. Ad esempio, se una macchina virtuale è in esecuzione in un host con una scheda NIC di vMotion da 25 Gbps, ma l'host di destinazione ha una scheda NIC di vMotion da 10 Gbps. Al momento della migrazione, il calcolo del tempo di disattivazione massimo si basa sulla NIC di vMotion di 10 Gbps.

Prerequisiti

  • Verificare che la versione dell'istanza di vCenter Server sia 8.0 Update 2.
  • Verificare che la versione degli host ESXi di origine e destinazione sia 8.0 Update 2.
  • Verificare che le macchine virtuali di vSphere Cluster Services (vCLS) siano integre. Per informazioni su vCLS, vedere vSphere Cluster Services.
  • Verificare che la rete vMotion sia configurata tramite il workflow di Avvio rapido. Per informazioni sulla configurazione delle opzioni di rete per il traffico di vMotion, vedere Come configurare il cluster vSphere utilizzando il workflow Avvio rapido.
  • Verificare che vMotion sia abilitato per le macchine virtuali vGPU. Le impostazioni avanzate vgpu.hotmigrate.enabled devono essere impostate su true. Per ulteriori informazioni sulla configurazione delle impostazioni avanzate di vCenter Server, vedere Configurazione delle impostazioni avanzate nella documentazione Configurazione di vCenter Server.

Procedura

  1. In vSphere Client, passare a una macchina virtuale vGPU.
  2. Fare clic con il pulsante destro del mouse sulla macchina virtuale e selezionare Modifica impostazioni.
    Viene visualizzata la finestra di dialogo Modifica impostazioni.
  3. Fare clic sulla scheda Opzioni macchina virtuale ed espandere Avanzate.
    La finestra di dialogo Modifica impostazioni con le impostazioni avanzate della macchina virtuale espanse.
  4. Nel campo di input Limite di tempo di disattivazione vMotion immettere il limite di tempo di disattivazione in secondi.
    Le impostazioni avanzate espanse con il campo di input Tempo di disattivazione vMotion evidenziato.
    Se si imposta un limite di tempo di disattivazione inferiore al tempo di disattivazione massimo stimato per la configurazione del dispositivo PCI, viene visualizzato un messaggio di avviso. Nella scheda Hardware virtuale viene inoltre visualizzato un messaggio di avviso.
  5. Fare clic su OK.

Posizione dei file di swap della macchina virtuale e compatibilità vSphere vMotion

La posizione del file di swap della macchina virtuale influisce sulla compatibilità di vMotion in modi diversi in funzione della versione di ESXi in esecuzione nell'host della macchina virtuale.

È possibile configurare host ESXi 6.7 o versioni successive per archiviare i file di swap delle macchine virtuali con il file di configurazione delle macchine virtuali oppure in un datastore di file di swap locale specificato per quell'host.

La posizione del file di swap della macchina virtuale influisce sulla compatibilità di vMotion nel seguente modo:

  • Per le migrazioni tra host che eseguono ESXi 6.7 e versioni successive, le vMotion e le migrazioni di macchine virtuali sospese e spente sono consentite.
  • Durante una migrazione tramite vMotion, se la posizione del file di swap nell'host di destinazione è diversa dalla posizione del file di swap nell'host di origine, il file di swap viene copiato nella nuova posizione. Questa attività può rallentare le migrazioni tramite vMotion. Se non può accedere alla posizione del file di swap specificato, l'host di destinazione archivia il file di swap con il file di configurazione delle macchine virtuali.

Per informazioni sulla configurazione dei criteri dei file di swap, consultare la documentazione relativa alla Gestione delle risorse di vSphere.

Notifiche di vSphere vMotion per le applicazioni sensibili alla latenza

A partire da vSphere 8.0, è possibile notificare a un'applicazione in esecuzione nel sistema operativo guest di una macchina virtuale l'avvio e il termine di un evento di vSphere vMotion. Questo meccanismo di notifica consente alle applicazioni sensibili alla latenza di preparare o ritardare un'operazione di vSphere vMotion.

Nel caso delle applicazioni sensibili alla latenza, come le applicazioni VoIP e le applicazioni di trading con alta frequenza, vSphere vMotion e vSphere DRS sono in genere disattivati. vSphere 8.0 include un meccanismo di notifica che consente di notificare a un'applicazione che un'operazione di vSphere vMotion sta per iniziare, in modo che l'applicazione esegua i passaggi necessari per prepararsi. Dopo aver generato l'evento di avvio, vSphere vMotion viene sospeso e attende che l'applicazione confermi la notifica di avvio prima di procedere.

Nota:

L'abilitazione del meccanismo di notifica per le operazioni di vSphere vMotion potrebbe causare un aumento del tempo complessivo necessario per le operazioni di vSphere vMotion.

Come configurare una macchina virtuale per le notifiche di vSphere vMotion

Per impostazione predefinita, il meccanismo di notifica è disattivato. Per abilitare il meccanismo di notifica in una macchina virtuale, la versione dell'hardware della macchina virtuale deve essere 20 o successiva ed è necessario impostare le seguenti opzioni di configurazione avanzate della macchina virtuale.

È possibile utilizzare vSphere Web Services API per abilitare l'invio di notifiche alle applicazioni in esecuzione nella macchina virtuale e per specificare il periodo di tempo massimo, in secondi, che un'applicazione ha a disposizione per prepararsi per l'operazione di vMotion.

  • Per abilitare l'invio di notifiche alle applicazioni in esecuzione nella macchina virtuale, impostare la proprietà vmx.vmOpNotificationToApp.enabled della macchina virtuale su true.

  • Per specificare il periodo di tempo massimo in secondi che l'applicazione ha a disposizione per prepararsi per l'operazione di vMotion, utilizzare la proprietà vmx.vmOpNotificationToApp.timeout della macchina virtuale. Quando un'operazione di vSphere vMotion genera un evento di avvio, vMotion viene sospeso e attende la conferma dell'applicazione per procedere. vSphere vMotion attende il timeout della notifica specificato.

    Questa proprietà è facoltativa e non è specificata per impostazione predefinita. È possibile utilizzarla per configurare un timeout più restrittivo per una macchina virtuale specifica. Se questa proprietà non viene impostata, viene utilizzata la configurazione della notifica dell'host.

Per ulteriori informazioni, vedere le proprietà dell'oggetto dati della macchina virtuale nella documentazione vSphere Web Services API. Per informazioni su come utilizzare vSphere Web Services SDK, vedere la Guida alla programmazione di vSphere Web Services SDK.

Come configurare un host per le notifiche di vSphere vMotion

È possibile utilizzare l'impostazione di configurazione avanzata dell'host VmOpNotificationToApp.Timeout per specificare un timeout di notifica da applicare a tutte le macchine virtuali in un host. Utilizzare le API di ConfigManager per impostare un valore per questa proprietà di configurazione. Il timeout della notifica predefinito è 0. In questo caso, le notifiche per le applicazioni vengono generate ma le operazioni vSphere vMotion non vengono ritardate.

Se si imposta un timeout di notifica in un host e in una macchina virtuale in esecuzione nell'host contemporaneamente, viene utilizzato il valore più piccolo.

Per informazioni su come utilizzare vSphere Web Services SDK, vedere la Guida alla programmazione di vSphere Web Services SDK.

Come registrare un'applicazione per le notifiche di vSphere vMotion

Per consentire a un'applicazione di ricevere notifiche per gli eventi di vSphere vMotion, è necessario che nella macchina virtuale che ospita l'applicazione sia installato VMware Tools. Per ulteriori informazioni sull'installazione e la configurazione di VMware Tools, vedere la documentazione di VMware Tools.

Con vSphere 8.0, è possibile registrare una sola applicazione per macchina virtuale. Un'applicazione che desidera ricevere notifiche di vSphere vMotion, può utilizzare le seguenti chiamate RPC guest e verificare periodicamente la presenza di nuovi eventi di vMotion, ad esempio ogni 1 o 2 secondi, utilizzando la chiamata RPC guest vm-operation-notification.check-for-event.

Per informazioni su come utilizzare le chiamate RPC guest, vedere la Guida alla programmazione di VMware Guest SDK.

Comando

Descrizione

vm-operation-notification.register

Registra un'applicazione in modo che inizi a ricevere notifiche relative agli eventi di vSphere vMotion.

vm-operation-notification.unregister

Annulla la registrazione di un'applicazione in modo che smetta di ricevere notifiche relative agli eventi di vSphere vMotion.

vm-operation-notification.list

Recupera informazioni sull'applicazione registrata in esecuzione in una macchina virtuale sull'host.

vm-operation-notification.check-for-event

Recupera informazioni sull'evento di vSphere vMotion registrato al momento della chiamata.

vm-operation-notification.ack-event

Riconosce un evento di avvio di vSphere vMotion.