Définir les règles de disponibilité de VM


Ce document explique comment définir les règles de disponibilité d'une instance de machine virtuelle (VM) pour configurer le comportement des VM lorsqu'un événement de maintenance se produit.

Avant de commencer

Limites

  • Vous ne pouvez pas modifier les règles de disponibilité d'une VM préemptive. En cas d'événement de maintenance, la VM préemptive s'arrête et la migration n'est pas effectuée. Vous devez redémarrer manuellement la VM préemptée.
  • Une fois que vous avez créé une VM à l'aide d'un type de machine E2, vous ne pouvez pas modifier les paramètres de maintenance de l'hôte de la VM en remplaçant Migrate par Terminate ou inversement.

Définir des règles de disponibilité

Vous pouvez modifier les règles de disponibilité d'une VM lorsque vous créez la VM pour la première fois ou après sa création, à l'aide de la méthode setScheduling. Pour configurer le comportement de maintenance et le redémarrage automatique d'une VM, utilisez les propriétés onHostMaintenance et automaticRestart.

  • onHostMaintenance : détermine le comportement en cas d'événement de maintenance susceptible de provoquer le redémarrage de la VM.

    • MIGRATE : force la migration à chaud de l'instance par Compute Engine lors d'un événement de maintenance. Il s'agit de la valeur par défaut.
    • TERMINATE : arrête une VM au lieu de la migrer.
  • automaticRestart : détermine le comportement en cas de plantage ou d'arrêt d'une VM par le système.

    • true : Compute Engine redémarre une instance si celle-ci plante ou est arrêtée. Il s'agit de la valeur par défaut.
    • false : Compute Engine ne redémarre pas une VM si celle-ci plante ou est arrêtée.

Toutes les VM sont configurées avec des valeurs par défaut sauf si vous les avez définies.

Définir une règle de disponibilité lors de la création de la VM

Console

  1. Accédez à la page Créer une instance dans Google Cloud Console.

    Accéder à la page Créer une instance

  2. Développez la section Mise en réseau, disques, sécurité, gestion et location unique, puis procédez comme suit :

    1. Développez la section Gestion.
    2. Dans la liste Redémarrage automatique, sélectionnez l'option de votre choix.
    3. Dans la liste Pendant la maintenance de l'hôte, sélectionnez l'option souhaitée.
  3. Pour créer la VM, cliquez sur Créer.

gcloud

Pour spécifier les règles de disponibilité d'une nouvelle instance dans gcloud compute, utilisez l'option --maintenance-policy pour indiquer si la VM est migrée ou arrêtée. Par défaut, les VM sont automatiquement configurées pour redémarrer, sauf si vous fournissez l'option --no-restart-on-failure.

gcloud compute instances create VM_NAME \
    --maintenance-policy MAINTENANCE_POLICY \
    [--no-restart-on-failure]

Remplacez les éléments suivants :

  • VM_NAME : nom de la VM
  • MAINTENANCE_POLICY : règle de cette VM, TERMINATE ou MIGRATE

API

Dans l'API, envoyez une requête POST à l'URL suivante :

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

Remplacez les éléments suivants :

  • PROJECT_ID : ID de projet de la VM.
  • ZONE : zone de la VM

avec les paramètres onHostMaintenance et automaticRestart dans le corps de la requête :

    {
      "name": "example-instance",
      "description": "Front-end for real-time ingest; don't migrate.",
      ...
      // User options for influencing this VM's life cycle.
      "scheduling": {
        "onHostMaintenance": "MIGRATE",
        "automaticRestart": true
      }
    }

Pour plus d'informations, consultez la documentation de référence sur les instances.

Définir une règle de disponibilité pour une VM existante

Console

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

    Accéder à la page "Instances de VM"

  2. Cliquez sur la VM dont vous souhaitez modifier les paramètres. La page Détails de la VM s'affiche.

  3. Sur la page des détails de la VM, procédez comme suit :

    1. Cliquez sur le bouton Modifier en haut de la page.
    2. Sous Règles de disponibilité, mettez à jour les règles en fonction de vos besoins. Dans la section Règles de disponibilité, vous pouvez configurer les options Pendant la maintenance de l'hôte et Redémarrage automatique.
    3. Cliquez sur Enregistrer.

gcloud

Pour mettre à jour les règles de disponibilité d'une VM, utilisez la commande gcloud compute instances set-scheduling avec les mêmes paramètres et options que ceux utilisés dans la commande de création de VM ci-dessus :

gcloud compute instances set-scheduling VM_NAME \
    --maintenance-policy MAINTENANCE_POLICY \
    [--no-restart-on-failure | --restart-on-failure]

Remplacez les éléments suivants :

  • VM_NAME : nom de la VM
  • MAINTENANCE_POLICY : règle de cette VM, TERMINATE ou MIGRATE

API

Dans l'API, vous pouvez envoyer une requête à l'URL suivante, en remplaçant l'ID du projet, la zone et le nom de la VM par vos propres ID de projet, zone et nom de VM :

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling

Le corps de votre requête doit contenir la nouvelle valeur pour les règles de disponibilité :

    {
      "onHostMaintenance": "MIGRATE",
      "automaticRestart": true
    }

Pour plus d'informations, consultez la documentation de référence de instances().setScheduling.

Étape suivante