Appliquer les mises à jour de configuration lors des réparations


Ce document explique comment configurer votre MIG pour appliquer le dernier modèle d'instance et les configurations par instance lors de la recréation d'une VM pendant des opérations de réparation. L'application de la dernière configuration disponible lors d'une opération de réparation est également appelée mise à jour lors des réparations. Ce document explique également comment vérifier si la mise à jour lors des réparations est activée dans votre MIG et comment la désactiver.

Par défaut, lors d'une réparation, un MIG recrée une VM à l'aide de la même configuration d'instance que celle utilisée initialement pour créer la VM. Si des mises à jour du modèle d'instance du groupe ou des configurations par instance sont disponibles, vous avez la possibilité d'appliquer ces modifications à une VM en cours de réparation.

Si vous souhaitez appliquer automatiquement des mises à jour de configuration à toutes les VM ou à un ensemble de VM (PROACTIVE), ou mettre à jour de manière sélective des instances spécifiques (OPPORTUNISTIC), consultez la section Appliquer de nouvelles configurations aux VM dans un MIG.

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 :

    Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :

    Console

    Lorsque vous utilisez la console Google Cloud pour accéder aux services et aux API Google Cloud, vous n'avez pas besoin de configurer l'authentification.

    gcloud

    1. Installez Google Cloud CLI, puis initialisez-la en exécutant la commande suivante :

      gcloud init
    2. Définissez une région et une zone par défaut.

    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 Google Cloud CLI, puis initialisez-la en exécutant la commande suivante :

      gcloud init

Configurer la mise à jour lors de la réparation

Pour configurer la mise à jour lors de la réparation, utilisez la console Google Cloud, gcloud CLI ou REST.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom du MIG pour lequel vous souhaitez configurer la mise à jour lors de la réparation.

  3. Cliquez sur Modifier pour modifier le MIG.

  4. Dans la section Cycle de vie des instances de VM, pour Mettre à jour lors de la réparation de l'instance de VM, sélectionnez Mettre à jour la configuration de l'instance.

  5. Cliquez sur Enregistrer.

gcloud

Pour un MIG existant, utilisez la commande update :

gcloud compute instance-groups managed update MIG_NAME \
    --force-update-on-repair

Pour un nouveau MIG, utilisez la commande create :

gcloud compute instance-groups managed create MIG_NAME \
    --template INSTANCE_TEMPLATE \
    --size SIZE \
    --force-update-on-repair

Remplacez les éléments suivants :

  • MIG_NAME : nom du groupe d'instances.
  • INSTANCE_TEMPLATE : nom du modèle d'instance à utiliser pour le groupe.
  • SIZE : taille cible du groupe d'instances.

REST

Pour un MIG zonal existant, utilisez la méthode instanceGroupManagers.patch ou, pour un MIG régional existant, la méthode regionInstanceGroupManagers.patch.

Effectuez l'appel suivant pour configurer la mise à jour lors de la réparation dans un MIG zonal existant :

PATCH https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
"instanceLifecyclePolicy":
  { "forceUpdateOnRepair": YES
  }
}

Pour un nouveau MIG zonal, utilisez la méthode instanceGroupManagers.insert ou, pour un nouveau MIG régional, la méthode regionInstanceGroupManagers.insert.

Effectuez l'appel suivant pour configurer la mise à jour lors de la réparation lorsque vous créez un MIG zonal :

POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
{
"name": "MIG_NAME",
"instanceTemplate": "INSTANCE_TEMPLATE",
"targetSize": SIZE,
"instanceLifecyclePolicy":
  { "forceUpdateOnRepair": YES
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : l'ID de votre projet.
  • ZONE : zone où se trouve le MIG.
  • MIG_NAME : nom du groupe d'instances.
  • INSTANCE_TEMPLATE : nom du modèle d'instance à utiliser pour le groupe.
  • SIZE : taille cible du groupe d'instances.

Vérifier si la mise à jour lors de la réparation est activée

Par défaut, un MIG ne met pas à jour une VM lors d'une réparation. Pour vérifier si la mise à jour lors de la réparation est activée pour votre MIG, utilisez la console Google Cloud, gcloud CLI ou REST pour afficher la configuration de la mise à jour lors de la réparation.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom du MIG dont vous souhaitez vérifier la configuration.

  3. Cliquez sur l'onglet Détails.

  4. Dans la section Cycle de vie des instances de VM, cochez l'option Mises à jour lors de la réparation de l'instance de VM. Si l'option Mettre à jour la configuration de l'instance est sélectionnée, la mise à jour lors de la réparation est activée.

gcloud

Utilisez la commande commande describe comme suit :

gcloud compute instance-groups managed describe MIG_NAME \
--format="(instanceLifecyclePolicy)"

Dans le corps de la réponse, recherchez le champ forceUpdateOnRepair, qui possède l'une des valeurs suivantes :

  • NO : valeur par défaut. Le MIG ne met pas à jour les VM lors de leur réparation.
  • YES : le MIG met à jour les VM lors de leur réparation.

Voici un exemple de résultat :

instanceLifecyclePolicy:
 forceUpdateOnRepair: YES

REST

Pour un MIG zonal, utilisez la méthode instanceGroupManagers.get ou, pour un MIG régional, la méthode regionInstanceGroupManagers.get.

Par exemple, dans un MIG zonal, exécutez la commande suivante :

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

Dans le corps de la réponse, recherchez le champ instanceLifecyclePolicy.forceUpdateOnRepair, qui contient l'une des valeurs suivantes :

  • NO : valeur par défaut. Le MIG ne met pas à jour les VM lors de leur réparation.
  • YES : le MIG met à jour les VM lors de leur réparation.

Voici un exemple de réponse :

{
...
"name": "example-mig",
"targetSize": 12,
...
"instanceLifecyclePolicy": {
  "forceUpdateOnRepair": "YES"
  },
...
}

Remplacez les éléments suivants :

  • PROJECT_ID : l'ID de votre projet.
  • ZONE : zone où se trouve le MIG.
  • MIG_NAME : nom du groupe d'instances.

Désactiver la mise à jour lors de la réparation

Lorsque votre MIG répare une VM, si vous souhaitez qu'il utilise le modèle d'instance d'origine ou les configurations par instance utilisées pour créer la VM, vous devez désactiver la mise à jour lors de la réparation. Par défaut, la mise à jour lors de la réparation est désactivée pour un MIG.

Utilisez la console Google Cloud, gcloud CLI ou REST pour désactiver la mise à jour lors de la réparation.

Console

  1. Dans la console Google Cloud, accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Cliquez sur le nom du MIG pour lequel vous souhaitez désactiver la mise à jour lors de la réparation.

  3. Cliquez sur Modifier pour modifier le MIG.

  4. Dans la section Cycle de vie des instances de VM, pour Mises à jour pendant la réparation de l'instance de VM, sélectionnez Conserver la même configuration d'instance.

  5. Cliquez sur Enregistrer.

gcloud

Exécutez la commande update pour définir l'option --no-force-update-on-repair comme suit :

gcloud compute instance-groups managed update MIG_NAME \
    --no-force-update-on-repair

REST

Pour un MIG zonal, utilisez la méthode instanceGroupManagers.patch ou, pour un MIG régional, la méthode regionInstanceGroupManagers.patch.

Par exemple, pour désactiver la mise à jour lors de la réparation d'un MIG zonal, exécutez la commande suivante :

PATCH https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy":
{ "forceUpdateOnRepair": NO
}
}

Remplacez les éléments suivants :

  • PROJECT_ID : l'ID de votre projet.
  • ZONE : zone où se trouve le MIG.
  • MIG_NAME : nom du groupe d'instances.

Étapes suivantes