Questo documento spiega come utilizzare le funzionalità di manutenzione host disponibili con le VM H4D. Spiega come monitorare, pianificare ed eseguire la manutenzione pianificata delle istanze di macchine virtuali (VM). Per gestire la manutenzione dei blocchi di capacità prenotati, indipendentemente dal fatto che le VM siano in esecuzione o meno, consulta Gestisci gli eventi sull'host nelle prenotazioni.
Se gestisci in modo proattivo gli eventi di manutenzione dell'host imminenti sulle tue VM, puoi ridurre al minimo le interruzioni e mantenere prestazioni ottimali.
Prima di iniziare
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:
gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per gestire gli eventi di manutenzione dell'host nelle VM, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Compute Admin (
roles/compute.admin) sul progetto -
Per l'accesso di sola lettura agli audit log degli eventi di sistema:
Logs Viewer (
roles/logging.viewer) sul progetto
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire gli eventi di manutenzione dell'host nelle VM. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per gestire gli eventi di manutenzione dell'host nelle VM sono necessarie le seguenti autorizzazioni:
-
Per visualizzare i dettagli di una VM:
compute.instances.getsul progetto
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Panoramica
Per ottimizzare la manutenzione delle VM, completa i seguenti passaggi:
Informazioni sulla manutenzione dell'host. Scopri la frequenza e il comportamento di manutenzione delle tue VM in base alla serie di macchine. Queste informazioni ti aiutano a ridurre al minimo le interruzioni dei workload.
Configura gli avvisi di notifica. Crea avvisi basati su log per ricevere notifiche quando la manutenzione delle tue VM è pianificata, avviata o completata. Questo approccio ti aiuta a pianificare in modo proattivo le tue attività e a evitare tempi di inattività imprevisti.
Gestisci la manutenzione nelle VM. Visualizza se è pianificata la manutenzione delle tue VM. Se necessario, puoi avviare manualmente la manutenzione delle tue VM. Questo processo ti aiuta ad aumentare la resilienza dei tuoi workload per ospitare eventi, evitare tempi di inattività e massimizzare la disponibilità delle tue applicazioni.
Informazioni sulla manutenzione dell'host
Durante il ciclo di vita di un'istanza Compute Engine, la macchina host su cui viene eseguita l'istanza subisce diversi eventi dell'host. Un evento dell'host può includere la normale manutenzione dell'infrastruttura Compute Engine o, in rari casi, un errore dell'host. Compute Engine implementa anche upgrade leggeri e non invasivi dell'hypervisor e della rete, in background.
La serie di macchine H4D offre le seguenti funzionalità di manutenzione dell'host:
| Tipo di macchina | Frequenza tipica degli eventi di manutenzione programmata | Comportamento di manutenzione | Notifica di preavviso | Manutenzione on demand | Simulazione di manutenzione |
|---|---|---|---|---|---|
h4d-standard-192 |
Almeno ogni 30 giorni | Termina | 7 giorni | Sì | No |
h4d-highmem-192 |
Almeno ogni 30 giorni | Termina | 7 giorni | Sì | No |
h4d-highmem-192-lssd |
Almeno ogni 30 giorni | Termina con la persistenza dei dati di SSD locali | 7 giorni | Sì | No |
La frequenza di manutenzione indicata nella tabella precedente ha solo valore indicativo. Può accadere che Compute Engine esegua la manutenzione con maggiore frequenza.
Configurare gli avvisi di notifica per le VM
Puoi ricevere notifiche relative agli eventi di manutenzione pianificati, avviati o completati per le tue VM creando policy di avviso basate sui log.
Per creare un avviso per gli eventi di manutenzione delle tue VM, completa la seguente procedura. Ripeti questa procedura per ogni avviso che vuoi creare.
-
Nella console Google Cloud , vai alla pagina Esplora log:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.
Fai clic sul pulsante di attivazione/disattivazione Mostra query in modo che sia impostato su On.
Nel riquadro Query, crea una delle seguenti query. Queste query filtrano le voci di log per identificare eventi di manutenzione specifici. Se vuoi utilizzare più query, ripeti questa procedura per creare un avviso univoco per ogni query.
Per ricevere avvisi quando è pianificata la manutenzione di una VM:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Per ricevere avvisi quando si apre la periodo di manutenzione per una VM:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "ongoing"Per ricevere avvisi quando è iniziata la manutenzione di una VM:
protoPayload.methodName="compute.instance.terminateOnHostMaintenance" severity>=DEFAULTPer ricevere avvisi al termine della manutenzione di una VM:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "completed"
Per convalidare la query, fai clic su Esegui query. Se la query è valida, il riquadro Risultati delle query mostra le voci di log che corrispondono alla query.
Nella barra degli strumenti dei risultati della query, fai clic sull'elenco Azioni e poi seleziona Crea avviso log. Viene visualizzato il riquadro Crea policy di avviso basata su log.
Nella sezione Dettagli avviso, segui questi passaggi:
Nel campo Nome criterio di avviso, inserisci un nome per il criterio.
Nell'elenco Livello di gravità della policy, seleziona Avviso (o un livello di gravità superiore).
Fai clic su Avanti.
Nella sezione Scegli i log da includere nell'avviso, fai clic su Avanti.
Nella sezione Imposta la frequenza delle notifiche e la durata della chiusura automatica, specifica quanto segue:
Nell'elenco Tempo tra le notifiche, seleziona la frequenza con cui vuoi ricevere le notifiche.
Nell'elenco Durata chiusura automatica incidenti, seleziona dopo quanto tempo Cloud Logging smette di inviare notifiche e chiude automaticamente l'incidente.
Fai clic su Avanti.
Nella sezione Chi dovrebbe ricevere le notifiche?, specifica un canale di notifica per Logging a cui inviare le notifiche.
Fai clic su Salva.
Per visualizzare esempi di notifiche di eventi di manutenzione in Esplora log, consulta Esempi di notifiche relative alla manutenzione nella documentazione di Compute Engine.
Gestisci la manutenzione tra le VM
Puoi visualizzare e controllare la manutenzione delle tue VM eseguendo una o più delle seguenti operazioni:
Per controllare lo stato e l'ora pianificata della manutenzione imminente per le tue VM, visualizza lo stato di manutenzione delle VM.
Per avviare immediatamente la manutenzione delle VM, anziché attendere l'orario di manutenzione pianificato, avvia manualmente la manutenzione delle VM.
Visualizzare lo stato di manutenzione delle VM
Puoi visualizzare lo stato e l'ora pianificata della manutenzione imminente delle tue VM
controllando il valore del campo upcomingMaintenance nei
metadati dell'istanza. Se una VM non contiene il campo upcomingMaintenance, non è pianificato alcun evento di manutenzione
dell'host per la VM. Per ulteriori informazioni sui campi
in upcomingMaintenance, consulta
Definizioni dello stato di manutenzione
nella documentazione di Compute Engine.
Inoltre, se è pianificata la manutenzione per una VM, il campo
upcomingGroupMaintenance contiene il campo maintenanceReasons. Questo
campo descrive il motivo per cui è stata pianificata la manutenzione della VM, come descritto nella
tabella seguente:
| Tipo di manutenzione | Motivo della manutenzione | Stato delle VM |
|---|---|---|
| Manutenzione pianificata per la manutenzione regolare |
|
Si applica alle VM in esecuzione, arrestate o sospese. |
| Manutenzione di emergenza non pianificata |
|
Si applica solo alle VM in esecuzione. |
Per visualizzare il campo maintenanceReasons in una VM, devi utilizzare
gcloud CLI o l'API REST. Per visualizzare lo stato di manutenzione di più VM contemporaneamente, devi utilizzare la console Google Cloud o l'API REST. In caso contrario, seleziona una delle seguenti opzioni:
Console
Nella console Google Cloud , vai alla pagina Istanze VM.
Nella colonna Stato della manutenzione, Compute Engine mostra lo stato di manutenzione delle tue VM. Se non vedi questa colonna nella tabella Istanze VM, fai clic su view_column Opzioni di visualizzazione delle colonne, seleziona la casella di controllo Stato della manutenzione e poi fai clic su Ok.
gcloud
Per visualizzare lo stato di manutenzione di una VM, utilizza il comando gcloud compute instances describe con il flag --flatten=resourceStatus.upcomingMaintenance:
gcloud compute instances describe VM_NAME \
--flatten=resourceStatus.upcomingMaintenance \
--zone=ZONE
Sostituisci quanto segue:
VM_NAME: il nome della VM.ZONE: la zona in cui esiste la VM.
L'output è simile a uno dei seguenti:
Se per la tua VM è pianificato un evento di manutenzione dell'host, l'output è simile al seguente:
--- canReschedule: true latestWindowStartTime: '2025-11-01T19:00:00Z' maintenanceReasons: - 'PLANNED_UPDATE' - 'PLANNED_NETWORK_UPDATE' maintenanceStatus: 'PENDING' type: 'SCHEDULED' windowEndTime: '2025-11-01T22:00:00Z' windowStartTime: '2025-11-01T19:00:00Z'Se per la tua VM non è pianificato un evento di manutenzione dell'host, l'output è simile al seguente:
--- null
REST
Per visualizzare lo stato di manutenzione delle VM, invia una delle seguenti richieste GET. Quando effettui una richiesta, devi includere il parametro di query fields per mostrare solo il nome, il tipo di macchina e la manutenzione imminente per una VM. Devi includere anche il parametro di query filter per filtrare le VM solo
in base a un tipo di macchina specifico.
Per visualizzare le VM in tutte le zone:
instances.aggregatedListmetodo.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPEPer visualizzare le VM in una zona specifica: metodo
instances.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPE
Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto in cui hai creato le VM.ZONE: la zona in cui esistono le VM.MACHINE_TYPE: il tipo di macchina in base al quale vuoi filtrare le VM.
Se per una VM è pianificato un evento di manutenzione dell'host, la VM contiene il campo
upcomingMaintenance:
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west4-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"upcomingMaintenance": {
"canReschedule": true,
"latestWindowStartTime": "2024-11-01T19:00:00Z",
"maintenanceStatus": "PENDING",
"maintenanceReasons": [
"PLANNED_UPDATE",
"PLANNED_NETWORK_UPDATE"
],
"type": "SCHEDULED",
"windowEndTime": "2024-11-01T22:00:00Z",
"windowStartTime": "2024-11-01T19:00:00Z"
}
}
},
...
]
}
(Facoltativo) Per restringere ulteriormente un elenco di VM, imposta il parametro di query filter su un'espressione di filtro diversa.
Server di metadati
Per visualizzare lo stato di manutenzione di una VM:
Se non l'hai ancora fatto, connettiti alla tua Linux o Windows.
Esegui una query sul server di metadati nel seguente modo:
curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"Se per la tua VM è pianificato un evento di manutenzione dell'host, l'output è simile al seguente:
"Upcoming maintenance": { "can_reschedule": "true", "latest_window_start_time": "2024-12-01T19:00:01Z", "maintenance_reasons": [ "PLANNED_UPDATE", "PLANNED_NETWORK_UPDATE" ], "maintenance_status": "PENDING", "type": "SCHEDULED", "window_end_time": "2024-12-01T21:00:01Z", "window_start_time": "2024-12-01T19:00:01Z" }Se non è pianificato un evento di manutenzione dell'host, l'output è simile al seguente:
{ }
Avviare manualmente la manutenzione sulle VM
Puoi avviare manualmente la manutenzione delle VM anziché attendere l'ora pianificata.
A seconda dello stato di manutenzione di una VM, si verifica quanto segue:
| Stato di manutenzione | Descrizione | Cosa vedi |
|---|---|---|
| Pianificato | Compute Engine ha pianificato la manutenzione della VM. Puoi avviare manualmente la manutenzione prima dell'orario pianificato. |
|
| In corso | La manutenzione è in corso. Non puoi riprogrammarlo. |
|
| Completa | La manutenzione è terminata. Compute Engine ha rimosso tutte le notifiche di manutenzione dalla VM. |
|
Puoi avviare manualmente la manutenzione per più VM contemporaneamente o per singole VM. Per più VM, utilizza la console Google Cloud o, per le VM situate nella stessa zona, gcloud CLI. Per le singole VM, seleziona una delle seguenti opzioni:
Console
Nella console Google Cloud , vai alla pagina Istanze VM.
Seleziona le righe delle VM in cui vuoi avviare la manutenzione.
Fai clic su Esegui manutenzione.
Per confermare, fai clic su Esegui manutenzione.
gcloud
Per avviare manualmente la manutenzione di una o più VM all'interno della stessa zona, utilizza
il
comando gcloud compute instances perform-maintenance:
gcloud compute instances perform-maintenance VM_NAMES \
--zone=ZONE
Sostituisci quanto segue:
VM_NAMES: un elenco di nomi di VM separati da spazi; ad esempio,vm-01 vm-02 vm-03.ZONE: la zona in cui esistono le VM.
REST
Per avviare manualmente la manutenzione di una VM, invia una richiesta POST al
metodo instances.performMaintenance:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/performMaintenance
Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto in cui hai creato la VM.ZONE: la zona in cui esiste la VM.VM_NAME: il nome della VM.
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-12-04 UTC.