Visualizza le notifiche di manutenzione
Un evento di manutenzione dell'host si verifica quando Google Cloud deve eseguire un'attività di manutenzione o riparazione sulla tua TPU. Google invia notifiche per la manutenzione dell'host imminente prima che venga eseguita la manutenzione. Quando il periodo di manutenzione ha inizio, Google Cloud esegue automaticamente la manutenzione dell'istanza. Monitorando i periodi di manutenzione imminenti dell'istanza, puoi preparare in modo proattivo i tuoi workload per gestire la manutenzione imminente con interruzioni minime.
Cloud TPU ti consente di visualizzare le notifiche di manutenzione utilizzando Google Cloud CLI ed eseguendo una query sul server di metadati. Puoi anche visualizzare gli eventi di manutenzione imminenti in Cloud Logging. Per informazioni sulla visualizzazione delle notifiche di manutenzione per le TPU in GKE, consulta Gestire l'interruzione dei nodi GKE per GPU e TPU.
Campi delle notifiche di manutenzione
Le notifiche di manutenzione contengono i seguenti campi:
windowStartTime: l'inizio del periodo di tempo in cui verrà eseguita la manutenzionewindowEndTime: la fine del periodo di tempo in cui verrà eseguita la manutenzionelatestWindowStartTime: l'ora massima a cui è possibile spostare il periodo di manutenzionemaintenanceType: il tipo di manutenzione che verrà eseguitaSCHEDULED: la manutenzione riceverà un preavviso di sette giorniUNSCHEDULED: la manutenzione rappresenta aggiornamenti critici per i quali viene fornito un preavviso con meno anticipo rispetto agli eventi di manutenzione pianificati
canReschedule: indica se puoi avviare manualmente la manutenzione durante il periodo di notifica per questa VM.TRUE: puoi avviare manualmente la manutenzione durante il periodo di notifica.FALSE: non puoi avviare manualmente la manutenzione su questa VM. In genere, questo si verifica durante il periodo in cui la VM è in fase di manutenzione attiva.
maintenanceStatus: lo stato attuale dell'operazione di manutenzioneONGOING: l'operazione di manutenzione è in corsoPENDING: l'operazione di manutenzione non è ancora iniziata, ma è pianificata
Se non è presente alcuna notifica di manutenzione, la risposta sarà simile alla seguente:
{ "error": "no notifications have been received yet, try again later" }
Comportamenti dello stato della manutenzione
Quando gestisci gli eventi di manutenzione, controlla i valori di canReschedule e maintenanceStatus. Se combinati, questi campi indicano le azioni che puoi o non puoi intraprendere in merito all'avvio manuale di un evento di manutenzione:
canReschedule=TrueemaintenanceStatus=Pending: puoi avviare manualmente l'evento di manutenzione per l'istanza prima dell'ora di inizio programmata.canReschedule=FalseemaintenanceStatus=Ongoing: la manutenzione è in corso e non può essere riprogrammata.canReschedule=FalseemaintenanceStatus=Pending: la tua istanza non supporta gli eventi di manutenzione attivati manualmente.
Visualizza le notifiche di manutenzione
Puoi visualizzare le notifiche di manutenzione:
- Chiamando l'API Cloud TPU utilizzando Google Cloud CLI
- Eseguendo una query sul server di metadati sulla VM
- Controllando Cloud Logging
Verifica la presenza di una notifica di manutenzione nelle TPU
gcloud
Utilizza il gcloud alpha compute tpus tpu-vm
describe comando
per visualizzare le notifiche di manutenzione:
gcloud alpha compute tpus tpu-vm describe TPU_NAME \ --zone=ZONE
Se è previsto un evento di manutenzione, la risposta conterrà una sezione simile alla seguente:
upcomingMaintenance: canReschedule: true latestWindowStartTime: "2025-12-01T19:00:00Z" maintenanceStatus: PENDING type: SCHEDULED windowEndTime: "2025-12-01T22:00:00Z" windowStartTime: "2025-12-01T19:00:00Z"
In questa risposta:
- La manutenzione è pianificata per la data e ora indicata in
windowStartTime. canRescheduleè impostato sutrueemaintenanceStatusè impostato suPENDING. Queste impostazioni indicano che puoi avviare manualmente l'evento di manutenzione pianificato prima della data indicata inlatestWindowStartTime.
Server di metadati
Da una VM TPU, esegui una query sul server di metadati per visualizzare il prossimo evento di manutenzione:
curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"
Se è previsto un evento di manutenzione, la risposta conterrà una sezione simile alla seguente:
Upcoming maintenance: { "can_reschedule" : "true", "latest_window_start_time" : "2024-06-12T16:00:01+00:00", "maintenance_status" : "PENDING", "type" : "SCHEDULED", "window_end_time" : "2024-06-12T20:00:00+00:00", "window_start_time" : "2024-06-12T16:00:00+00:00" }
Puoi eseguire una query sul server di metadati da qualsiasi VM TPU nello slice perché la notifica dell'evento di manutenzione imminente è la stessa per tutte le VM in uno slice.
Per maggiori informazioni sui metadati delle VM, consulta Informazioni sui metadati delle VM nella documentazione di Compute Engine.
Verifica la presenza di una notifica di manutenzione in Cloud Logging
Quando una notifica è pianificata sulla tua Cloud TPU, Cloud Logging conterrà un log degli eventi di sistema per l'evento, con methodName: compute.instance.upcomingMaintenance. Per visualizzare i log degli eventi di manutenzione imminenti:
Nel menu di navigazione della Google Cloud console, vai alla pagina Esplora log:
Utilizza la seguente query di ricerca per visualizzare le TPU per cui è pianificato un evento di manutenzione imminente:
"compute.instances.upcomingMaintenance"Cloud TPU registra gli eventi di manutenzione imminenti in Cloud Logging per la singola istanza VM, ad esempio
t1v-n-5bdca789-w-0.
Esempi di log delle notifiche di manutenzione
In Esplora log viene visualizzata una notifica di evento di manutenzione con valori simili ai seguenti:
methodName:"compute.instances.upcomingMaintenance"metadata:maintenanceStatus:"PENDING"windowStartTime:"2024-07-23T20:00:00Z"
Di seguito è riportato un esempio di voce di log completa per un evento di manutenzione imminente:
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"status": {
"message": "Maintenance is scheduled for this instance. Review the maintenance schedule by describing the VM with gcloud CLI or querying the http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance metadata key."
},
"serviceName": "compute.googleapis.com",
"methodName": "compute.instances.upcomingMaintenance",
"resourceName": "projects/cloud-tpu-multipod-dev/zones/europe-west4-b/instances/t1v-n-9472280f-w-0",
"request": {
"@type": "type.googleapis.com/compute.instances.upcomingMaintenance"
},
"metadata": {
"type": "SCHEDULED",
"windowStartTime": "2024-11-15T04:00:00Z",
"canReschedule": true,
"latestWindowStartTime": "2024-11-15T04:00:01Z",
"windowEndTime": "2024-11-15T08:00:00Z",
"maintenanceStatus": "PENDING"
},
"logName": "projects/cloud-tpu-multipod-dev/logs/cloudaudit.googleapis.com%2Fsystem_event",
"operation": {
"id": "systemevent-1731038451389-6265ecbfcd453-5127b81e-f40b8149",
"producer": "compute.instances.upcomingMaintenance",
"first": true,
"last": true
},
"receiveTimestamp": "2024-11-08T04:00:54.457835088Z"
}
Quando inizia l'evento di manutenzione, nei log viene visualizzato un nuovo evento informativo con valori simili ai seguenti:
methodName:"compute.instances.upcomingMaintenance"metadata:maintenanceStatus:"ONGOING"windowStartTime:"2024-07-23T20:00:00Z"
Al termine dell'evento di manutenzione, viene visualizzato un nuovo evento informativo negli audit log con valori simili ai seguenti:
methodName:"compute.instances.upcomingMaintenance"status: { message: "Maintenance window has completed for this instance. All maintenance notifications on the instance have been removed." }