Se noti problemi su una VM H4D riservata che non riesci a risolvere in altro modo, ad esempio errori persistenti con il dispositivo RDMA, ti consigliamo di segnalare l'host come difettoso. Quando segnali un host come difettoso, Compute Engine lo segnala come difettoso e poi ripara automaticamente la VM eseguendo la manutenzione dell'host. Per le VM H4D, Compute Engine tenta di eseguire la migrazione della VM a un host diverso all'inizio della manutenzione, il che può contribuire a ridurre al minimo i tempi di inattività del workload.
Questo documento spiega come segnalare e riparare gli host difettosi per le istanze di macchine virtuali (VM) che fanno parte di cluster basati su VM. Per i cluster Google Kubernetes Engine (GKE), consulta Segnala host difettosi tramite GKE.
Limitazioni
Quando segnali un host difettoso, si applicano le seguenti limitazioni:
Puoi segnalare un host difettoso solo se la VM in esecuzione sull'host soddisfa tutte le seguenti condizioni:
La VM è in esecuzione.
La VM utilizza un tipo di macchina H4D.
La VM utilizza il modello di provisioning con prenotazione.
Google Cloud fa del suo meglio per soddisfare tutte le tue richieste di segnalazione di host difettosi. Tuttavia, a causa di vincoli di capacità o limiti di frequenza, una richiesta potrebbe non essere sempre soddisfatta.
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.
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI by running the following command:
gcloud initIf you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per segnalare un host difettoso, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) sulla VM o sul progetto -
Per visualizzare lo stato di un'operazione di report host difettoso utilizzando Cloud Logging:
Visualizzatore log (
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 segnalare un host difettoso. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per segnalare un host difettoso sono necessarie le seguenti autorizzazioni:
-
Per creare un report sull'host difettoso:
compute.instances.updatesulla VM -
Per visualizzare un elenco di operazioni utilizzando Logging:
logging.operations.listsul progetto -
Per visualizzare i dettagli di un'operazione utilizzando Logging:
logging.operations.getsul progetto -
Per visualizzare un elenco di operazioni in Compute Engine:
compute.zoneOperations.listsul progetto -
Per visualizzare i dettagli di un'operazione in Compute Engine:
compute.zoneOperations.describesul progetto
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Informazioni sulla procedura di segnalazione di un host difettoso
Dopo aver segnalato un host difettoso per una VM H4D, l'ora in cui la VM H4D viene riavviata varia in base alla modalità operativa della prenotazione utilizzata per creare la VM. Per verificare la modalità operativa di una prenotazione, visualizza il campo reservationOperationalMode nella prenotazione.
Modalità gestita ( HIGHLY_AVAILABLE_CAPACITY)Tipi di macchine supportati H4D Limitazione di frequenza delle richieste API di report sull'host difettoso Le chiamate all'API potrebbero essere soggette a limiti di frequenza. Procedura di segnalazione di un host difettoso Quando segnali un host difettoso per una VM H4D eseguita in modalità gestita, si verifica quanto segue:
- Segnala l'host difettoso: la VM rimane nello stato
RUNNINGdurante l'operazione di segnalazione, che in genere richiede 10-12 minuti per essere completata. Per esaminare lo stato dell'operazione, consulta Esaminare le operazioni dell'host difettoso del report in questo documento. - Avvia la riparazione dell'host: al termine dell'operazione di segnalazione dell'host difettoso,
l'operazione di riparazione dell'host inizia entro un minuto.
Quando viene avviata l'operazione di riparazione dell'host, la VM si arresta e il suo stato cambia a seconda dell'impostazione Riavvio automatico (
automaticRestart) specificata per la VM:- Se il riavvio automatico è abilitato per la VM, lo stato della VM cambia in
REPAIRING. La VM viene riavviata automaticamente quando il relativo host è integro, a meno che tu non la arresti prima. - Se il riavvio automatico è disattivato per la VM, lo stato della VM cambia in
TERMINATED. Devi riavviare manualmente la VM dopo che l'host è integro.
La riparazione dell'host difettoso può richiedere da 3 a 14 giorni o anche più tempo a volte.
- Se il riavvio automatico è abilitato per la VM, lo stato della VM cambia in
- Migrazione e riavvio della VM: dopo l'avvio dell'operazione di riparazione dell'host
(in genere 10-12 minuti), Compute Engine tenta di prenotare un altro host per
sostituire l'host difettoso segnalato nella capacità riservata. Se Compute Engine
trova un host integro, se sostituisce correttamente l'host difettoso o se
trova un host integro corrispondente nella capacità riservata, Compute Engine
esegue la migrazione della VM a quell'host. Il riavvio della VM avviene quindi tramite una delle seguenti operazioni:
- Se la VM si trova nello stato
REPAIRINGe le risorse sono disponibili prima o al termine della riparazione, Compute Engine riavvia automaticamente la VM su un host integro. - Altrimenti, se la VM è nello stato
TERMINATEDo se le risorse non sono disponibili prima o al termine della riparazione, lo stato della VM rimane o cambia inTERMINATED. Devi riavviare manualmente la VM quando vuoi che venga eseguita. Tuttavia, il riavvio della VM potrebbe non riuscire se le risorse non sono disponibili al momento del riavvio della VM. Ad esempio, questo può accadere se altre VM utilizzano già l'host riparato.
- Se la VM si trova nello stato
Segnalare un host difettoso
Per segnalare un host difettoso:
Controlla l'host su cui viene eseguita la VM.
Per istruzioni, vedi Visualizzare la topologia del cluster H4D.
(Facoltativo) Esegui il backup dei dati SSD locali. Quando la VM si arresta, Compute Engine ignora automaticamente i dati di tutti i dischi SSD locali collegati alla VM. Non puoi recuperare i dati dell'SSD locale dopo che Compute Engine li ha eliminati.
Per istruzioni su come conservare i dati dell'SSD locale, consulta Backup dei dati su SSD locale.
Segnala l'host difettoso. Per segnalare un host difettoso, seleziona una delle seguenti opzioni. L'operazione di riparazione dell'host inizia immediatamente, entro un minuto dal completamento dell'operazione di segnalazione dell'host difettoso. Se la VM non risponde dopo l'avvio dell'operazione di segnalazione dell'host difettoso, ti consigliamo di riavviarla dopo aver atteso almeno 15 minuti.
gcloud
Per segnalare un host difettoso, utilizza il seguente comando
gcloud compute instances report-host-as-faulty:gcloud compute instances report-host-as-faulty VM_NAME \ --async \ --disruption-schedule=IMMEDIATE \ --fault-reasons=behavior=FAULT_REASON,description=DESCRIPTION \ --zone=ZONESostituisci quanto segue:
VM_NAME: il nome della VM.FAULT_REASON: un elenco di problemi dell'host riscontrati dalla VM, separati da virgole, ad esempioISSUE_1,ISSUE_2. Puoi specificare i seguenti valori:PERFORMANCE: si verifica un peggioramento delle prestazioni dell'operazione di rete della CPU o di Cloud RDMA, errori dell'interfaccia di rete IRDMA o il dispositivo di rete IRDMA non è presente.SILENT_DATA_CORRUPTION: i dati della VM sono danneggiati, ma la VM continua a essere eseguita. Il danneggiamento silenzioso dei dati può essere dovuto a problemi come difetti della vCPU, bug software o problemi del kernel.BEHAVIOR_UNSPECIFIED: non sai quale problema interessa la tua VM o il problema non è coperto dalle altre opzioni.
DESCRIPTION: una descrizione del problema che riguarda la tua VM, ad esempio informazioni XID o sospetti problemi di rendimento.ZONE: la zona in cui esiste la VM.
REST
Per segnalare un host difettoso, invia la seguente richiesta
POSTal metodoinstances.reportHostAsFaulty.Quando segnali un host difettoso, puoi specificare più motivi di guasto contemporaneamente. Ad esempio, per specificare due motivi di errore, invia una richiesta come segue:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/reportHostAsFaulty { "disruptionSchedule": "IMMEDIATE", "faultReasons": [ { "behavior": "FAULT_REASON_1", "description": "DESCRIPTION_1" }, { "behavior": "FAULT_REASON_2", "description": "DESCRIPTION_2" } ] }Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto in cui esiste la VM.ZONE: la zona in cui esiste la VM.VM_NAME: il nome della VM.FAULT_REASON_1eFAULT_REASON_2: ogni problema dell'host riscontrato dalla tua VM. Puoi specificare i seguenti valori:PERFORMANCE: si verifica un peggioramento delle prestazioni della CPU o dell'operazione di rete RDMA, errori del dispositivo RDMA o il dispositivo RDMA non è presente.SILENT_DATA_CORRUPTION: i dati della VM sono danneggiati, ma la VM continua a essere eseguita. Il danneggiamento silenzioso dei dati può essere dovuto a problemi come difetti delle vCPU, bug del software o problemi del kernel.BEHAVIOR_UNSPECIFIED: non hai la certezza di quale sia il problema della tua VM.
DESCRIPTION_1eDESCRIPTION_2: una descrizione per ogni problema dell'host che hai specificato, ad esempio informazioni sull'XID o problemi di rendimento sospetti.
Esamina le operazioni di segnalazione di un host difettoso
Dopo aver segnalato un host difettoso, Compute Engine avvia una serie di operazioni per contrassegnare l'host come difettoso e lo prepara per la riparazione. Nello specifico, durante un'operazione di segnalazione di un host difettoso, si verifica la seguente procedura:
Contrassegna l'host come difettoso. Compute Engine crea l'operazione di report host difettoso. L'operazione Segnala host difettoso crea quindi una sequenza di operazioni secondarie. Queste sotto-operazioni contrassegnano l'host sottostante come difettoso.
Prepara l'host per le riparazioni. Al termine di tutte le operazioni secondarie, inizia l'operazione Segnala host difettoso. Compute Engine arresta la VM e avvia l'operazione di riparazione dell'host difettoso. In base alla modalità operativa della prenotazione specificata nella prenotazione utilizzata dalla VM e se sono disponibili host integri, Compute Engine mantiene la VM arrestata o tenta di eseguire automaticamente la migrazione e il riavvio della VM.
Completa la segnalazione e ripara l'host. Compute Engine completa l'operazione di segnalazione dell'host difettoso e viene eseguita l'operazione di riparazione dell'host.
Per monitorare lo stato delle operazioni di segnalazione di host difettoso (
compute.instances.reportHostAsFaulty) nel tuo progetto, seleziona una delle seguenti opzioni. Per saperne di più su altre operazioni che puoi utilizzare per monitorare riparazioni, migrazione e riavvio automatico, consulta Comportamenti di manutenzione e riavvio e Monitorare e pianificare un evento di manutenzione dell'host nella documentazione di Compute Engine.Console (operazioni VM)
Nella console Google Cloud , vai alla pagina Operazioni.
Nella tabella visualizzata, individua la VM che hai segnalato.
Nella riga contenente la VM, nella colonna Stato, puoi visualizzare lo stato dell'operazione di segnalazione dell'host difettoso. Al termine dell'operazione, il valore è Fine.
(Facoltativo) Per verificare se Compute Engine ha riavviato la VM, visualizza i dettagli della VM.
Console (log VM)
Nella console Google Cloud , vai alla pagina Esplora log.
Verifica che l'opzione Mostra query sia attiva.
Nell'editor di query, inserisci la seguente query:
resource.type="gce_instance" AND protoPayload.methodName=~"compute\.instances\.reportHostAsFaulty"Fai clic su Esegui query. Il riquadro Risultati delle query mostra i risultati della query.
gcloud
Per visualizzare lo stato delle operazioni di segnalazione di host difettosi nel tuo progetto, utilizza il comando
gcloud compute operations listcon il flag--filterimpostato suoperationType:compute.instances.reportHostAsFaulty:gcloud compute operations list --filter="operationType:compute.instances.reportHostAsFaulty"Se vuoi visualizzare i dettagli di un'operazione host specifica con errori, utilizza il comando
gcloud compute operations describe:gcloud compute operations describe OPERATION_NAME \ --zone="ZONE"Sostituisci quanto segue:
OPERATION_NAME: il nome dell'operazione.ZONE: la zona in cui esiste l'operazione.
REST
Per visualizzare lo stato delle operazioni di segnalazione di host difettosi nel tuo progetto, invia una richiesta
GETal metodozoneOperations.list. Nell'URL della richiesta, includi il parametro di queryfilterimpostato suitems.operationType:compute.instances.reportHostAsFaulty.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations&filter=items.operationType:compute.instances.reportHostAsFaultySostituisci quanto segue:
PROJECT_ID: il nome dell'operazione.ZONE: la zona in cui esistono le operazioni.
Passaggi successivi
- Se riscontri problemi durante la segnalazione di un host difettoso, consulta Risolvere i problemi relativi all'API host difettoso.
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.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-12-04 UTC."],[],[]] -
Compute Instance Admin (v1) (