Processo di migrazione live durante gli eventi di manutenzione

Durante un evento di manutenzione pianificato sull'hardware sottostante dell'istanza di una macchina virtuale (VM), Compute Engine potrebbe spostare la VM in 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 scoprire di più sugli eventi dell'host, consulta Informazioni sugli eventi dell'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 delle applicazioni 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 hardware host, reti e reti elettriche nei data center, nonché sistemi operativi e BIOS host.

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

  • Errori hardware. Sono inclusi errori di memoria, CPU, schede di interfaccia di rete e dischi. Se l'hardware si arresta del tutto o impedisce la migrazione live, la VM si arresta, si riavvia automaticamente e Compute Engine registra un valore hostError.

Compute Engine esegue solo una migrazione live delle VM per cui è impostato il criterio di manutenzione dell'host di cui eseguire la migrazione. Per informazioni su come modificare il criterio di manutenzione dell'host, consulta Impostare il criterio di manutenzione dell'host delle VM.

Processo di migrazione live e SSD locali

Compute Engine può eseguire la migrazione live delle VM con SSD locali collegate, spostandole 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 sui 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 l'arresto e il riavvio facoltativo. Per ulteriori dettagli, vedi Migrazione live.

  • VM con GPU collegate. Le istanze VM con GPU collegate devono essere impostate per l'arresto e, facoltativamente, per il riavvio. Compute Engine offre un preavviso di 60 minuti prima che un'istanza VM con una GPU collegata venga arrestata. Per scoprire di più su queste notifiche degli eventi di manutenzione, consulta Ricevere notifiche sulla migrazione live.

    Per saperne di più sulla gestione della manutenzione degli host con le GPU, consulta Gestire la manutenzione dell'host nella documentazione delle 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 per le 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 di nuovo le VM prerilasciabili dalla pagina Dettagli istanze VM dopo che sono state prerilasciate.

    Se devi modificare l'istanza affinché non sia più prerilasciabile, scollega il disco di avvio dall'istanza prerilasciabile e collegalo a una nuova istanza non configurata come prerilasciabile. Puoi anche creare uno snapshot del disco di avvio e utilizzarlo per creare una nuova istanza senza prerilascio.

  • VM spot. Le VM spot non possono eseguire la migrazione live per diventare VM standard mentre sono in esecuzione o essere impostate per il riavvio automatico in caso di evento host.

  • VM ottimizzate per lo spazio di archiviazione. Le VM Z3 (anteprima) 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. Le VM impostate per essere terminate durante un evento host si arrestano e si riavviano, facoltativamente.

Quando Google Cloud esegue la migrazione di una VM in esecuzione da un host a un altro, lo stato completo della VM dall'origine alla destinazione viene spostato in modo da risultare trasparente per il sistema operativo guest e per tutti gli elementi che comunicano. Per far funzionare queste operazioni senza problemi sono necessari molti componenti, ma i passaggi generali sono mostrati nella seguente illustrazione:

Migrazione di una VM e di ciascuna delle sue risorse in un nuovo sistema host senza richiedere il riavvio del sistema operativo guest.
Componenti per la 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, una manutenzione di pianificazione delle operazioni hardware o un segnale automatico di un guasto hardware imminente.

Il software di gestione dei cluster di Google Cloud monitora costantemente questi eventi e li pianifica in base ai criteri che controllano i data center, come i tassi 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 informa che è in corso una migrazione. 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" sottoposta a migrazione. L'autenticazione viene usata per stabilire una connessione tra l'origine e la destinazione.

La migrazione di una VM prevede tre fasi:

  1. Riduzione del calo delle fonti. La VM è ancora in esecuzione sull'origine, mentre la maggior parte dello stato viene inviata dall'origine alla destinazione. Ad esempio, Google Cloud copia tutta la memoria guest nella destinazione, monitorando al contempo le pagine che sono state modificate nell'origine. Il tempo trascorso nel brownout dell'origine dipende dalla dimensione della memoria guest e dalla frequenza con cui le pagine vengono modificate.

  2. Oscuramento. Un brevissimo momento in cui la VM non è in esecuzione da nessuna parte, viene messa in pausa e viene inviato tutto lo stato rimanente necessario per iniziare a eseguire la VM sul target. La VM entra in una fase di blackout quando lo stato di invio, durante il brownout di origine, raggiunge un punto di restituzione decrescente. Viene utilizzato un algoritmo che bilancia il numero di byte di memoria inviati con la frequenza con cui la VM guest apporta modifiche.

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

  3. Punta a un brownout. 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 raggiunge 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 è completata e il sistema elimina la VM di origine. Puoi vedere che la migrazione è avvenuta nei log delle VM.

Processo di migrazione live manuale

Durante l'esecuzione del carico di lavoro, potresti voler spostare le VM in un nodo o gruppo di nodi diverso. La single-tenancy consente di spostare le VM in uno specifico nodo single-tenant 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 modalità single-tenancy, consulta Panoramica single-tenancy.

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

Passaggi successivi