Remplacer les propriétés d'un modèle d'instance par une configuration sur toutes les instances


Cette page explique comment utiliser une configuration sur toutes les instances pour définir les propriétés d'étiquettes et de métadonnées pour l'ensemble des instances de machines virtuelles (VM) d'un groupe d'instances géré (MIG), sans avoir à créer de modèle d'instance.

Vous pouvez continuer à utiliser des modèles d'instances pour définir les propriétés des instances dans un MIG. Toutefois, il est plus facile d'utiliser la configuration sur toutes les instances dans un MIG dans certains scénarios tels que les suivants :

  • Vous devez régulièrement mettre à jour les métadonnées ou les étiquettes des instances, sans avoir à créer de modèles à chaque fois. Gardez à l'esprit que les modèles d'instances sont immuables : ils ne peuvent pas être modifiés après leur création.

  • Vous souhaitez disposer de plusieurs MIG basés sur un modèle d'instance, mais vous devez configurer les étiquettes ou les métadonnées de chaque MIG différemment. Cela peut être le cas si vous possédez une application, mais que vous souhaitez prendre en charge différents environnements pour le développement, les tests et la production. Vous pouvez créer un modèle d'instance et le réutiliser dans tous les environnements en définissant différentes métadonnées avec une configuration distincte sur toutes les instances dans chaque environnement.

  • Une de vos équipes possède l'infrastructure et les images, et une autre exécute des applications nécessitant une configuration. La première équipe peut provisionner l'infrastructure avec un modèle d'instance, tandis que celle dédiée aux applications peut gérer les configurations d'applications avec des configurations sur toutes les instances.

  • Un agent s'exécute sur vos VM et vous souhaitez le configurer à l'aide de métadonnées. Vous voulez vous assurer que la configuration de l'agent sur les VM persiste, même après la modification du modèle d'instance du groupe. Utilisez le modèle d'instance pour contrôler la version de l'application et configurez l'agent à l'aide d'une configuration sur toutes les instances.

Si vous définissez la même propriété à l'aide du modèle d'instance et de la configuration sur toutes les instances du MIG, celui-ci donne la priorité à la valeur de la configuration sur toutes les instances. Par exemple, si les métadonnées de enable-guest-attributes sont définies sur FALSE dans le modèle d'instance du MIG et sur TRUE dans sa configuration sur toutes les instances, Compute Engine applique TRUE sur toutes les instances du groupe. Cela vous permet d'utiliser une configuration sur toutes les instances pour remplacer les propriétés définies dans le modèle d'instance.

Avant de commencer

  • Créez un groupe d'instances géré.
  • 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

Limites

  • Vous pouvez uniquement remplacer les propriétés de modèle d'instance suivantes par une configuration sur toutes les instances :

    • Métadonnées
    • Étiquettes
  • Vous ne pouvez pas effectuer de mise à jour Canary de la configuration sur toutes les instances. Lorsque vous appliquez la configuration au groupe, Compute Engine applique les propriétés sur toutes les nouvelles instances et les instances existantes en fonction de votre règle de mise à jour. Si vous souhaitez contrôler à quel moment mettre à jour des instances existantes, vous pouvez utiliser des mises à jour sélectives.

  • Si vous utilisez une configuration avec état dans votre MIG, vous ne pouvez pas définir la même propriété à la fois dans une configuration par instance et dans la configuration sur toutes les instances du groupe.

Définir les propriétés dans une configuration sur toutes les instances

Créer et mettre à jour la configuration de toutes les instances d'un MIG à l'aide de gcloud CLI ou de REST.

Console

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

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

  2. Sélectionnez le MIG pour lequel vous souhaitez définir la configuration sur toutes les instances.

  3. Cliquez sur Mettre à jour les VM.

  4. Dans la section Configuration sur toutes les instances, procédez comme suit:

    • Pour ajouter ou mettre à jour des valeurs de métadonnées, cliquez sur Gérer les métadonnées. Terminez la configuration et cliquez sur Enregistrer.
    • Pour ajouter ou mettre à jour des étiquettes, cliquez sur Gérer les étiquettes. Terminez la configuration et cliquez sur Enregistrer.
  5. Une fois que vous avez terminé la configuration des propriétés de la configuration sur toutes les instances, cliquez sur Mettre à jour les VM.

    Si le type de mise à jour du MIG est défini sur Automatique, la configuration sur toutes les instances que vous avez définie est immédiatement appliquée à toutes les VM existantes. Si le type de mise à jour est Sélective, vous devez appliquer la configuration de manière sélective aux VM existantes. Pour en savoir plus, consultez la section Appliquer une configuration sur toutes les instances aux VM existantes.

gcloud

Ajoutez ou mettez à jour une configuration sur toutes les instances à l'aide de la commande all-instances-config update.

gcloud compute instance-groups managed all-instances-config update INSTANCE_GROUP_NAME \
    --metadata=KEY1=VALUE1,KEY2=VALUE2 \
    --labels=KEY3=VALUE3,KEY4=VALUE4

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME : nom du MIG.
  • KEYS et VALUES : paires clé/valeur pour les étiquettes ou les métadonnées. Si cette clé n'existe pas, la commande de mise à jour l'ajoute. Les valeurs des clés existantes sont mises à jour.

N'oubliez pas d'appliquer votre nouvelle configuration aux VM existantes dans le MIG.

REST

Ajoutez ou mettez à jour une configuration sur toutes les instances en envoyant une requête PATCH sur un MIG zonal ou régional.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "allInstancesConfig": {
    "properties": {
      "metadata": {
        "KEY1": "VALUE1",
        ...
      },
      "labels": {
        "KEY2": "VALUE2",
        ...
      },
    }
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : projet dans lequel se trouve le MIG.
  • REGION : région où se trouve le MIG. Pour un MIG zonal, remplacez regions/REGION par zones/ZONE.
  • INSTANCE_GROUP_NAME : nom du MIG.
  • KEYS et VALUES : paires clé/valeur pour les étiquettes ou les métadonnées. Si la clé n'existe pas, la requête l'ajoute. La valeur des clés existantes est mise à jour.

N'oubliez pas d'appliquer votre nouvelle configuration aux VM existantes dans le MIG.

Appliquer une configuration sur toutes les instances aux VM existantes

La configuration que vous spécifiez pour les VM d'un MIG est automatiquement appliquée aux nouvelles VM ajoutées au groupe.

Pour appliquer une nouvelle configuration, y compris une nouvelle configuration sur toutes les instances, aux VM existantes du groupe, utilisez l'une des méthodes suivantes :

  • Mise à jour automatique (proactive) : utilisez cette méthode si vous souhaitez que le MIG applique automatiquement de nouvelles configurations à toutes les VM ou à un sous-ensemble de VM existantes du groupe. Le niveau de perturbation des VM en cours d'exécution dépend de la règle de mise à jour que vous configurez. Vous pouvez utiliser cette méthode pour mettre à jour les nouveaux modèles d'instances de manière Canary. Pour utiliser cette méthode, définissez le type de mise à jour du MIG sur "proactif".
  • Mise à jour sélective (opportuniste) : utilisez cette méthode si vous souhaitez appliquer la mise à jour manuellement ou mettre à jour toutes les VM existantes du groupe simultanément. Vous ciblez tout ou partie des VM à mettre à jour vers la dernière configuration. Pour utiliser cette méthode, définissez le type de mise à jour du MIG sur "Quand l'occasion se présente".
  • Recréation de VM : lorsque vous recréez une VM dans un MIG, celui-ci applique toute nouvelle configuration qui n'a pas encore été appliquée à cette VM. Pour en savoir plus, consultez la section Recréer des VM dans un MIG.

Mise à jour automatique (proactive)

Si vous souhaitez appliquer automatiquement une nouvelle configuration sur toutes les instances à l'ensemble des VM existantes chaque fois que vous la modifiez, définissez le type de règle de mise à jour du groupe sur "Proactif". Pour en savoir plus, consultez la section Mise à jour automatique (proactive).

Vous pouvez contrôler la vitesse de déploiement d'une configuration proactive à l'aide des paramètres facultatifs maxUnavailable, MaxSurge et MinReadySec.

Pour utiliser des mises à jour proactives, vous ne devez les configurer qu'une seule fois. Ensuite, le MIG applique automatiquement toutes les futures modifications apportées à la configuration des VM (c'est-à-dire les modifications apportées à la configuration sur toutes les instances, au modèle d'instance et aux configurations par instance du groupe) à toutes les VM du groupe en fonction des paramètres de la règle de mise à jour du groupe.

Pour appliquer automatiquement les mises à jour de configuration, utilisez gcloud CLI ou REST.

gcloud

Vous pouvez configurer des mises à jour automatiques (proactives) à l'aide de la commande update.

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --update-policy-type=proactive \
    --update-policy-max-unavailable=MAX_UNAVAILABLE \
    --update-policy-max-surge=MAX_SURGE \
    --update-policy-min-ready=MIN_READY \
    --update-policy-minimal-action=MINIMAL_ACTION \
    --update-policy-replacement-method=REPLACEMENT_METHOD

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME : nom du MIG.
  • MAX_UNAVAILABLE (facultatif) : nombre maximal d'instances pouvant être indisponibles pendant la mise à jour. Par exemple, si l'option update-minimal-action est définie sur restart, elle limite le nombre de VM redémarrées simultanément. Il peut s'agir d'un nombre fixe (par exemple, 5) ou d'un pourcentage de taille du groupe d'instances géré (par exemple, 10%).
  • MAX_SURGE (facultatif) : nombre maximal d'instances supplémentaires pouvant être créées lors de la mise à jour. Il peut s'agir d'un nombre fixe (par exemple, 5) ou d'un pourcentage de taille du groupe d'instances géré (par exemple, 10%).
  • MIN_READY (facultatif) : durée minimale pendant laquelle une VM redémarrée ou remplacée doit être prête à être considérée comme disponible. Par exemple, 10s pour 10 secondes. Pour en savoir plus sur les formats de durée, consultez la page gcloud topic datetimes.
  • MINIMAL_ACTION (facultatif) : action à effectuer sur chaque instance pendant la mise à jour de la configuration :
    • refresh : applique la nouvelle configuration sur les instances en cours d'exécution, sans les redémarrer.
    • restart : redémarre les VM pendant la mise à jour, ce qui est utile si votre application ne lit les métadonnées que lors du redémarrage.
    • replace : supprime des VM et en créer de nouvelles auxquelles appliquer la nouvelle configuration.
  • REPLACEMENT_METHOD (facultatif) : indique l'action permettant de remplacer une instance :
    • recreate : attend que l'ancienne instance soit supprimée, puis crée une instance portant le même nom.
    • substitute : crée une instance avec un nouveau nom lors de la suppression de l'ancienne instance.

REST

Vous pouvez configurer des mises à jour automatiques (proactives) en envoyant une requête PATCH sur un MIG zonal ou régional.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "updatePolicy": {
    "type": "PROACTIVE",
    "maxUnavailable": {
      "percent": MAX_UNAVAILABLE
    },
    "maxSurge": {
      "percent": MAX_SURGE
    },
    "minimalAction": MINIMAL_ACTION,
    "replacementMethod": REPLACEMENT_METHOD
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : projet dans lequel se trouve le MIG.
  • REGION : région où se trouve le MIG. Pour un MIG zonal, remplacez regions/REGION par zones/ZONE.
  • INSTANCE_GROUP_NAME : nom du MIG.
  • MAX_UNAVAILABLE (facultatif) : nombre maximal d'instances pouvant être indisponibles pendant la mise à jour. Par exemple, si l'option update-minimal-action est définie sur RESTART, elle limite le nombre de VM redémarrées simultanément. Il peut s'agir d'un pourcentage (par exemple, spécifiez "percent": 80 pour 80 %) ou d'un nombre fixe. Pour spécifier un nombre fixe, remplacez "percent": MAX_UNAVAILABLE par "fixed": MAX_UNAVAILABLE.
  • MAX_SURGE (facultatif) : nombre maximal d'instances supplémentaires pouvant être créées lors de la mise à jour. Il peut s'agir d'un pourcentage ou d'un nombre fixe.
  • MINIMAL_ACTION (facultatif) : action à effectuer sur chaque instance pendant la mise à jour de la configuration :
    • REFRESH : applique la nouvelle configuration sur les instances en cours d'exécution, sans les redémarrer.
    • RESTART : redémarre les VM pendant la mise à jour, ce qui est utile si votre application ne lit les métadonnées que lors du redémarrage.
    • REPLACE : supprime des VM et en créer de nouvelles auxquelles appliquer la nouvelle configuration.
  • REPLACEMENT_METHOD (facultatif) : indique l'action permettant de remplacer une instance :
    • RECREATE : attend que l'ancienne instance soit supprimée, puis crée une instance portant le même nom.
    • SUBSTITUTE : crée une instance avec un nouveau nom lors de la suppression de l'ancienne instance.

Lorsque des options facultatives sont omises, le groupe utilise les valeurs de sa règle de mise à jour. Vous pouvez consulter la règle de mise à jour à l'aide de gcloud CLI ou de REST.

Mise à jour sélective (opportuniste)

Si vous souhaitez contrôler à quel moment et à quelles VM appliquer une nouvelle configuration, définissez le type de règle de mise à jour du groupe sur "Quand l'occasion se présente". Pour en savoir plus, consultez la section Mise à jour sélective (opportuniste).

Lorsque vous choisissez d'appliquer des mises à jour de configuration de manière sélective, les modifications apportées à la configuration sur toutes les instances, au modèle d'instance ou aux configurations par instance du groupe ne sont pas automatiquement appliquées aux VM existantes. Vous devez explicitement appliquer une nouvelle configuration aux VM existantes afin de les mettre à jour.

Pour appliquer de manière sélective les mises à jour de configuration de VM aux VM d'un MIG, utilisez la gcloud CLI ou REST.

gcloud

Vous pouvez configurer des mises à jour sélectives (opportunistes) à l'aide de la commande update :

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --update-policy-type=opportunistic

Lorsque vous définissez le type de mise à jour du groupe sur opportunistic, vous devez lancer la mise à jour lorsque vous souhaitez appliquer la nouvelle configuration aux VM existantes.

Appliquer la configuration à des VM spécifiques

Pour mettre à jour des instances sélectionnées, exécutez la commande suivante :

gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \
    --instances INSTANCE_NAMES \
    --minimal-action=MINIMAL_ACTION \
    --most-disruptive-allowed-action=MOST_DISRUPTIVE_ALLOWED_ACTION

Appliquer la configuration à toutes les VM

Pour mettre à jour toutes les instances existantes, exécutez la commande suivante :

gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \
    --all-instances \
    --minimal-action=MINIMAL_ACTION \
    --most-disruptive-allowed-action=MOST_DISRUPTIVE_ALLOWED_ACTION

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME : nom du MIG.
  • INSTANCE_NAMES : liste des instances auxquelles appliquer le modèle.
  • MINIMAL_ACTION (facultatif) : action à effectuer sur toutes les instances lors de la mise à jour de leur configuration :
    • refresh (valeur par défaut) : applique la nouvelle configuration sur les instances en cours d'exécution, sans les redémarrer.
    • restart : redémarre les VM pendant la mise à jour, ce qui est utile si votre application ne lit les métadonnées que lors du redémarrage.
    • replace : supprime des VM et en créer de nouvelles auxquelles appliquer la nouvelle configuration.
  • MOST_DISRUPTIVE_ALLOWED_ACTION (facultatif) : effectue au maximum cette action sur chaque instance. Si la mise à jour de la configuration nécessite une action plus perturbatrice que celle spécifiée ici, la mise à jour échoue et aucune modification n'est effectuée.
    • none : aucune action.
    • refresh : applique la nouvelle configuration sans arrêter les instances, si possible. Par exemple, utilisez refresh pour appliquer des modifications qui ne concernent que les métadonnées ou des disques supplémentaires.
    • restart : applique la nouvelle configuration sans remplacer les instances, si possible. Par exemple, l'arrêt et le redémarrage des instances suffisent pour appliquer des modifications au type de machine.
    • replace : remplace les anciennes instances en fonction de l'option --replacement-method.

REST

Vous pouvez configurer des mises à jour sélectives (opportunistes) en envoyant une requête PATCH sur un MIG zonal ou régional.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "updatePolicy": {
    "type": "OPPORTUNISTIC"
  }
}

Lorsque vous définissez le type de mise à jour du groupe sur OPPORTUNISTIC, vous devez lancer la mise à jour lorsque vous souhaitez appliquer la nouvelle configuration aux VM existantes.

Appliquer la configuration à des VM spécifiques

Pour mettre à jour des instances spécifiques, exécutez la requête suivante :

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances

{
  "instances": [
    "zones/ZONE/instances/INSTANCE_NAME_1",
    "zones/ZONE/instances/INSTANCE_NAME_2"
  ],
  "minimalAction": MINIMAL_ACTION,
  "mostDisruptiveAllowedAction": MOST_DISRUPTIVE_ALLOWED_ACTION
}

Appliquer la configuration à toutes les VM

Pour mettre à jour toutes les instances existantes, exécutez la requête suivante :

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances

{
  "allInstances": true,
  "minimalAction": MINIMAL_ACTION,
  "mostDisruptiveAllowedAction": MOST_DISRUPTIVE_ALLOWED_ACTION
}

Remplacez les éléments suivants :

  • PROJECT_ID : projet dans lequel se trouve le MIG.
  • REGION : région où se trouve le MIG. Pour un MIG zonal, remplacez regions/REGION par zones/ZONE.
  • INSTANCE_GROUP_NAME : nom du MIG.
  • MINIMAL_ACTION (facultatif) : action à effectuer sur chaque instance pendant la mise à jour de la configuration :
    • REFRESH : applique la nouvelle configuration sur les instances en cours d'exécution, sans les redémarrer.
    • RESTART : redémarre les VM pendant la mise à jour, ce qui est utile si votre application ne lit les métadonnées que lors du redémarrage.
    • REPLACE : supprime des VM et en créer de nouvelles auxquelles appliquer la nouvelle configuration.
  • MOST_DISRUPTIVE_ALLOWED_ACTION (facultatif) : effectue au maximum cette action sur chaque instance. Si la mise à jour de la configuration nécessite une action plus perturbatrice que celle spécifiée ici, la mise à jour échoue et aucune modification n'est effectuée.
    • NONE : aucune action.
    • REFRESH : applique la nouvelle configuration sans arrêter les instances, si possible. Par exemple, utilisez REFRESH pour appliquer des modifications qui ne concernent que les métadonnées ou des disques supplémentaires.
    • RESTART : applique la nouvelle configuration sans remplacer les instances, si possible. Par exemple, l'arrêt et le redémarrage des instances suffisent pour appliquer des modifications au type de machine.
    • REPLACE : remplace les anciennes instances en fonction du champ updatePolicy.replacementMethod du groupe.

Vérifier si une nouvelle configuration sur toutes les instances a été appliquée

Vous pouvez vérifier si la dernière configuration sur toutes les instances a été appliquée à toutes les VM du groupe à l'aide de l'une des méthodes suivantes.

Console

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

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

  2. Sélectionnez le MIG pour lequel vous souhaitez afficher la configuration sur toutes les instances.

  3. Accédez à l'onglet Détails.

  4. Si la dernière configuration sur toutes les instances est appliquée à toutes les VM, dans la section Configuration de toutes les instances, l'horodatage Dernière modification et le champ État doivent afficher les valeurs suivantes:

    • Dernière modification: indique l'heure à laquelle vous avez appliqué la configuration sur toutes les instances à toutes les VM.
    • État: indique Appliqué à toutes les VM. Si l'option "toutes les instances" n'est pas appliquée à toutes les VM, l'état est défini sur Mise à jour de la VM en attente.

gcloud

Exécutez la commande describe et ajoutez l'option --format pour rechercher la valeur status.allInstancesConfig.effective.

gcloud compute instance-groups managed describe INSTANCE_GROUP_NAME \
    --format="(status.allInstancesConfig)"

Exemple de résultat :

status:
  allInstancesConfig:
    currentRevision: 2022-12-02T10:30:15.012345Z
    effective: true

Si la valeur effective est définie sur true, la configuration la plus récente est appliquée sur toutes les VM. La valeur currentRevision indique le code temporel de la dernière modification apportée à la configuration sur toutes les instances du groupe.

Si la valeur effective est définie sur false, la configuration la plus récente n'est pas encore appliquée à toutes les VM.

Pour vérifier l'état de chaque VM, vous pouvez répertorier toutes les VM du MIG ou vérifier individuellement chaque VM en exécutant la commande describe-instance :

gcloud compute instance-groups managed describe-instance INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME

Exemple de résultat :

allInstancesConfig:
  revision: 2022-12-02T10:30:15.012345Z
currentAction: NONE
id: '8393021473297481188'
instance: .../projects/PROJECT/zones/ZONE/instances/INSTANCE_NAME
instanceStatus: RUNNING
name: INSTANCE_NAME
version:
  instanceTemplate: .../projects/PROJECT/global/instanceTemplates/INSTANCE_TEMPLATE

Pour afficher les VM auxquelles la configuration la plus récente est appliquée, comparez le code temporel revision sur chaque VM avec le code temporel currentRevision sur le MIG.

REST

Envoyez une requête GET sur un MIG zonal ou régional pour vérifier la valeur de l'option status.allInstancesConfig.effective.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

Exemple de réponse :

{
  ...
  "status": {
    "isStable": "true",
    "versionTarget": {
      "isReached": "true"
    },
    "allInstancesConfig": {
      "currentRevision": "2022-12-02T10:30:15.012345Z",
      "effective": "true"
    },
  ...
  },
  ...
}

Si le champ effective est défini sur true, la configuration la plus récente est appliquée à toutes les VM. Le champ currentRevision indique le code temporel de la dernière modification apportée à la configuration sur toutes les instances du groupe.

Si le champ effective est défini sur false, la configuration la plus récente n'est pas encore appliquée à toutes les VM.

Pour vérifier l'état de chaque instance, répertoriez les instances gérées du MIG zonal ou régional :

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/listManagedInstances

Exemple de résultat :

{
  "managedInstances": [
    ...
    {
      "instance": ".../zones/ZONE/instances/INSTANCE_NAME",
      "instanceStatus": "RUNNING",
      "currentAction": "NONE",
      "allInstancesConfig": {
        "revision": "2022-12-02T10:30:15.012345Z"
      },
      "version": {
        "name": "V1",
        "instanceTemplate": ".../projects/.../instanceTemplates/INSTANCE_TEMPLATE"
      }
    },
    {
      ...
    }
  ]
}

Pour afficher les VM auxquelles la configuration la plus récente est appliquée, comparez le code temporel revision sur chaque VM avec le code temporel currentRevision sur le MIG.

Répertorier les propriétés dans une configuration sur toutes les instances

Une configuration sur toutes les instances fait partie de la configuration du MIG. Pour examiner la configuration applicable à toutes les instances, utilisez l'une des méthodes suivantes.

Console

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

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

  2. Sélectionnez le MIG pour lequel vous souhaitez afficher la configuration sur toutes les instances.

  3. Accédez à l'onglet Détails.

  4. Consultez la section Configuration applicable à toutes les instances.

gcloud

Exécutez la commande describe et ajoutez l'option --format pour afficher la valeur de la configuration sur toutes les instances du groupe.

gcloud compute instance-groups managed describe INSTANCE_GROUP_NAME \
    --format="(allInstancesConfig)"

La commande renvoie la configuration sur toutes les instances du groupe, si elle existe.

REST

Envoyez une requête GET sur un MIG zonal ou régional, puis recherchez le champ allInstancesConfig.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

Si le champ allInstancesConfig n'est pas défini, le groupe ne dispose d'aucune configuration sur toutes les instances.

Supprimer les propriétés de la configuration sur toutes les instances

Si vous supprimez une propriété de la configuration sur toutes les instances du MIG et que la même propriété existe dans le modèle d'instance du MIG, les VM du MIG héritent à nouveau de cette propriété du modèle d'instance une fois la configuration la plus récente appliquée aux VM du MIG. Pour en savoir plus sur l'application de la configuration la plus récente aux VM existantes, consultez la section Appliquer une configuration sur toutes les instances aux VM existantes.

Pour supprimer des propriétés d'une configuration sur toutes les instances, utilisez l'une des méthodes suivantes.

Console

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

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

  2. Sélectionnez le MIG pour lequel vous souhaitez supprimer la configuration sur toutes les instances.

  3. Cliquez sur Mettre à jour les VM.

  4. Dans la section Configuration sur toutes les instances, procédez comme suit:

    • Pour supprimer des métadonnées, cliquez sur Gérer les métadonnées.
    • Pour supprimer des étiquettes, cliquez sur Gérer les étiquettes.
  5. Dans le volet Gérer les métadonnées ou Gérer les libellés, procédez comme suit:

    1. Maintenez le pointeur de la souris sur un paramètre pour activer l'option de suppression, puis cliquez sur Supprimer l'élément.
    2. Cliquez sur Enregistrer.
  6. Une fois la suppression terminée, cliquez sur Mettre à jour les VM.

    Si le type de mise à jour du MIG est défini sur Automatique, les modifications apportées à la configuration sur toutes les instances sont immédiatement appliquées à toutes les VM existantes. Si le type de mise à jour est Sélective, vous devez appliquer la configuration de manière sélective aux VM existantes. Pour en savoir plus, consultez la section Appliquer une configuration sur toutes les instances aux VM existantes.

gcloud

Pour supprimer des propriétés, exécutez la commande all-instances-configuration delete, et spécifiez une ou plusieurs clés pour les propriétés que vous souhaitez supprimer.

gcloud compute instance-groups managed all-instances-config delete INSTANCE_GROUP_NAME \
    --metadata=KEY1[, KEY1]\
    --labels=KEY1[, KEY1]

N'oubliez pas d'appliquer votre nouvelle configuration aux VM existantes dans le MIG.

REST

Pour supprimer des propriétés, envoyez une requête PATCH sur un MIG zonal ou régional, puis spécifiez la valeur null en tant que clé pour chaque propriété que vous souhaitez supprimer.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME
{
  "allInstancesConfig": {
    "properties": {
      "metadata": {
        "KEY1": null,
        ...
      },
      "labels": {
        "KEY2": null,
        ...
      }
    }
  }
}

N'oubliez pas d'appliquer votre nouvelle configuration aux VM existantes dans le MIG.

Étapes suivantes