Afficher l'arrêt élégant dans une instance Compute Engine


Ce document explique comment afficher les détails d'un arrêt correct dans une instance Compute Engine. Pour en savoir plus sur l'arrêt correct, consultez la section Présentation de l'arrêt correct.

L'affichage des détails d'un arrêt correct vous permet de surveiller le processus d'arrêt correct ou d'examiner ses paramètres.

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 Google Cloud services et aux API. 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:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. 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 l'autorisation dont vous avez besoin pour afficher l'arrêt correct d'une instance Compute, demandez à votre administrateur de vous accorder le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient l'autorisation compute.instances.get on the project, qui est nécessaire pour afficher l'arrêt correct d'une instance de calcul.

Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.

Afficher les détails d'un arrêt progressif

Pour afficher les détails d'un arrêt correct dans une instance de calcul, sélectionnez l'une des options suivantes:

Console

  1. Dans la console Google Cloud, accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Dans la colonne Nom, cliquez sur le nom de votre instance.

    La page des détails de l'instance s'ouvre, et l'onglet Détails est sélectionné.

  3. Pour vérifier les paramètres d'arrêt correct, dans la section Règles de disponibilité, vérifiez la valeur du champ Durée maximale d'arrêt correct. Ce champ indique la période d'arrêt correct. Si un trait d'union (-) s'affiche, l'arrêt élégant est désactivé.

  4. Pour surveiller un arrêt progressif en cours, dans la section Informations de base, vérifiez les champs suivants:

    • État: ce champ indique l'état de votre instance. Lors d'un arrêt correct, l'état Arrêt en attente s'affiche, ainsi qu'un compte à rebours indiquant le temps restant avant la fin de la période d'arrêt correct.

    • État cible: ce champ indique si Compute Engine arrête (Arrêtée) ou supprime (Supprimée) l'instance.

gcloud

Pour afficher les détails d'une instance et son arrêt correct, utilisez la commande gcloud beta compute instances describe:

gcloud beta compute instances describe INSTANCE_NAME \
    --zone=ZONE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.

  • ZONE : zone où se trouve l'instance

Pour vérifier vos paramètres d'arrêt élégant ou surveiller un arrêt en cours, procédez comme suit:

  • Pour vérifier les paramètres d'arrêt correct dans l'instance, affichez le champ scheduling dans la sortie:

    ...
    scheduling:
      ...
      gracefulShutdown:
        enabled: true
        maxDuration:
          seconds: 'MAX_DURATION'
      ...
    ...
    

    Ce résultat inclut la valeur MAX_DURATION, qui spécifie la durée de la période d'arrêt correct en secondes. Si vous n'avez pas spécifié de période d'arrêt personnalisée lorsque vous avez activé l'arrêt correct dans l'instance, Compute Engine omet le champ maxDuration et définit la période d'arrêt correct sur 10 minutes.

  • Pour surveiller l'état d'un arrêt progressif en cours, affichez le champ shutdownDetails dans la sortie:

    ...
    resourceStatus:
      ...
      shutdownDetails:
        maxDuration:
          seconds: 'MAX_DURATION'
        requestTimestamp: 'REQUEST_TIMESTAMP'
        stopState: STOP_STATE
        targetState: TARGET_STATE
    ...
    

    Ce résultat inclut les valeurs suivantes :

    • MAX_DURATION: durée de la période d'arrêt correct en secondes. Une fois que Compute Engine a défini STOP_STATE sur STOPPING, il supprime le champ maxDuration.

    • REQUEST_TIMESTAMP: code temporel de début de l'STOP_STATE.

    • STOP_STATE: phase d'arrêt de l'instance. Les valeurs possibles sont les suivantes :

      • PENDING_STOP: Compute Engine a commencé l'arrêt correct. L'instance reste dans cet état jusqu'à ce que vous arrêtiez manuellement l'arrêt progressif ou que la période d'arrêt progressif expire.

      • STOPPING: l'arrêt correct est terminé, et Compute Engine poursuit l'opération d'arrêt ou de suppression.

    • TARGET_STATE: indique si Compute Engine arrête (STOPPED) ou supprime (DELETED) l'instance.

    Une fois que Compute Engine a arrêté l'instance, il supprime le champ shutdownDetails.

REST

Pour afficher les détails d'une instance et son arrêt correct, envoyez une requête GET à la méthode instances.get bêta:

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet dans lequel se trouve l'instance.

  • ZONE : zone où se trouve l'instance

  • INSTANCE_NAME : nom de l'instance.

Pour vérifier vos paramètres de fermeture correcte ou surveiller une fermeture en cours, procédez comme suit:

  • Pour vérifier les paramètres d'arrêt correct dans l'instance, affichez le champ scheduling dans la sortie:

    {
      ...
      "scheduling": {
        ...
        "gracefulShutdown": {
          "enabled": true,
          "maxDuration": {
            "seconds": "MAX_DURATION"
          }
        }
      },
      ...
    }
    

    Ce résultat inclut la valeur MAX_DURATION, qui spécifie la durée de la période d'arrêt correct en secondes. Si vous n'avez pas spécifié de période d'arrêt personnalisée lorsque vous avez activé l'arrêt correct dans l'instance, Compute Engine omet le champ maxDuration et définit la période d'arrêt correct sur 10 minutes.

  • Pour surveiller l'état d'un arrêt progressif en cours, affichez le champ shutdownDetails dans la sortie:

    {
      ...
      "resourceStatus": {
        ...
        "shutdownDetails": {
          "maxDuration": {
            "seconds": "MAX_DURATION"
          },
          "requestTimestamp": "REQUEST_TIMESTAMP",
          "stopState": "STOP_STATE",
          "targetState": "TARGET_STATE"
        }
      },
      ...
    }
    

    Ce résultat inclut les valeurs suivantes :

    • MAX_DURATION: durée de la période d'arrêt correct en secondes. Une fois que Compute Engine a défini STOP_STATE sur STOPPING, il supprime le champ maxDuration.

    • REQUEST_TIMESTAMP: code temporel de début de l'STOP_STATE.

    • STOP_STATE: phase d'arrêt de l'instance. Les valeurs possibles sont les suivantes :

      • PENDING_STOP: Compute Engine a commencé l'arrêt correct. L'instance reste dans cet état jusqu'à ce que vous arrêtiez manuellement l'arrêt progressif ou que la période d'arrêt progressif expire.

      • STOPPING: l'arrêt correct est terminé, et Compute Engine poursuit l'opération d'arrêt ou de suppression.

    • TARGET_STATE: indique si Compute Engine arrête (STOPPED) ou supprime (DELETED) l'instance.

    Une fois que Compute Engine a arrêté l'instance, il supprime le champ shutdownDetails.

Serveur de métadonnées

  1. Se connecter à l'instance

  2. Pour afficher les détails d'un arrêt correct en cours dans l'instance, interrogez le serveur de métadonnées:

    curl "http://metadata.google.internal/computeMetadata/v1/instance/shutdown-details/?recursive=true?alt=json" \-H "Metadata-Flavor: Google"
    

    Si un arrêt correct est en cours, le résultat est semblable à ceci:

    {
      "maxDuration": "MAX_DURATION",
      "requestTimestamp": "REQUEST_TIMESTAMP",
      "stopState": "STOP_STATE",
      "targetState": "TARGET_STATE"
    }
    

    Le résultat inclut les valeurs suivantes :

    • MAX_DURATION: durée de la période d'arrêt correct en secondes. Une fois que Compute Engine a défini STOP_STATE sur STOPPING, il supprime le champ maxDuration.

    • REQUEST_TIMESTAMP: code temporel de début de l'STOP_STATE.

    • STOP_STATE: phase d'arrêt de l'instance. Les valeurs possibles sont les suivantes :

      • PENDING_STOP: Compute Engine a commencé l'arrêt correct. L'instance reste dans cet état jusqu'à ce que vous arrêtiez manuellement l'arrêt progressif ou que la période d'arrêt progressif expire.

      • STOPPING: l'arrêt correct est terminé, et Compute Engine poursuit l'opération d'arrêt ou de suppression.

    • TARGET_STATE: indique si Compute Engine arrête (STOPPED) ou supprime (DELETED) l'instance.

Étape suivante