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 imminente dell'host prima che venga eseguita. Quando il periodo di manutenzione ha inizio, Google Cloudesegue 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 e eseguendo query sul server di metadati. Puoi anche visualizzare i prossimi eventi di manutenzione 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 relative alla manutenzione
Le notifiche relative alla manutenzione contengono i seguenti campi:
windowStartTime
: L'inizio dell'intervallo di tempo in cui verrà eseguita la manutenzionewindowEndTime
: La fine dell'intervallo 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 verrà comunicata con 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 pianificata
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. Questo si verifica in genere durante il periodo in cui la VM è attivamente in manutenzione.
maintenanceStatus
: Lo stato dell'operazione di manutenzione in corsoONGOING
: L'operazione di manutenzione è in corsoPENDING
: l'operazione di manutenzione non è ancora iniziata, ma è pianificata.
Se non è presente alcuna notifica di manutenzione, la risposta è 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=True
emaintenanceStatus=Pending
: puoi avviare manualmente l'evento di manutenzione per l'istanza prima dell'ora di inizio programmata.canReschedule=False
emaintenanceStatus=Ongoing
: la manutenzione è in corso e non può essere riprogrammata.canReschedule=False
emaintenanceStatus=Pending
: la tua istanza non supporta gli eventi di manutenzione attivati manualmente.
Visualizza le notifiche di manutenzione
Per visualizzare le notifiche di manutenzione:
- Chiamare l'API Cloud TPU utilizzando Google Cloud CLI
- Eseguire query sul server di metadati sulla VM
- Controllo di Cloud Logging
Controlla le TPU per una notifica di manutenzione
gcloud
Utilizza il comando gcloud alpha compute tpus tpu-vm
describe
per visualizzare
le notifiche di manutenzione:
gcloud alpha compute tpus tpu-vm describe TPU_NAME \ --zone=ZONE
Se è presente un evento di manutenzione imminente, la risposta contiene 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 sutrue
emaintenanceStatus
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 è presente un evento di manutenzione imminente, la risposta contiene 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 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 ulteriori informazioni sui metadati delle VM, vedi Informazioni sui metadati delle VM nella documentazione di Compute Engine.
Verifica la presenza di una notifica di manutenzione in Cloud Logging
Quando una notifica viene pianificata su Cloud TPU, Cloud Logging
contiene un log eventi di sistema per l'evento, con methodName
:
compute.instance.upcomingMaintenance
. Per visualizzare i log per gli eventi di manutenzione
imminenti:
Nel menu di navigazione della console Google Cloud , 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 i prossimi eventi di manutenzione in Cloud Logging per la singola istanza VM, ad esempio
t1v-n-5bdca789-w-0
.
Esempi di log delle notifiche relative alla 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 nei log di controllo 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." }