Si vous rencontrez des problèmes sur une VM H4D réservée que vous ne pouvez pas résoudre autrement (par exemple, des erreurs persistantes avec le périphérique RDMA), nous vous recommandons de signaler son hôte comme défectueux. Lorsque vous signalez un hôte comme défectueux, Compute Engine le signale comme tel, puis répare automatiquement la VM en exécutant la maintenance de l'hôte. Pour les VM H4D, Compute Engine tente de migrer la VM vers un autre hôte lorsque la maintenance commence, ce qui peut aider à minimiser le temps d'arrêt de votre charge de travail.
Ce document explique comment signaler et réparer les hôtes défectueux pour les instances de machines virtuelles (VM) qui font partie de clusters basés sur des VM. Pour les clusters Google Kubernetes Engine (GKE), consultez Signaler des hôtes défectueux via GKE.
Limites
Lorsque vous signalez un hôte défectueux, les limites suivantes s'appliquent :
Vous ne pouvez signaler un hôte défectueux que si la VM qui s'exécute sur l'hôte remplit toutes les conditions suivantes :
La VM est en cours d'exécution.
La VM utilise un type de machine H4D.
La VM utilise le modèle de provisionnement lié à la réservation.
Google Cloud s'efforce de répondre à toutes vos demandes de signalement d'hôte défectueux. Toutefois, en raison de contraintes de capacité ou de limites de débit, il est possible qu'une requête ne soit pas toujours traitée.
Avant de commencer
-
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
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la 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.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .
Rôles requis
Pour obtenir les autorisations nécessaires pour signaler un hôte défectueux, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Administrateur d'instances Compute (v1) (
roles/compute.instanceAdmin.v1) sur la VM ou le projet -
Pour afficher l'état d'une opération de signalement d'hôte défectueux à l'aide de Cloud Logging :
Visionneuse de journaux (
roles/logging.viewer) sur le projet
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour signaler un hôte défectueux. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour signaler un hôte défectueux :
-
Pour créer un rapport sur un hôte défectueux :
compute.instances.updatesur la VM -
Pour afficher la liste des opérations à l'aide de Logging :
logging.operations.listsur le projet -
Pour afficher les détails d'une opération à l'aide de Logging :
logging.operations.getsur le projet -
Pour afficher la liste des opérations dans Compute Engine :
compute.zoneOperations.listsur le projet -
Pour afficher les détails d'une opération dans Compute Engine :
compute.zoneOperations.describesur le projet
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Comprendre la procédure de signalement d'un hôte défectueux
Après avoir signalé un hôte défectueux pour une VM H4D, le moment où la VM H4D redémarre varie en fonction du mode opérationnel de la réservation que vous avez utilisée pour créer la VM. Pour vérifier le mode opérationnel d'une réservation, affichez le champ reservationOperationalMode dans la réservation.
Mode géré ( HIGHLY_AVAILABLE_CAPACITY)Types de machines compatibles H4D Limitation du débit de l'API de signalement d'hôte défectueux Les appels à l'API peuvent être soumis à une limite de fréquence. Processus de signalement d'un hôte défectueux Lorsque vous signalez un hôte défectueux pour une VM H4D exécutée en mode géré, les opérations suivantes se produisent :
- Signaler l'hôte défectueux : la VM reste à l'état
RUNNINGpendant toute l'opération de signalement, qui prend généralement 10 à 12 minutes. Pour examiner l'état de l'opération, consultez Examiner les opérations d'hôte défectueux signalées dans ce document. - Commencez à réparer l'hôte : une fois l'opération de signalement de l'hôte défaillant terminée, l'opération de réparation de l'hôte commence dans la minute qui suit.
Lorsque l'opération de réparation de l'hôte démarre, la VM s'arrête et son état change en fonction du paramètre Redémarrage automatique (
automaticRestart) spécifié pour la VM :- Si le redémarrage automatique est activé pour la VM, son état passe à
REPAIRING. La VM redémarre automatiquement lorsque son hôte est opérationnel, sauf si vous l'arrêtez avant. - Si le redémarrage automatique est désactivé pour la VM, son état passe à
TERMINATED. Vous devez redémarrer manuellement la VM une fois que son hôte est opérationnel.
La réparation de l'hôte défectueux peut prendre entre 3 et 14 jours, voire plus parfois.
- Si le redémarrage automatique est activé pour la VM, son état passe à
- Migrer et redémarrer la VM : une fois l'opération de réparation de l'hôte démarrée (généralement 10 à 12 minutes), Compute Engine tente de réserver un hôte supplémentaire pour remplacer l'hôte défectueux que vous avez signalé dans votre capacité réservée. Si Compute Engine trouve un hôte sain (s'il remplace l'hôte défectueux ou trouve un hôte sain correspondant dans votre capacité réservée), il migre la VM vers cet hôte. Le redémarrage de la VM s'effectue ensuite de l'une des manières suivantes :
- Si la VM est à l'état
REPAIRINGet que des ressources sont disponibles avant ou au moment de la réparation, Compute Engine redémarre automatiquement la VM sur un hôte opérationnel. - Sinon, si la VM est à l'état
TERMINATEDou si les ressources ne sont pas disponibles avant ou après la réparation, l'état de la VM reste ou passe àTERMINATED. Vous devez redémarrer manuellement la VM lorsque vous souhaitez qu'elle s'exécute. Toutefois, le redémarrage de la VM peut échouer si des ressources ne sont pas disponibles au moment du redémarrage. Par exemple, cela peut se produire si d'autres VM utilisent déjà l'hôte réparé.
- Si la VM est à l'état
Signaler un hôte défectueux
Pour signaler un hôte défectueux, procédez comme suit :
Examinez l'hôte sur lequel votre VM s'exécute.
Pour obtenir des instructions, consultez Afficher la topologie du cluster H4D.
Facultatif : sauvegardez les données des disques SSD locaux. Lorsque la VM s'arrête, Compute Engine supprime automatiquement les données de tous les disques SSD locaux associés à la VM. Vous ne pouvez pas récupérer les données des disques SSD locaux une fois que Compute Engine les a supprimées.
Pour savoir comment conserver les données des disques SSD locaux, consultez Sauvegarde des données des disques SSD locaux.
Signalez l'hôte défectueux. Pour signaler un hôte défectueux, sélectionnez l'une des options suivantes. L'opération de réparation de l'hôte commence immédiatement, dans la minute qui suit la fin de l'opération de signalement de l'hôte défectueux. Si la VM ne répond plus après le démarrage de l'opération de signalement d'hôte défectueux, nous vous recommandons de la redémarrer après avoir attendu au moins 15 minutes.
gcloud
Pour signaler un hôte défectueux, utilisez la commande
gcloud compute instances report-host-as-faultysuivante :gcloud compute instances report-host-as-faulty VM_NAME \ --async \ --disruption-schedule=IMMEDIATE \ --fault-reasons=behavior=FAULT_REASON,description=DESCRIPTION \ --zone=ZONERemplacez les éléments suivants :
VM_NAME: Nom de la VM.FAULT_REASON: liste des problèmes d'hôte rencontrés par votre VM, séparés par des virgules (par exemple,ISSUE_1,ISSUE_2). Vous pouvez spécifier les valeurs suivantes :PERFORMANCE: vous constatez une dégradation des performances de l'opération réseau du processeur ou de Cloud RDMA, des échecs de l'interface réseau IRDMA ou l'absence du périphérique réseau IRDMA.SILENT_DATA_CORRUPTION: vous constatez une corruption des données dans votre VM, mais celle-ci continue de s'exécuter. La corruption silencieuse des données peut être due à des problèmes tels que des défauts de processeur virtuel, des bugs logiciels ou des problèmes de noyau.BEHAVIOR_UNSPECIFIED: vous n'êtes pas sûr du problème qui affecte votre VM ou le problème n'est pas couvert par les autres options.
DESCRIPTION: description du problème affectant votre VM, comme des informations XID ou des problèmes de performances suspectés.ZONE: zone où se trouve la VM.
REST
Pour signaler un hôte défectueux, envoyez la requête
POSTsuivante à la méthodeinstances.reportHostAsFaulty.Lorsque vous signalez un hôte défectueux, vous pouvez spécifier plusieurs raisons de défaillance à la fois. Par exemple, pour spécifier deux motifs de défaillance, envoyez une requête comme suit :
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" } ] }Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel se trouve la VM.ZONE: zone où se trouve la VM.VM_NAME: Nom de la VM.FAULT_REASON_1etFAULT_REASON_2: chaque problème d'hôte rencontré par votre VM. Vous pouvez spécifier les valeurs suivantes :PERFORMANCE: vous constatez une dégradation des performances du CPU ou de l'opération réseau RDMA, des défaillances de l'appareil RDMA ou l'absence de l'appareil RDMA.SILENT_DATA_CORRUPTION: vous constatez une corruption des données dans votre VM, mais celle-ci continue de s'exécuter. La corruption silencieuse des données peut être due à des problèmes tels que des défauts de processeurs virtuels, des bugs logiciels ou des problèmes de noyau.BEHAVIOR_UNSPECIFIED: vous n'êtes pas sûr du problème rencontré par votre VM.
DESCRIPTION_1etDESCRIPTION_2: description de chaque problème d'hôte que vous avez spécifié, comme des informations XID ou des problèmes de performances suspectés.
Examiner les opérations d'hôte défectueux
Une fois que vous avez signalé un hôte défectueux, Compute Engine lance une série d'opérations pour le marquer comme défectueux et le préparer à la réparation. Plus précisément, lors d'une opération de signalement d'un hôte défectueux, le processus suivant se déroule :
Marquez l'hôte comme défectueux. Compute Engine crée l'opération de signalement d'hôte défectueux. L'opération de signalement d'un hôte défectueux crée ensuite une séquence de sous-opérations. Ces sous-opérations marquent l'hôte sous-jacent comme défectueux.
Préparez l'hôte pour la réparation. Une fois toutes les sous-opérations terminées, l'opération de signalement de l'hôte défaillant démarre. Compute Engine arrête la VM et lance l'opération de réparation de l'hôte défectueux. En fonction du mode opérationnel de la réservation spécifié dans la réservation utilisée par la VM, et si des hôtes sains sont disponibles, Compute Engine maintient la VM à l'arrêt ou tente de la migrer et de la redémarrer automatiquement.
Remplissez le rapport et réparez l'hôte. Compute Engine termine l'opération de signalement d'un hôte défectueux, et l'opération de réparation de l'hôte s'exécute.
Pour suivre l'état des opérations de signalement d'un hôte défectueux (
compute.instances.reportHostAsFaulty) dans votre projet, sélectionnez l'une des options suivantes. Pour en savoir plus sur les autres opérations que vous pouvez utiliser pour suivre les réparations, les migrations et les redémarrages automatiques, consultez Comportements de maintenance et de redémarrage et Surveiller et planifier un événement de maintenance de l'hôte dans la documentation Compute Engine.Console (opérations de VM)
Dans la console Google Cloud , accédez à la page Opérations.
Dans le tableau qui s'affiche, recherchez la VM que vous avez signalée.
Dans la ligne contenant la VM, dans la colonne État, vous pouvez voir l'état de l'opération de signalement de l'hôte défectueux. Une fois l'opération terminée, la valeur est Done.
Facultatif : Pour vérifier si Compute Engine a redémarré la VM, affichez les détails de la VM.
Console (journaux de VM)
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Vérifiez que l'option Afficher la requête est activée.
Dans Query editor (éditeur de requête), saisissez la requête suivante :
resource.type="gce_instance" AND protoPayload.methodName=~"compute\.instances\.reportHostAsFaulty"Cliquez sur Exécuter la requête. Le volet Résultats de la requête affiche les résultats de la requête.
gcloud
Pour afficher l'état des opérations de signalement d'hôte défectueux dans votre projet, utilisez la commande
gcloud compute operations listavec l'option--filterdéfinie suroperationType:compute.instances.reportHostAsFaulty:gcloud compute operations list --filter="operationType:compute.instances.reportHostAsFaulty"Si vous souhaitez afficher les détails d'une opération d'hôte défectueux spécifique, utilisez la commande
gcloud compute operations describe:gcloud compute operations describe OPERATION_NAME \ --zone="ZONE"Remplacez les éléments suivants :
OPERATION_NAME: nom de l'opération.ZONE: zone où se trouve l'opération.
REST
Pour afficher l'état des opérations de signalement d'hôte défectueux dans votre projet, envoyez une requête
GETà la méthodezoneOperations.list. Dans l'URL de la requête, incluez le paramètre de requêtefilterdéfini suritems.operationType:compute.instances.reportHostAsFaulty.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations&filter=items.operationType:compute.instances.reportHostAsFaultyRemplacez les éléments suivants :
PROJECT_ID: nom de l'opération.ZONE: zone où se trouvent les opérations.
Étape suivante
- Si vous rencontrez des problèmes lors du signalement d'un hôte défectueux, consultez Dépanner l'API d'hôte défectueux.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/12/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/12/04 (UTC)."],[],[]] -
Administrateur d'instances Compute (v1) (