Cette page explique comment tester les effets de la stratégie de maintenance de l'hôte de votre instance Compute Engine sur vos applications.
Vous pouvez simuler un événement de maintenance sur vos VM pour tester les éléments suivants :
- Les effets de la migration à chaud sur vos applications.
- La manière dont vos applications et vos jobs par lot gèrent la préemption et l'arrêt lorsque vous utilisez une ou plusieurs VM Spot.
- La manière dont vos applications gèrent le processus d'arrêt et de redémarrage des instances configurées pour s'arrêter et redémarrer lors des événements de maintenance au lieu de migrer à chaud.
- Le comportement des charges de travail exécutées sur des nœuds à locataire unique lors d'un événement de maintenance de l'hôte et les effets de la stratégie de maintenance de l'hôte d'une VM à locataire unique sur les applications exécutées sur les VM.
Si vous essayez de simuler un événement de maintenance de l'hôte sur une instance non compatible avec la migration à chaud, l'instance est arrêtée ou redémarrée, en fonction de la règle de maintenance de l'hôte configurée.
Avant de commencer
- Consultez la limite de requêtes de l'API régionale pour
SimulateMaintenanceEventRequestsPerMinutePerProjectPerRegion
. -
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 Trusted Cloud by S3NS .
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :
Select the tab for how you plan to use the samples on this page:
gcloud
-
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée. Après vous être connecté, initialisez Google Cloud CLI en exécutant la commande suivante :
gcloud init
- Set a default region and zone.
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.
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée. Après vous être connecté, initialisez Google Cloud CLI en exécutant la commande suivante :
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Trusted Cloud .
Limites
- Pour simuler correctement un événement de maintenance sur un groupe de nœuds à locataire unique pour lequel la stratégie de maintenance de l'hôte est définie sur migrer dans le groupe de nœuds, vous devez déclencher l'événement de maintenance de manière séquentielle sur chaque nœud.
- Pour un groupe de nœuds à locataire unique, lorsque vous essayez de simuler un événement de maintenance de l'hôte et que le groupe de nœuds a une stratégie de maintenance de l'hôte définie sur "Migrer dans le groupe de nœuds" :
- Si le nombre de nœuds spécifié est inférieur ou égal au nombre total de nœuds réservés, la simulation des événements de maintenance de l'hôte s'exécute simultanément pour tous les nœuds spécifiés.
- Si le nombre de nœuds spécifié est supérieur au nombre total de nœuds réservés, la simulation échoue.
- Le nombre de simulations d'événements de maintenance que vous pouvez démarrer par minute et par région est limité par la limite de requêtes de l'API pour la métrique
simulate_maintenance_event_requests_per_region
.
Simuler des événements de maintenance de l'hôte pour tester la migration à chaud
Vous pouvez simuler un événement de maintenance pour une instance de calcul à l'aide de Google Cloud CLI ou d'une requête API. Cet événement simulé inclut les différentes activités de maintenance qui se produisent lors d'un événement de maintenance régulier. Cela vous permet d'observer le processus de bout en bout et de tester toute automatisation que vous pourriez avoir implémentée.
Lors de la simulation d'un événement de maintenance de l'hôte pour une instance qui utilise la migration à chaud, la clé de métadonnées
maintenance-event
de l'instance subit les modifications suivantes :- Au début de la simulation, la valeur de la clé de métadonnées
maintenance-event
passe deNONE
àMIGRATE_ON_HOST_MAINTENANCE
. - Pendant toute la durée de l'événement de simulation, la valeur reste à
MIGRATE_ON_HOST_MAINTENANCE
. - Une fois la simulation terminée, la valeur revient à
NONE
.
Pour interroger la clé de l'événement de maintenance, consultez Interroger la clé de métadonnées d'un événement de maintenance.
gcloud
Utilisez la commande
compute instances simulate-maintenance-event
pour simuler un événement de maintenance pour une instance et tester les paramètres de la règle de maintenance de l'hôte configurée :gcloud compute instances simulate-maintenance-event INSTANCE_NAME \ --zone=ZONE --with-extended-notifications=True
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instance de calcul sur laquelle vous souhaitez simuler l'événement de maintenance.Vous pouvez spécifier plusieurs noms d'instance séparés par des espaces pour simuler des événements de maintenance sur plusieurs instances dans la même zone. Par exemple,
instance-1 instance-2 instance-3
.ZONE
: zone où se trouve l'instance
REST
Envoyez une requête
POST
à la méthodecompute.instances.simulateMaintenanceEvent
:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/simulateMaintenanceEvent
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet pour cette requête.INSTANCE_NAME
: nom de l'instance pour laquelle vous souhaitez simuler l'événement de maintenance.ZONE
: zone où se trouve l'instance
Simuler la maintenance de l'hôte pour les instances de calcul qui s'arrêtent
Vous pouvez simuler un événement de maintenance pour une instance de calcul à l'aide de Google Cloud CLI ou d'une requête API. Cet événement simulé inclut les différentes activités de maintenance qui se produisent lors d'un événement de maintenance régulier. Cela vous permet d'observer le processus de bout en bout et de tester toute automatisation que vous pourriez avoir implémentée.
De plus, en utilisant le paramètre
--with-extended-notifications
avec un type de machine compatible, vous pouvez tester le démarrage manuel de la maintenance de l'hôte pendant l'événement simulé.gcloud
Exécutez la commande
compute instances simulate-maintenance-event
pour simuler un événement de maintenance pour une instance et tester les paramètres de la règle de maintenance de l'hôte configurée. Vous pouvez également inclure l'option--with-extended-notifications
.gcloud compute instances simulate-maintenance-event INSTANCE_NAME \ --zone=ZONE --with-extended-notifications=True
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instance de calcul sur laquelle vous souhaitez simuler l'événement de maintenance.Vous pouvez spécifier plusieurs noms d'instance séparés par des espaces pour simuler des événements de maintenance sur plusieurs instances dans la même zone. Par exemple,
instance-1 instance-2 instance-3
.ZONE
: zone où se trouve l'instance
Facultatif : Pour démarrer manuellement l'événement de maintenance simulé, utilisez la commande
compute instances perform-maintenance
.gcloud compute instances perform-maintenance INSTANCE_NAME \ --zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instance de calcul sur laquelle vous souhaitez simuler l'événement de maintenance.Vous pouvez spécifier plusieurs noms d'instance séparés par des espaces pour simuler des événements de maintenance sur plusieurs instances dans la même zone. Par exemple,
instance-1 instance-2 instance-3
.ZONE
: zone où se trouvent les instances.
REST
Envoyez une requête
POST
à la méthodecompute.instances.simulateMaintenanceEvent
. Vous pouvez également inclure le paramètre de requêtewithExtendedNotifications
.POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/simulateMaintenanceEvent?withExtendedNotifications=True
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet pour cette requête.INSTANCE_NAME
: nom de l'instance pour laquelle vous souhaitez simuler l'événement de maintenance.ZONE
: zone où se trouve l'instance
Facultatif : Pour démarrer manuellement l'événement de maintenance simulé, créez une requête
POST
pour la méthodecompute.instances.performMaintenance
.POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/performMaintenance
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de l'instance de calcul sur laquelle vous souhaitez démarrer l'événement de maintenance.Vous pouvez spécifier plusieurs noms d'instance séparés par des espaces pour effectuer des événements de maintenance sur plusieurs instances dans la même zone. Par exemple,
instance-1 instance-2 instance-3
.ZONE
: zone où se trouvent les instances.
Simuler des événements de maintenance de l'hôte sur des nœuds à locataire unique
Vous pouvez simuler un événement de maintenance de l'hôte sur des nœuds à locataire unique à l'aide de Google Cloud CLI ou d'une requête API. Pendant la simulation de l'événement de maintenance de l'hôte sur une VM à locataire unique, la valeur de la clé de métadonnées
maintenance-event
ne change pas et garde la valeurNONE
tout au long de la simulation.gcloud
Exécutez la commande
sole-tenancy node-groups simulate-maintenance-event
pour forcer les nœuds à locataire unique à activer la règle de maintenance configurée :gcloud compute sole-tenancy node-groups simulate-maintenance-event NODE_GROUP \ --nodes=NODE_NAMES \ --zone=ZONE \ --async
Remplacez les éléments suivants :
NODE_GROUP
: nom du groupe de nœuds dans lequel vous souhaitez simuler l'événement de maintenance.NODE_NAMES
: noms des nœuds sur lesquels vous souhaitez simuler l'événement de maintenance. Lorsque vous spécifiez plusieurs noms de nœuds, utilisez des valeurs séparées par une virgule, par exemplenode-1,node-2,node-3
.ZONE
: zone où se trouvent les nœuds
REST
Envoyez une requête
POST
à la méthodecompute.nodeGroups.simulateMaintenanceEvent
:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/NODE_GROUP/simulateMaintenanceEvent { "nodes": [ "NODE_NAMES" ] }
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet pour cette requête.ZONE
: zone où se trouvent les nœudsNODE_GROUP
: nom du groupe de nœuds dans lequel vous souhaitez simuler l'événement de maintenance.NODE_NAMES
: noms des nœuds dans lesquels vous souhaitez simuler l'événement de maintenance. Placez le nom du nœud entre guillemets doubles, par exemple"node-1"
. Lorsque vous spécifiez plusieurs noms de nœuds, utilisez des valeurs séparées par une virgule, par exemple"node-1","node-2","node-3"
.
Étapes suivantes
- Apprenez-en plus sur les événements hôtes.
- Apprenez-en plus sur la maintenance de l'hôte sur des nœuds à locataire unique.
- Découvrez comment définir les options de la stratégie de maintenance de l'hôte d'une VM.
- Découvrez comment afficher les opérations de la VM.
- En savoir plus sur la location unique et mutualisée
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/08/08 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/08 (UTC)."],[[["This page details how to simulate host maintenance events on Compute Engine instances to test the impact of different host maintenance policies on applications, including live migration, preemption, and shutdown behaviors."],["You can simulate maintenance events for both regular compute instances and sole-tenant nodes, observing how applications handle migration, termination, or restart processes during such events."],["The simulation process for standard compute instances will alter the `maintenance-event` metadata key, switching its value during the event, whereas with sole-tenant VMs, the value will remain unchanged at `NONE`."],["Simulating maintenance events can be done through the Google Cloud CLI or REST API, offering options to test various scenarios such as live migration, termination, or manual intervention in maintenance procedures."],["For sole-tenant node groups there are specific limitations to consider, such as the number of nodes that can have simultaneous maintenance events and the fact that the maintenance event needs to be sequentially triggered."]]],[]] -