Ce document explique comment utiliser les fonctionnalités de maintenance de l'hôte disponibles avec les VM H4D. Il explique comment surveiller, planifier et effectuer la maintenance programmée sur les instances de machines virtuelles (VM). Pour gérer la maintenance de vos blocs de capacité réservés, que des VM y soient exécutées ou non, consultez plutôt Gérer les événements hôtes pour plusieurs réservations.
En gérant de manière proactive les événements de maintenance de l'hôte à venir sur vos VM, vous pouvez minimiser les interruptions et maintenir des performances optimales.
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.
Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
gcloud initSi vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
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 gérer les événements de maintenance de l'hôte sur les VM, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Administrateur Compute (
roles/compute.admin) sur le projet -
Pour accéder en lecture seule aux journaux d'audit des événements système :
Lecteur 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 gérer les événements de maintenance de l'hôte sur les VM. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour gérer les événements de maintenance de l'hôte sur les VM :
-
Pour afficher les détails d'une VM :
compute.instances.getsur le projet
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Présentation
Pour optimiser la maintenance de vos VM, procédez comme suit :
En savoir plus sur la maintenance de l'hôte Découvrez la fréquence et le comportement de maintenance de vos VM en fonction de leur série de machines. Ces informations vous aident à minimiser les perturbations de vos charges de travail.
Configurez des alertes de notification. Créez des alertes basées sur les journaux pour recevoir des notifications lorsque la maintenance de vos VM est planifiée, démarrée ou terminée. Cette approche vous aide à planifier vos activités de manière proactive et à éviter les temps d'arrêt inattendus.
Gérer la maintenance sur les VM. Vérifiez si une opération de maintenance est prévue pour vos VM. Si nécessaire, vous pouvez démarrer manuellement la maintenance sur vos VM. Ce processus vous aide à accroître la résilience de vos charges de travail pour héberger des événements, éviter les temps d'arrêt et maximiser la disponibilité de vos applications.
Comprendre la maintenance de l'hôte
Au cours du cycle de vie d'une instance Compute Engine, la machine hôte sur laquelle votre instance s'exécute subit plusieurs événements hôtes. Un événement hôte peut correspondre à une opération de maintenance courante de l'infrastructure Compute Engine ou, dans de rares cas, à une erreur d'hôte. Compute Engine applique également en arrière-plan des mises à niveau légères non disruptives pour l'hyperviseur et le réseau.
La série de machines H4D inclut les fonctionnalités suivantes liées à la maintenance de l'hôte :
| Type de machine | Fréquence typique des événements de maintenance planifiée | Comportement en cas de maintenance | Notification préalable | Maintenance à la demande | Simuler une maintenance |
|---|---|---|---|---|---|
h4d-standard-192 |
30 jours minimum | Arrêter | 7 jours | Oui | Non |
h4d-highmem-192 |
30 jours minimum | Arrêter | 7 jours | Oui | Non |
h4d-highmem-192-lssd |
30 jours minimum | L’événement se conclut par la persistance des données SSD locales | 7 jours | Oui | Non |
Les fréquences de maintenance indiquées dans le tableau précédent sont approximatives et ne sont pas garanties. Compute Engine peut occasionnellement effectuer des opérations de maintenance plus fréquentes.
Configurer des alertes de notification pour les VM
Vous pouvez recevoir des notifications concernant les événements de maintenance planifiés, en cours ou terminés pour vos VM en créant des règles d'alerte basées sur les journaux.
Pour créer une alerte pour les événements de maintenance de vos VM, procédez comme suit. Répétez cette procédure pour chaque alerte que vous souhaitez créer.
-
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Accéder à l'explorateur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Cliquez sur le bouton Afficher la requête pour l'activer.
Dans le volet Requête, créez l'une des requêtes suivantes. Ces requêtes filtrent les entrées de journaux pour identifier des événements de maintenance spécifiques. Si vous souhaitez utiliser plusieurs requêtes, répétez cette procédure pour créer une alerte unique pour chaque requête.
Pour recevoir des alertes lorsqu'une maintenance est planifiée pour une VM :
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Pour recevoir des alertes lorsque l'intervalle de maintenance d'une VM a commencé :
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "ongoing"Pour recevoir des alertes lorsque la maintenance d'une VM a commencé :
protoPayload.methodName="compute.instance.terminateOnHostMaintenance" severity>=DEFAULTPour recevoir des alertes lorsque la maintenance d'une VM est terminée :
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "completed"
Pour valider la requête, cliquez sur Exécuter la requête. Si la requête est valide, le volet Résultats de la requête affiche les entrées de journal correspondant à la requête.
Dans la barre d'outils des résultats de la requête, cliquez sur la liste Actions, puis sélectionnez Créer une alerte de journal. Le volet Créer une règle d'alerte basée sur les journaux s'affiche.
Dans la section Détails de l'alerte, procédez comme suit :
Dans le champ Nom de la règle d'alerte, saisissez un nom pour la règle.
Dans la liste Niveau de gravité de la règle, sélectionnez Avertissement (ou un niveau de gravité supérieur).
Cliquez sur Suivant.
Dans la section Sélectionner les journaux à inclure dans l'alerte, cliquez sur Suivant.
Dans la section Définir la fréquence des notifications et le délai pour la fermeture automatique, spécifiez les éléments suivants :
Dans la liste Délai entre les notifications, sélectionnez la fréquence à laquelle vous souhaitez recevoir des notifications.
Dans la liste Durée de fermeture automatique des incidents, sélectionnez la durée au bout de laquelle Cloud Logging cesse d'envoyer des notifications et ferme automatiquement l'incident.
Cliquez sur Suivant.
Dans la section Qui doit être informé ?, spécifiez un canal de notification pour la journalisation afin d'envoyer des notifications.
Cliquez sur Enregistrer.
Pour afficher des exemples de notifications d'événements de maintenance dans l'explorateur de journaux, consultez Exemples de notifications de maintenance dans la documentation Compute Engine.
Gérer la maintenance sur les VM
Vous pouvez afficher et contrôler la maintenance de vos VM en effectuant une ou plusieurs des opérations suivantes :
Pour vérifier l'état et l'heure prévue des opérations de maintenance à venir pour vos VM, consultez l'état de maintenance des VM.
Pour démarrer immédiatement la maintenance de vos VM, plutôt que d'attendre l'heure de maintenance programmée, démarrez manuellement la maintenance des VM.
Afficher l'état de maintenance des VM
Vous pouvez consulter l'état et l'heure prévue des opérations de maintenance à venir pour vos VM en vérifiant la valeur du champ upcomingMaintenance dans les métadonnées de l'instance. Si une VM ne contient pas le champ upcomingMaintenance, aucun événement de maintenance de l'hôte n'est planifié pour la VM. Pour en savoir plus sur les champs de upcomingMaintenance, consultez Définitions de l'état de maintenance dans la documentation Compute Engine.
De plus, si une opération de maintenance est prévue pour une VM, le champ upcomingGroupMaintenance contient le champ maintenanceReasons. Ce champ décrit la raison pour laquelle la maintenance a été planifiée pour votre VM, comme indiqué dans le tableau suivant :
| Type de maintenance | Motif de la maintenance | État des VM |
|---|---|---|
| Maintenance planifiée pour la maintenance régulière |
|
S'applique aux VM en cours d'exécution, arrêtées ou suspendues. |
| Maintenance d'urgence non planifiée |
|
Ne s'applique qu'aux VM en cours d'exécution. |
Pour afficher le champ maintenanceReasons dans une VM, vous devez utiliser la gcloud CLI ou l'API REST. Pour afficher l'état de maintenance de plusieurs VM simultanément, vous devez utiliser la console Google Cloud ou l'API REST. Sinon, sélectionnez l'une des options suivantes :
Console
Dans la console Google Cloud , accédez à la page Instances de VM.
Dans la colonne État de maintenance, Compute Engine affiche l'état de maintenance de vos VM. Si cette colonne n'apparaît pas dans le tableau Instances de VM, cliquez sur view_column Options d'affichage des colonnes, cochez la case État de maintenance, puis cliquez sur OK.
gcloud
Pour afficher l'état de maintenance d'une VM, utilisez la commande gcloud compute instances describe avec l'option --flatten=resourceStatus.upcomingMaintenance :
gcloud compute instances describe VM_NAME \
--flatten=resourceStatus.upcomingMaintenance \
--zone=ZONE
Remplacez les éléments suivants :
VM_NAME: nom de la VM.ZONE: zone où se trouve la VM.
Le résultat ressemble à l'un des exemples suivants :
Si un événement de maintenance de l'hôte est prévu pour votre VM, la sortie est semblable à ce qui suit :
--- canReschedule: true latestWindowStartTime: '2025-11-01T19:00:00Z' maintenanceReasons: - 'PLANNED_UPDATE' - 'PLANNED_NETWORK_UPDATE' maintenanceStatus: 'PENDING' type: 'SCHEDULED' windowEndTime: '2025-11-01T22:00:00Z' windowStartTime: '2025-11-01T19:00:00Z'Si aucun événement de maintenance de l'hôte n'est prévu pour votre VM, la sortie ressemble à ce qui suit :
--- null
REST
Pour afficher l'état de maintenance de vos VM, envoyez l'une des requêtes GET suivantes. Lorsque vous envoyez une requête, vous devez inclure le paramètre de requête fields pour n'afficher que le nom, le type de machine et la maintenance à venir d'une VM. Vous devez également inclure le paramètre de requête filter pour filtrer les VM uniquement par type de machine spécifique.
Pour afficher les VM dans toutes les zones : méthode
instances.aggregatedList.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPEPour afficher les VM d'une zone spécifique : méthode
instances.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPE
Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel vous avez créé des VM.ZONE: zone où se trouvent les VM.MACHINE_TYPE: type de machine selon lequel vous souhaitez filtrer les VM.
Si un événement de maintenance de l'hôte est planifié pour une VM, celle-ci contient le champ upcomingMaintenance :
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west4-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"upcomingMaintenance": {
"canReschedule": true,
"latestWindowStartTime": "2024-11-01T19:00:00Z",
"maintenanceStatus": "PENDING",
"maintenanceReasons": [
"PLANNED_UPDATE",
"PLANNED_NETWORK_UPDATE"
],
"type": "SCHEDULED",
"windowEndTime": "2024-11-01T22:00:00Z",
"windowStartTime": "2024-11-01T19:00:00Z"
}
}
},
...
]
}
Vous pouvez éventuellement affiner davantage une liste de VM en définissant le paramètre de requête filter sur une autre expression de filtre.
Serveur de métadonnées
Pour afficher l'état de maintenance d'une VM, procédez comme suit :
Si ce n'est pas déjà fait, connectez-vous à votre VM Linux ou VM Windows.
Interrogez le serveur de métadonnées comme suit :
curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"Si un événement de maintenance de l'hôte est prévu pour votre VM, la sortie est semblable à ce qui suit :
"Upcoming maintenance": { "can_reschedule": "true", "latest_window_start_time": "2024-12-01T19:00:01Z", "maintenance_reasons": [ "PLANNED_UPDATE", "PLANNED_NETWORK_UPDATE" ], "maintenance_status": "PENDING", "type": "SCHEDULED", "window_end_time": "2024-12-01T21:00:01Z", "window_start_time": "2024-12-01T19:00:01Z" }Si aucun événement de maintenance de l'hôte n'est planifié, le résultat est semblable à ce qui suit :
{ }
Démarrer manuellement la maintenance sur les VM
Vous pouvez démarrer manuellement la maintenance de vos VM au lieu d'attendre l'heure programmée.
Selon l'état de maintenance d'une VM, voici ce qui se passe :
| État de maintenance | Description | Ce que vous voyez |
|---|---|---|
| Planifié | Compute Engine a planifié une maintenance pour la VM. Vous pouvez démarrer manuellement la maintenance avant l'heure prévue. |
|
| En cours | Une opération de maintenance est en cours. Vous ne pouvez pas la reprogrammer. |
|
| Terminé | La maintenance est terminée. Compute Engine a supprimé toutes les notifications de maintenance de la VM. |
|
Vous pouvez démarrer manuellement la maintenance pour plusieurs VM simultanément ou pour des VM individuelles. Pour plusieurs VM, utilisez la console Google Cloud ou, pour les VM situées dans la même zone, la gcloud CLI. Pour les VM individuelles, sélectionnez l'une des options suivantes :
Console
Dans la console Google Cloud , accédez à la page Instances de VM.
Sélectionnez les lignes des VM pour lesquelles vous souhaitez démarrer la maintenance.
Cliquez sur Exécuter la maintenance.
Pour confirmer, cliquez sur Exécuter la maintenance.
gcloud
Pour démarrer manuellement la maintenance d'une ou de plusieurs VM dans la même zone, utilisez la commande gcloud compute instances perform-maintenance :
gcloud compute instances perform-maintenance VM_NAMES \
--zone=ZONE
Remplacez les éléments suivants :
VM_NAMES: liste des noms de VM séparés par des espaces (par exemple,vm-01 vm-02 vm-03).ZONE: zone où se trouvent les VM.
REST
Pour démarrer manuellement la maintenance d'une VM, envoyez une requête POST à la méthode instances.performMaintenance :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/performMaintenance
Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel vous avez créé la VM.ZONE: zone où se trouve la VM.VM_NAME: nom de la VM.
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).