Attiva un evento di manutenzione dell'host

Questa pagina spiega come attivare un evento di manutenzione dell'host su istanze specifiche della famiglia di VM. Questa funzionalità ti consente di avviare manualmente un evento di manutenzione per controllare la tempistica della manutenzione della VM. Questo è utile per i carichi di lavoro che potrebbero essere interessati da un periodo di manutenzione specifico.

Puoi attivare manualmente un evento di manutenzione in modo che venga avviato immediatamente. Non è possibile attivare un evento in una data o un'ora specifiche. Se non utilizzi questa funzionalità, l'evento di manutenzione si verifica come pianificato.

Limitazioni

L'attivazione di un evento di manutenzione dell'host VM è limitata ai seguenti tipi di VM:

Prima di iniziare

  • Se non l'hai già fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità dell'utente per ottenere l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione in Compute Engine come segue.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

        Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

        gcloud init

      Per maggiori informazioni, consulta Autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per creare VM e gestire la manutenzione delle VM, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare VM e gestire la manutenzione delle VM. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare VM e gestire la manutenzione delle VM sono necessarie le seguenti autorizzazioni:

  • Per ottenere informazioni su una VM: compute.instances.get
  • Per creare una VM: compute.instances.create

Potresti anche riuscire a ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.

Attiva evento di manutenzione dell'host

Google invia notifiche per la manutenzione imminente delle VM utilizzando diversi metodi. Puoi trovare le notifiche eseguendo query sulle VM, sul server di metadati o su Cloud Logging.

Dopo aver ricevuto una notifica relativa a un evento di manutenzione dell'host, puoi scegliere di attivare subito la manutenzione o attendere che l'evento di manutenzione si verifichi come pianificato.

Avvia l'evento di manutenzione

Puoi avviare la manutenzione delle VM immediatamente, anziché attendere l'orario pianificato. Utilizza Google Cloud CLI o il metodo REST per attivare immediatamente la manutenzione della VM.

Se non viene visualizzata alcuna notifica e provi ad attivare un evento di manutenzione, viene visualizzato il seguente messaggio:

There is no reschedulable upcoming maintenance.

Questo indica che non è stato pianificato alcun evento di manutenzione e che non è richiesta alcuna azione.

gcloud

Per avviare immediatamente la manutenzione, utilizza il comando gcloud compute instances perform-maintenance. Devi includere i --zone=[ZONE_NAME].

gcloud compute instances perform-maintenance VM_NAME \
--zone=ZONE

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.
  • ZONE: la zona in cui si trova la VM.

La risposta ha questo aspetto:

upcomingMaintenance:{
  "canReschedule":false
  "latestWindowStartTime": "2023-12-01T19:00:01Z"
  "maintenanceStatus":"ONGOING"
  "type":"SCHEDULED"
  "windowEndTime": "2023-12-01T22:00:00Z"
  "windowStartTime": "2023-12-01T19:00:00Z"
}

Nella risposta, maintenanceStatus è impostato su ONGOING. Sono in corso la manutenzione.

REST

Per attivare la manutenzione delle VM, esegui il comando instances.performMaintenance:

POST: https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/performMaintenance

Sostituisci quanto segue:

  • PROJECT_NAME: il nome del progetto.
  • ZONE: la zona in cui si trova la VM.
  • VM_NAME: il nome della VM.

La risposta ha questo aspetto:

upcomingMaintenance:{
  "canReschedule":false
  "latestWindowStartTime": "2023-12-01T19:00:01Z"
  "maintenanceStatus":"ONGOING"
  "type":"SCHEDULED"
  "windowEndTime": "2023-12-01T22:00:00Z"
  "windowStartTime": "2023-12-01T19:00:00Z"
}

Nella risposta, maintenanceStatus è impostato su ONGOING. Sono in corso la manutenzione.

Definizioni degli stati di manutenzione

Le seguenti definizioni di stato spiegano le risposte a una query di manutenzione delle VM. Forniscono informazioni relative alla manutenzione delle VM. Google Cloud CLI, REST e il server di metadati utilizzano le stesse risposte:

  • windowStartTime: l'inizio della finestra temporale in cui viene effettuata la manutenzione
  • windowEndTime: la fine dell'intervallo di tempo in cui viene eseguita la manutenzione
  • latestWindowStartTime: il primo momento in cui la finestra può essere spostata
  • maintenanceType: il tipo di manutenzione da eseguire.
    • NONE: non è pianificata alcuna manutenzione per questa VM
    • IN PROGRAMMA: per la manutenzione sarà previsto un preavviso di 7 giorni
    • NON PROGRAMMATO: la manutenzione rappresenta aggiornamenti critici per i quali viene dato molto meno preavviso.
  • canReschedule: indica se la manutenzione può essere attivata durante il periodo di notifica per questa VM.
    • TRUE: la manutenzione attivata dal cliente può essere eseguita durante il periodo di notifica
    • FALSE: la manutenzione attivata dal cliente non può essere eseguita su questa VM Questo spesso si verifica durante il periodo in cui la VM è in fase di manutenzione
  • maintenanceStatus: lo stato dell'operazione di manutenzione attuale
    • ONGOING: è in corso l'operazione di manutenzione.
    • IN ATTESA: l'operazione di manutenzione è pianificata, ma non è ancora iniziata.

Comportamenti dello stato di manutenzione

Durante la gestione della pianificazione della manutenzione, controlla lo stato di canReschedule= e maintenanceStatus=. Queste combinazioni di risposte descrivono le funzionalità previste per il comportamento e mostrano una delle seguenti combinazioni di stati:

  • Se canReschedule=Yes e maintenanceStatus=Pending puoi attivare la manutenzione sulla VM.
  • Se canReschedule=No e maintenanceStatus=Ongoing è già in corso la manutenzione.
  • Se canReschedule=No e maintenanceStatus=Pending la tua VM non supporta la manutenzione attivata manualmente.

Passaggi successivi