Il server di metadati fornisce informazioni sulle opzioni e sulle impostazioni di pianificazione di un'istanza Compute Engine tramite l'elenco della directory dei metadati scheduling/
e la chiave dei metadati maintenance-event
. Puoi utilizzare queste chiavi di metadati per conoscere le opzioni di pianificazione di una VM e anche per ricevere una notifica di un evento di manutenzione imminente.
Il server dei metadati riceve avvisi relativi agli eventi di manutenzione prima che venga eseguita la migrazione live o la terminazione di un'istanza di calcolo. Per saperne di più sugli eventi di manutenzione e sul comportamento delle istanze durante questi eventi, consulta la Panoramica della manutenzione dell'host.
Per un insieme specifico di VM, le opzioni di manutenzione delle VM sono più flessibili. Per approfondire, consulta Monitorare e pianificare un evento di manutenzione dell'host.
Prima di iniziare
- Per le VM Windows Server, utilizza
PowerShell 3.0 o versioni successive.
Ti consigliamo di utilizzare
ctrl+v
per incollare i blocchi di codice copiati. -
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Per utilizzare gli Python esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Ricevere avvisi migrazione live
Puoi sapere quando sta per iniziare la migrazione live della tua istanza
eseguendo periodicamente una query sulla chiave di metadati maintenance-event
.
La chiave dei metadati maintenance-event
viene compilata per gli eventi di manutenzione solo se hai impostato l'opzione di pianificazione della VM su migrate
o se alla VM è collegata una GPU.
Il valore di questa chiave dei metadati cambia 60 secondi prima dell'inizio di un evento di manutenzione, offrendo al codice dell'applicazione un modo per attivare le attività che vuoi eseguire prima di un evento di manutenzione, ad esempio il backup dei dati o l'aggiornamento dei log.
Compute Engine invia l'avviso di 60 secondi solo se:
Hai impostato le opzioni di disponibilità della VM per la migrazione live durante un evento di manutenzione.
Hai eseguito una query sulla chiave dei metadati
maintenance-event
almeno una volta dall'ultimo evento di manutenzione.Se non hai mai eseguito query sulla chiave dei metadati
maintenance-event
o non lo hai fatto dall'ultima migrazione, Compute Engine presume che la VM non richieda un avviso anticipato degli eventi di manutenzione. L'evento di manutenzione si avvia immediatamente e salta l'avviso di 60 secondi.Se non vuoi saltare l'avviso di 60 secondi, assicurati che il codice client effettui query sulla chiave dei metadati
maintenance-event
almeno una volta tra gli eventi di migrazione. Devi eseguire una query direttamente sulla chiave dei metadatimaintenance-event
per consentire a Compute Engine di determinare che stai monitorando questa chiave dei metadati. L'esecuzione di query su metadati di livello superiore non attiva l'avviso.
Per le VM con GPU collegate, il valore cambia 60 minuti prima dell'interruzione delle VM per darti il tempo di arrestare e riavviare su un altro host. Le VM con GPU collegate non vengono migrate in tempo reale, ma vengono interrotte e, facoltativamente, riavviate. Per saperne di più, consulta Gestione degli eventi di manutenzione degli host GPU.
Esegui una query sulla chiave dei metadati dell'evento di manutenzione
VM Linux
Per eseguire una query sulla chiave dei metadati maintenance-event
sulle VM Linux, esegui il
seguente comando:
user@myinst:~$ curl http://metadata.google.internal/computeMetadata/v1/instance/maintenance-event -H "Metadata-Flavor: Google"
L'output è simile al seguente:
NONE
Puoi anche utilizzare l'opzione
wait-for-change
. Se specifichi questa opzione, la richiesta restituisce un output solo quando un evento di manutenzione sta per iniziare e terminare.
user@myinst:~$ curl http://metadata.google.internal/computeMetadata/v1/instance/maintenance-event?wait_for_change=true -H "Metadata-Flavor: Google"
VM Windows
Per eseguire una query sulla chiave dei metadati maintenance-event
sulle VM Windows, esegui il seguente comando:
PS C:\>
$value = (Invoke-RestMethod `
-Headers @{'Metadata-Flavor' = 'Google'} `
-Uri "http://metadata.google.internal/computeMetadata/v1/instance/maintenance-event")
$value
L'output è simile al seguente:
NONE
Puoi anche utilizzare l'opzione
wait-for-change
. Se specifichi questa opzione, la richiesta restituisce un output solo quando un evento di manutenzione sta per iniziare e terminare.
PS C:\>
$value = (Invoke-RestMethod `
-Headers @{'Metadata-Flavor' = 'Google'} `
-Uri "http://metadata.google.internal/computeMetadata/v1/instance/maintenance-event?wait_for_change=true")
$value
Python
Puoi utilizzare la chiave dei metadati maintenance-event
con la funzionalità
in attesa di aggiornamenti
per notificare i tuoi script e le tue applicazioni quando un evento di manutenzione è
in procinto di iniziare e terminare. In questo modo puoi automatizzare qualsiasi azione che potresti voler eseguire prima o dopo l'evento.
Il seguente esempio di Python mostra come implementare queste due funzionalità insieme.
Esamina gli output
Il valore iniziale e predefinito della chiave dei metadati maintenance-event
è NONE
.
Per le VM con GPU collegate, le istanze Bare Metal o altre istanze che non supportano la migrazione live, il valore dell'evento di manutenzione cambia da
NONE
aTERMINATE_ON_HOST_MAINTENANCE
. Questo valore viene aggiornato 60 minuti prima dell'inizio dell'evento di arresto.Per le VM non GPU con un'opzione di pianificazione
migrate
, il valoremaintenance-event
cambia come segue:- All'inizio dell'evento di migrazione, il valore cambia da
NONE
aMIGRATE_ON_HOST_MAINTENANCE
. Questo valore viene aggiornato 60 secondi prima dell'inizio dell'evento di arresto. - Per tutta la durata dell'evento e durante la migrazione live dell'istanza VM, il valore rimane
MIGRATE_ON_HOST_MAINTENANCE
. - Al termine dell'evento di manutenzione, il valore torna a
NONE
.
- All'inizio dell'evento di migrazione, il valore cambia da
Per le VM di proprietà esclusiva, durante un evento di manutenzione dell'host, il valore della chiave dei metadati
maintenance-event
non cambia e rimaneNONE
dall'inizio alla fine dell'evento.
Per le serie di macchine che supportano le funzionalità di manutenzione avanzata, prima di un evento di manutenzione puoi eseguire una query sulla chiave dei metadatiupcoming-maintenance
. Se è disponibile una notifica per la tua istanza, dovresti vedere valori simili ai seguenti:
{
"maintenanceType":"SCHEDULED"
"canReschedule": "true"
"latestWindowStartTime": "2025-08-28T21:56:21Z"
"maintenanceStatus": "PENDING"
"windowEndTime": "2025-08-29T01:56:20Z"
"windowStartTime": "2025-08-28T21:56:26Z"
}
La chiave dei metadati upcoming-maintenance
viene compilata prima di un evento di manutenzione come segue:
- C3: fino a 7 giorni
- C3D: fino a 7 giorni
- X4: fino a 60 giorni
- Z3: fino a 7 giorni
Passaggi successivi
- Scopri di più su come impostare i criteri di disponibilità delle istanze.
- Scopri di più sulla migrazione live.
- Scopri di più sui metadati della VM.