Processo di migrazione live durante gli eventi di manutenzione

Durante un evento di manutenzione pianificata dell'hardware sottostante di un'istanza di una macchina virtuale (VM), Compute Engine potrebbe spostare la VM su un altro host. Per mantenere una VM in esecuzione durante un evento host, Compute Engine esegue una migrazione live della VM a un altro host nella stessa zona. Per ulteriori informazioni sugli eventi host, vedi Informazioni sugli eventi host.

La migrazione live consente a Google Cloud di eseguire la manutenzione senza interrompere un carico di lavoro, riavviare una VM o modificare le proprietà della VM, come indirizzi IP, metadati, dati di archiviazione a blocchi, stato dell'applicazione e impostazioni di rete.

Oltre a mantenere le VM in esecuzione durante gli eventi host pianificati, la migrazione live mantiene le VM in esecuzione durante le seguenti situazioni:

  • Manutenzione dell'infrastruttura. La manutenzione dell'infrastruttura include l'hardware host, le reti e le reti elettriche nei data center, nonché i sistemi operativi e i bios host.

  • Aggiornamenti relativi alla sicurezza e modifiche alla configurazione di sistema. Questi includono eventi come l'installazione di patch di sicurezza e la modifica delle dimensioni della partizione root dell'host per l'archiviazione dell'immagine e dei pacchetti del sistema operativo host.

  • Errori hardware. ad esempio errori di memoria, CPU, schede di interfaccia di rete e dischi. Se l'hardware si arresta completamente o altrimenti impedisce la migrazione live, la VM si arresta, si riavvia automaticamente e Compute Engine registra un hostError.

Compute Engine esegue solo una migrazione live delle VM per le quali è impostato il criterio di manutenzione dell'host. Per informazioni su come modificare il criterio di manutenzione dell'host, vedi Impostare il criterio di manutenzione dell'host VM.

Processo di migrazione live e SSD locali

Compute Engine può eseguire la migrazione live delle VM con SSD locali collegati, spostando le VM insieme all'SSD locale su una nuova macchina prima di qualsiasi manutenzione pianificata.

Limitazioni

La migrazione live non è supportata per i seguenti tipi di VM:

  • Alcune istanze Confidential VM. La migrazione live è supportata solo su tipi di macchine N2D con piattaforme CPU AMD EPYC Milan che eseguono AMD SEV. Tutti gli altri tipi di Confidential VM devono essere impostati per essere arrestati e, facoltativamente, riavviati. Per ulteriori dettagli, consulta Migrazione live.
  • VM con GPU collegate. Le istanze VM con GPU collegate devono essere impostate in modo da arrestarsi e, facoltativamente, riavviarsi. Compute Engine offre un preavviso di 60 minuti prima che un'istanza VM collegata venga arrestata. Per saperne di più su questi avvisi relativi agli eventi di manutenzione, vedi Ricevere notifiche sulla migrazione live.

    Per saperne di più sulla gestione della manutenzione dell'host con le GPU, consulta Gestione della manutenzione dell'host nella documentazione sulle GPU.

  • Cloud TPU. Le Cloud TPU non supportano la migrazione live.

  • VM prerilasciabili. Non puoi configurare una VM prerilasciabile per la migrazione live. Il comportamento di manutenzione delle istanze prerilasciabili è sempre impostato su TERMINATE per impostazione predefinita e non puoi modificare questa opzione. Non puoi impostare l'opzione di riavvio automatico per le istanze prerilasciabili, ma puoi avviare manualmente le VM prerilasciabili dalla pagina Dettagli istanze VM dopo che sono state prerilasciate.

    Se devi modificare l'istanza in modo che non sia più prerilasciabile, scollega il disco di avvio dall'istanza prerilasciabile e collegalo a una nuova istanza che non è configurata per essere prerilasciabile. Puoi anche creare uno snapshot del disco di avvio e utilizzarlo per creare una nuova istanza senza prerilasciabilità.

  • VM spot. Le VM spot non possono eseguire la migrazione live per diventare VM standard mentre sono in esecuzione o essere impostate per riavviare automaticamente in presenza di un evento host.

  • VM ottimizzate per l'archiviazione. Le VM Z3 non supportano la migrazione live. Il comportamento di manutenzione per le VM Z3 è impostato su TERMINATE.

Come funziona il processo di migrazione live?

Quando è pianificata la migrazione live di una VM, Google Cloud fornisce una notifica. Durante la migrazione live, Google Cloud garantisce un tempo di interruzione minimo, che in genere è molto inferiore a 1 secondo. Se una VM non è impostata per la migrazione live, Compute Engine termina la VM durante la manutenzione dell'host. VM impostate per essere terminate durante un evento host di arresto e (facoltativamente) riavvio.

Quando Google Cloud esegue la migrazione di una VM in esecuzione da un host all'altro, sposta lo stato completo della VM dall'origine alla destinazione in modo trasparente per il sistema operativo guest e per qualsiasi comunicazione con esso. Questa operazione senza problemi prevede molti componenti, ma i passaggi generali sono mostrati nell'illustrazione seguente:

Migrazione di una VM e di ognuna delle sue risorse in un nuovo sistema host senza richiedere il riavvio del sistema operativo guest.
Componenti della migrazione live

Il processo inizia con una notifica che indica che le VM devono essere spostate dalla macchina host attuale. La notifica potrebbe iniziare con una modifica del file che indica che è disponibile una nuova versione del BIOS, la manutenzione di una pianificazione di operazioni hardware o un segnale automatico di un imminente guasto dell'hardware.

Il software di gestione dei cluster di Google Cloud monitora costantemente questi eventi e li pianifica in base a criteri che controllano i data center, come le percentuali di utilizzo della capacità e il numero di VM di cui un singolo cliente può eseguire la migrazione contemporaneamente.

Dopo aver selezionato una VM per la migrazione, Google Cloud invia una notifica all'ospite che la migrazione è in corso. Dopo un periodo di attesa, viene selezionato un host di destinazione e all'host viene chiesto di configurare una nuova VM "target" vuota per ricevere la VM "di origine" migrata. L'autenticazione viene utilizzata per stabilire una connessione tra l'origine e la destinazione.

La migrazione della VM prevede tre fasi:

  1. brownout di fonte. La VM è ancora in esecuzione sull'origine, mentre la maggior parte degli stati viene inviata dall'origine alla destinazione. Ad esempio, Google Cloud copia tutta la memoria guest nella destinazione, monitorando le pagine che sono state modificate nell'origine. Il tempo trascorso nel brownout dell'origine dipende dalle dimensioni della memoria dell'ospite e dalla frequenza con cui le pagine vengono modificate.

  2. Oscuramento. Un breve momento in cui la VM non è in esecuzione da nessuna parte, la VM viene messa in pausa e viene inviato tutto lo stato rimanente necessario per iniziare a eseguire la VM sulla destinazione. La VM entra nella fase di blackout quando lo stato dell'invio durante il burnout dell'origine raggiunge un punto di resi decrescenti. Viene utilizzato un algoritmo che bilancia i numeri di byte di memoria inviati rispetto alla frequenza con cui la VM ospite apporta modifiche.

    Durante gli eventi di blackout, l'orologio di sistema sembra avanzare di massimo 5 secondi. Se un evento di blackout supera i 5 secondi, Google Cloud arresta e risincronizza il orologio utilizzando un daemon incluso nei pacchetti guest della VM.

  3. Murout target. La VM viene eseguita sulla VM di destinazione. La VM di origine è presente e potrebbe fornire funzionalità di supporto per la VM di destinazione. Ad esempio, finché l'infrastruttura di rete non ha raggiunto la nuova posizione della VM di destinazione, la VM di origine fornisce servizi di forwarding per i pacchetti da e verso la VM di destinazione.

Infine, la migrazione viene completata e il sistema elimina la VM di origine. Puoi vedere che la migrazione è avvenuta nei log delle VM.

Procedura di migrazione live manuale

Durante l'esecuzione del carico di lavoro, potresti voler spostare le VM in un altro nodo o gruppo di nodi. La modalità single-tenancy consente di spostare le VM in un nodo single-tenant specifico o in un gruppo di nodi. Se sposti una VM in un gruppo di nodi, Compute Engine determina su quale nodo posizionarla. Per informazioni sulla single-tenancy, consulta Panoramica della single-tenancy.

Per spostare le VM single-tenant in un nodo o un gruppo di nodi diverso, puoi avviare manualmente una migrazione live. Puoi anche avviare manualmente una migrazione live per una VM multi-tenant. Per ulteriori informazioni, vedi Eseguire la migrazione manuale delle VM.

Passaggi successivi