La maintenance de toutes les instances de machine virtuelle (VM) est déterminée par la stratégie de maintenance de l'hôte que vous sélectionnez lors de la création de vos VM. Certaines VM offrent la possibilité supplémentaire d'afficher le calendrier de maintenance de la VM à l'avance.
Cette page explique comment surveiller et planifier un événement de maintenance de l'hôte sur les VM Compute Engine. Pour afficher le calendrier de maintenance d'une VM, celle-ci doit exécuter un type de machine à partir de l'une des familles de machines suivantes :
- VM C3 à usage général
- VM C3D à usage général
- VM Z3 optimisées pour le stockage
- VM à mémoire optimisée M1, M2, M3
Avant de commencer
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Pour obtenir des informations sur une VM :
compute.instances.get
-
Pour créer une VM, procédez comme suit :
compute.instances.create
- Moins d'événements de maintenance : en général, les VM avec des intervalles de maintenance récurrents devraient rencontrer moins d'événements de maintenance.
- Notification de maintenance plus longue : recevez des notifications bien à l'avance pour les événements de maintenance planifiés afin de pouvoir vous organiser.
- Surveillance et planification : utilisez Cloud Logging pour suivre votre calendrier de maintenance. Restez informé grâce aux incidents et aux alertes.
Contrôle de maintenance à la demande : démarrez la maintenance pendant la période de notification pour mettre à jour vos VM selon votre planning.
VM_NAME
: nom de la VM.ZONE
: zone où se trouve la VM.PROJECT_NAME
: nom du projet.ZONE
: zone où se trouve la VM.VM_NAME
: nom de la VM.- Pour les VM configurées pour utiliser la migration à chaud pour la maintenance, l'événement s'affiche avec le nom de la méthode :
compute.instances.migrateOnHostMaintenance
. - Pour les VM configurées pour utiliser l'option "Interrompre" et "Redémarrer automatiquement" à des fins de maintenance, l'événement s'affiche avec le nom de la méthode :
compute.instances.terminateOnHostMaintenance
. - windowStartTime : début de la période au cours de laquelle la maintenance est effectuée
- windowEndTime : fin de la période au cours de laquelle la maintenance est effectuée.
- latestWindowStartTime : heure la plus ancienne vers laquelle la période peut être déplacée
- maintenanceType : type de maintenance à effectuer.
- NONE : aucune maintenance n'est programmée pour cette VM.
- SCHEDULED : la maintenance sera notifiée 7 jours avant.
- UNSCHEDULED : la maintenance inclut des mises à jour critiques qui ne sont pas annoncées aussi longtemps à l'avance.
- canReschedule : indique si la maintenance peut être déclenchée pendant la période de notification pour cette VM.
- TRUE : la maintenance déclenchée par le client peut être effectuée pendant la période de notification.
- FALSE : la maintenance déclenchée par le client ne peut pas être effectuée sur cette VM. Cela se produit souvent pendant la période de maintenance de la VM.
- maintenanceStatus : état de l'opération de maintenance actuelle
- ONGOING : l'opération de maintenance est en cours
- PENDING : l'opération de maintenance est planifiée, mais n'a pas encore commencé.
- Si les valeurs sont
canReschedule=Yes
etmaintenanceStatus=Pending
, vous pouvez déclencher la maintenance sur la VM. - Si les valeurs sont
canReschedule=No
etmaintenanceStatus=Ongoing
, la maintenance est déjà en cours. - Si
canReschedule=No
etmaintenanceStatus=Pending
, votre VM n'est pas compatible avec les opérations de maintenance déclenchées manuellement. - Découvrez comment définir une stratégie de maintenance d'hôte de VM.
- Découvrez comment recevoir des notifications de migration à chaud.
- Découvrez comment déclencher manuellement un événement de maintenance de l'hôte.
- Découvrez comment créer une alerte basée sur les journaux dans Cloud Logging.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
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 créer des VM et gérer leur maintenance, demandez à votre administrateur de vous accorder le rôle IAM Administrateur d'instances Compute (v1) (
roles/compute.instanceAdmin.v1
) sur le projet. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.Ce rôle prédéfini contient les autorisations requises pour créer des VM et gérer leur maintenance. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer des VM et gérer leur maintenance :
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Surveiller les notifications de maintenance
Google envoie des notifications pour les opérations de maintenance à venir sur les VM via plusieurs méthodes. Vous pouvez trouver vos notifications en interrogeant vos VM, le serveur de métadonnées ou Cloud Logging. Lorsque l'intervalle de maintenance programmé s'ouvre, Google Cloud effectue automatiquement la maintenance de votre VM. En surveillant les intervalles de maintenance programmés de votre VM, vous pouvez préparer vos charges de travail de manière proactive pour gérer les opérations de maintenance à venir avec un minimum d'interruption.
Les VM avec des notifications d'événements de maintenance présentent les caractéristiques suivantes :
Vérifier les VM pour une notification d'événement de maintenance
Utilisez Google Cloud CLI, la méthode REST ou le serveur de métadonnées pour voir s'il y a un événement de maintenance de VM à venir.
gcloud
Pour afficher l'intervalle de maintenance à venir pour une VM, utilisez la commande
gcloud compute instances describe
. Vous devez inclure le--zone=[ZONE_NAME]
.gcloud compute instances describe VM_NAME \ --zone=ZONE
Remplacez les éléments suivants :
La réponse est semblable à ce qui suit :
upcomingMaintenance:{ "canReschedule":True "latestWindowStartTime": "2023-12-01T19:00:01Z" "maintenanceStatus":"PENDING" "type":"SCHEDULED" "windowEndTime": "2023-12-01T22:00:00Z" "windowStartTime": "2023-12-01T19:00:00Z" }
Dans cette réponse,
canReschedule
est défini surTrue
, etmaintenanceStatus
surPENDING
. La maintenance est planifiée à la date et à l'heure affichées. Ces paramètres indiquent que vous pouvez déclencher manuellement cet événement à l'avance.REST
Pour savoir si une VM doit subir une opération de maintenance, exécutez la commande
instances.get
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME
Remplacez les éléments suivants :
La réponse est semblable à ce qui suit :
upcomingMaintenance:{ "canReschedule":True "latestWindowStartTime": "2023-12-01T19:00:01Z" "maintenanceStatus":"PENDING" "type":"SCHEDULED" "windowEndTime": "2023-12-01T22:00:00Z" "windowStartTime": "2023-12-01T19:00:00Z" }
Dans cette réponse,
canReschedule
est défini surTRUE
, etmaintenanceStatus
surPENDING
. La maintenance est planifiée à la date et à l'heure affichées.Serveur de métadonnées
À partir du système d'exploitation invité, interrogez le serveur de métadonnées pour afficher le prochain événement de maintenance.
$ curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"
Rechercher une notification d'événement de maintenance dans Cloud Logging
Google envoie une notification à Cloud Logging avant la maintenance de la VM. Cloud Logging génère un événement système dans l'explorateur de journaux. La maintenance planifiée de la VM apparaît dans Cloud Logging sous la forme :
compute.instances.upcomingMaintenance
.Selon la configuration de votre VM, Cloud Logging affiche l'événement de la manière suivante :
Si votre VM est configurée pour utiliser la migration à chaud, une fois la maintenance terminée,
compute.instances.upcomingMaintenance
s'affiche, indiquant que la notification a été supprimée.Vous pouvez configurer des alertes pour recevoir des notifications de maintenance. Pour en savoir plus, consultez les pages Configurer des alertes basées sur les journaux et Créer et gérer des canaux de notification.
Définitions des états de maintenance
Les définitions d'état suivantes permettent de comprendre les réponses fournies à une requête de maintenance de VM. Elles fournissent des informations sur la maintenance de VM. Google Cloud CLI, REST et le serveur de métadonnées utilisent ces mêmes réponses :
Comportements des états de maintenance
Lorsque vous gérez le calendrier de maintenance, vérifiez l'état de
canReschedule=
etmaintenanceStatus=
. Ces combinaisons de réponses décrivent le comportement attendu des fonctionnalités et affichent l'une des combinaisons d'état suivantes :Étapes suivantes
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 2024/11/22 (UTC).
-