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


Ce document explique comment désactiver l'arrêt élégant dans une instance Compute Engine existante. Pour en savoir plus sur l'arrêt élégant, y compris sur la façon d'ignorer l'arrêt élégant pour des opérations d'arrêt ou de suppression individuelles, consultez la section Présentation de l'arrêt élégant.

Si vous avez activé l'arrêt correct dans une instance, vous pouvez le désactiver pour effectuer les opérations suivantes:

  • Accélérez les opérations d'arrêt ou de suppression pour éviter des frais inutiles.

  • Mettez à jour les propriétés d'instance qui nécessitent un redémarrage.

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 désactiver l'arrêt correct dans 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.update on the instance, qui est nécessaire pour désactiver l'arrêt correct dans une instance de calcul.

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

Désactiver l'arrêt progressif dans une instance

Vous pouvez désactiver l'arrêt correct dans une instance de calcul sans redémarrer l'instance. Toutefois, vous ne pouvez pas désactiver l'arrêt progressif tant que l'instance est en cours d'arrêt progressif (PENDING_STOP).

Pour désactiver l'arrêt correct dans une instance, 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 l'instance pour afficher ses détails.

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

  3. Cliquez sur Modifier.

  4. Dans la section Gestion, décochez la case Arrêter progressivement la VM.

  5. Cliquez sur Enregistrer.

gcloud

Pour désactiver l'arrêt élégant dans une instance, exécutez la commande gcloud beta compute instances update avec l'option --no-graceful-shutdown:

gcloud beta compute instances update INSTANCE_NAME \
    --no-graceful-shutdown \
    --zone=ZONE

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.

  • ZONE : zone où se trouve l'instance

REST

  1. Créez un fichier JSON vide.

  2. Pour afficher les propriétés d'une instance existante, 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 d'une instance existante.

  3. Dans le fichier JSON vide que vous avez créé lors des étapes précédentes, procédez comme suit :

    1. Saisissez les propriétés de l'instance à partir de la sortie de la requête GET.

    2. Recherchez le champ gracefulShutdown.enabled, puis remplacez sa valeur par false:

      {
        ...
        "scheduling": {
          ...
          "gracefulShutdown": {
            "enabled": false
          }
        },
        ...
      }
      
  4. Pour mettre à jour l'instance, envoyez une requête PUT à la méthode instances.update bêta. Inclure les éléments suivants :

    • Dans l'URL de la requête, incluez le paramètre de requête mostDisruptiveAllowedAction.

    • Dans le corps de la requête, incluez les propriétés de l'instance du fichier JSON que vous avez créé et mis à jour aux étapes précédentes.

    La requête PUT permettant de mettre à jour l'instance se présente comme suit:

    PUT https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=ALLOWED_ACTION
    
    {
      ...
      "scheduling": {
        ...
        "gracefulShutdown": {
          "enabled": false
        }
      },
      ...
    }
    

    Remplacez ALLOWED_ACTION par l'une des valeurs suivantes :

    • NO_EFFECT: la requête vérifie si votre requête de mise à jour est valide et si les ressources sont disponibles, mais elle n'actualise pas l'instance.

    • REFRESH: si les propriétés modifiées de l'instance ne nécessitent pas de la redémarrer, Compute Engine met à jour l'instance.

Pour en savoir plus sur la mise à jour des propriétés d'une instance, consultez la section Mettre à jour les propriétés d'une instance.

Étape suivante