Obtenir des informations sur les MIG et les instances gérées

Les méthodes décrites sur cette page permettent d'obtenir des informations sur vos groupes d'instances gérés (MIG, Managed Instance Group) et sur les instances de machines virtuelles (VM) dans chaque MIG.

Avant de commencer

Obtenir des informations sur les MIG

Vous pouvez récupérer des informations sur les groupes, par exemple, pour inspecter les règles associées à ce groupe et pour vérifier si le groupe est stable ou s'il fait l'objet de modifications. Pour plus d'informations sur les instances de VM dans un MIG, consultez la section Obtenir des informations sur les instances gérées.

Répertorier les MIG

Pour obtenir la liste de vos groupes d'instances gérés, utilisez la console, l'outil gcloud ou l'API.

Console

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

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

    Cette page répertorie les groupes d'instances dont vous disposez, qu'ils soient gérés ou non gérés.

    Les groupes d'instances gérés sont associés à une valeur dans la colonne Modèle.

gcloud

Pour répertorier tous les groupes d'instances gérés d'un projet, exécutez la commande suivante :

gcloud compute instance-groups managed list

API

Pour répertorier tous les groupes d'instances gérés dans une zone, envoyez une requête GET à la méthode instanceGroupManagers.list :

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers

Pour les groupes d'instances gérés régionaux (multizones), utilisez plutôt la ressource regionInstanceGroupManagers : regionInstanceGroupManagers.list.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers

Obtenir les propriétés d'un MIG

Pour obtenir des informations sur un MIG spécifique, y compris les règles associées (par exemple, les règles d'autoréparation), utilisez la console, l'outil gcloud ou l'API.

Pour obtenir la valeur id du groupe, vous devez utiliser l'outil gcloud ou l'API.

Console

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

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

    Cette page répertorie les groupes d'instances dont vous disposez, ainsi que les groupes d'instances non gérés.

  2. Dans la colonne Nom de la liste, cliquez sur le nom du groupe d'instances que vous souhaitez examiner. La page qui s'ouvre affiche les propriétés du groupe ainsi que la liste des instances qui en font partie.

gcloud

Pour obtenir des informations sur un groupe spécifique, exécutez la commande suivante :

gcloud compute instance-groups managed describe instance-group \
    [--zone zone | --region region]

La commande renvoie des informations sur le groupe, y compris les règles associées.

API

Pour obtenir des informations sur un groupe spécifique, envoyez une requête GET à la méthode instanceGroupManagers.get en incluant le nom d'un groupe d'instances géré spécifique :

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group

Pour les groupes d'instances gérés régionaux (multizones), utilisez plutôt la ressource regionInstanceGroupManagers : regionInstanceGroupManagers.list et regionInstanceGroupManagers.get.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

La réponse inclut des informations sur le groupe, y compris les règles associées, à l'exception des règles d'autoscaling.

Pour obtenir des informations sur les autoscalers, envoyez une requête GET à la méthode autoscalers.get en incluant le nom d'un groupe d'instances géré spécifique :

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/autoscalers/instance-group

Pour les groupes d'instances gérés régionaux (multizones), utilisez plutôt la ressource regionAutoscalers : regionAutoscalers.get.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/regionAutoscalers/instance-group

Vérifier l'état du groupe

Plusieurs commandes et requêtes permettent de créer, de supprimer et de modifier les instances d'un groupe géré. Un message DONE est renvoyé lorsque le groupe planifie ces actions pour les instances. Celles-ci ne sont toutefois créées, supprimées ou mises à jour qu'une fois les actions planifiées terminées. Vous devez donc vérifier l'état du groupe ou vérifier l'état de ces instances.

Au niveau du groupe, Compute Engine insère un champ en lecture seule appelé status, qui inclut une option isStable et auquel vous pouvez accéder à l'aide de l'outil de ligne de commande gcloud ou de l'API.

gcloud

gcloud compute instance-groups managed describe instance-group-name \
    [--zone zone | --region region]

L'outil gcloud renvoie des informations détaillées sur le groupe d'instances, y compris le champ status.isStable.

Pour mettre un script en attente jusqu'à ce que le groupe soit stable, utilisez la commande wait-until avec l'option --stable. Exemple :

gcloud beta compute instance-groups managed wait-until instance-group-name \
    --stable \
    [--zone zone | --region region]
Waiting for group to become stable, current operations: deleting: 4
Waiting for group to become stable, current operations: deleting: 4
...
Group is stable

Une fois le champ status.isStable défini sur true pour le groupe, la commande est renvoyée.

API

Pour un MIG zonal, envoyez une requête POST à la méthode instanceGroupManagers.get :

POST https://compute.googleapis.com/compute/beta/projects/project-id/zones/zone/instanceGroupManagers/[INSTANCE_GROUP_NAME]/get

Si le groupe d'instances est un MIG régional, remplacez zones/zone par regions/region :

POST https://compute.googleapis.com/compute/beta/projects/project-id/regions/region/instanceGroupManagers/[INSTANCE_GROUP_NAME]/get

L'API renvoie des informations détaillées sur le groupe d'instances, y compris le champ status.isStable.

Vous pouvez vérifier qu'un groupe d'instances géré est en cours d'exécution et opérationnel en contrôlant la valeur du champ status.isStable de la ressource instanceGroupManagers ou regionInstanceGroupManagers associée.

Vous pouvez également utiliser la commande wait-until de l'outil de ligne de commande gcloud avec l'option --stable afin d'attendre que le champ status.isStable soit défini sur true pour le groupe :

gcloud beta compute instance-groups managed wait-until INSTANCE_GROUP_NAME \
    --stable \
    [--zone [ZONE] | --region [REGION]]

Si le champ status.isStable est défini sur false, cela signifie que des modifications sont en cours, en attente ou que le groupe d'instances géré est lui-même en cours de modification.

Si le champ status.isStable est défini sur true, on peut en déduire les éléments suivants :

  • Aucune des instances du groupe d'instances géré n'est en cours de modification, et le champ currentAction est défini sur NONE pour toutes les instances.
  • Aucune modification n'est en attente pour les instances du groupe d'instances géré.
  • Le groupe d'instances géré n'est pas en cours de modification.

Les groupes d'instances gérés peuvent être modifiés de différentes façons. Exemple :

  • Vous pouvez demander le déploiement d'un nouveau modèle d'instance.
  • Vous pouvez demander à créer, supprimer, redimensionner ou mettre à jour des instances du groupe.
  • Un autoscaler peut demander le redimensionnement du groupe.
  • Une ressource d'autoréparation peut remplacer une ou plusieurs instances non opérationnelles dans le groupe d'instances géré.
  • Des instances d'un groupe d'instances géré régional peuvent être redistribuées.

Une fois toutes les actions terminées, le champ status.isStable est à nouveau défini sur true pour ce groupe d'instances géré.

Pour plus d'informations sur les instances de VM individuelles, consultez la section Vérifier l'état des instances gérées.

Afficher l'historique des opérations d'autoréparation

Si vous avez configuré l'autoréparation, vous pouvez afficher les événements d'autoréparation antérieurs.

Obtenir des informations sur les instances de VM gérées d'un MIG

Répertorier les instances gérées d'un MIG

Pour obtenir la liste des instances gérées d'un groupe, avec leurs états et modèles, utilisez la console , l'outil gcloud ou l'API.

Console

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

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

    Cette page répertorie les groupes d'instances dont vous disposez, ainsi que les groupes d'instances non gérés.

  2. Dans la colonne Nom de la liste, cliquez sur le nom du groupe d'instances que vous souhaitez examiner. La page qui s'ouvre affiche les propriétés du groupe ainsi que la liste des instances qui en font partie.

gcloud

Utilisez la sous-commande list-instances de l'outil gcloud.

gcloud compute instance-groups managed list-instances instance-group \
    [--zone zone | --region region]

La commande renvoie une liste d'instances et leurs informations associées, y compris l'état actuel, le modèle d'instance et la dernière erreur.

API

Pour un MIG zonal, envoyez une requête POST à la méthode instanceGroupManagers.listManagedInstances et incluez le nom d'un groupe d'instances géré spécifique :

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group

Pour les groupes d'instances gérés régionaux (multizones), utilisez plutôt la ressource regionInstanceGroupManagers : regionInstanceGroupManagers.list.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

La réponse comprend une liste d'instances et leurs informations associées, y compris l'état actuel et le modèle d'instance.

Vérifier l'état des instances gérées

Plusieurs commandes et requêtes permettent de créer, de supprimer et de modifier les instances d'un groupe géré. Un message DONE est renvoyé lorsque le groupe planifie ces actions pour les instances. Celles-ci ne sont toutefois créées, supprimées ou mises à jour qu'une fois les actions planifiées terminées. Vous devez donc vérifier l'état de ces instances ou vérifier l'état du groupe lui-même à l'aide de l'outil gcloud ou de l'API.

Pour afficher l'action currentAction effectuée et l'état status de chaque instance dans un groupe d'instances géré, vous pouvez utiliser l'outil de ligne de commande gcloud ou l'API.

gcloud

gcloud compute instance-groups managed list-instances [INSTANCE_GROUP_NAME] [--filter="zone:([ZONE])" | --filter="region:([REGION])"]

gcloud renvoie une liste des instances présentes dans le groupe, avec leurs états et actions en cours. Exemple :

NAME               ZONE           STATUS    ACTION    INSTANCE_TEMPLATE  VERSION_NAME  LAST_ERROR
vm-instances-9pk4  us-central1-f            CREATING  my-new-template
vm-instances-h2r1  us-central1-f  STOPPING  DELETING  my-old-template
vm-instances-j1h8  us-central1-f  RUNNING   NONE      my-old-template
vm-instances-ngod  us-central1-f  RUNNING   NONE      my-old-template

API

Dans l'API, envoyez une requête POST à la méthode regionInstanceGroupManagers.listManagedInstances. Pour un groupe d'instances géré zonal, utilisez la méthode instanceGroupManagers.listManagedInstances.

POST https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group-name/listManagedInstances

L'API renvoie une liste des instances présentes dans le groupe, y compris les champs instanceStatus et currentAction de chaque instance.

{
 "managedInstances": [
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/vm-instances-prvp",
   "id": "5317605642920955957",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/instanceTemplates/[INSTANCE_TEMPLATE_NAME]",
   "currentAction": "REFRESHING"
  },
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/vm-instances-pz5j",
   "currentAction": "DELETING"
  },
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/vm-instances-w2t5",
   "id": "2800161036826218547",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/instanceTemplates/[INSTANCE_TEMPLATE_NAME]",
   "currentAction": "REFRESHING"
  }
 ]
}

Vous pouvez consulter l'état de chaque instance d'un groupe d'instances géré à l'aide du champ instanceStatus. Pour afficher la liste des valeurs valides du champ instanceStatus, reportez-vous à la section Consulter l'état d'une instance.

Si l'instance subit une quelconque modification, l'une des actions suivantes est insérée dans le champ currentAction pour vous aider à suivre l'évolution de cette modification. Dans le cas contraire, le champ currentAction est défini sur NONE.

Les valeurs possibles du champ currentAction sont les suivantes :

  • ABANDONING : l'instance est retirée du groupe d'instances géré.
  • CREATING : l'instance est en cours de création.
  • CREATING_WITHOUT_RETRIES : l'instance est en cours de création sans nouvelle tentative. Si l'instance n'est pas créée à la première tentative, le groupe d'instances géré n'essaie pas de la recréer.
  • DELETING : l'instance est en cours de suppression.
  • RECREATING : l'instance a été supprimée et est en cours de remplacement.
  • REFRESHING : l'instance est retirée de ses pools cibles actuels et rajoutée dans la liste des pools cibles actuels (il peut s'agir des mêmes pools ou de pools différents).
  • RESTARTING : l'instance est en cours de redémarrage à l'aide des méthodes stop et start.
  • VERIFYING : l'instance a été créée et est en cours de vérification.
  • NONE : aucune action n'est effectuée sur l'instance.

Pour vérifier si le groupe dans son ensemble est stable ou en cours de modification, consultez la section Vérifier l'état du groupe.

Vérifier les états

Si vous avez configuré l'autoréparation sur votre groupe d'instances géré, vous pouvez examiner l'état de chaque instance. Consultez la section Configurer la vérification d'état.

Vérifier si une instance de VM fait partie d'un MIG

Pour vérifier si une instance spécifique appartient actuellement à un groupe, vous pouvez utiliser la console ou l'API.

Console

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

    Accéder à la page "Instances de VM"

  2. Cliquez sur une instance pour accéder aux informations sur l'instance de VM.
  3. Si l'instance de VM fait partie d'un groupe d'instances géré, le nom de ce groupe apparaît sous l'en-tête Utilisé par. Si l'instance de VM ne fait partie d'aucun groupe, l'en-tête Utilisé par n'apparaît pas sur la page des informations sur l'instance.

API

Consultez la section Afficher les référents associés à des instances de VM.

Pour déterminer si une instance appartient ou appartenait à un groupe d'instances géré, vous pouvez également rechercher les deux clés suivantes dans les métadonnées de l'instance :

  • instance-template indique le modèle à partir duquel l'instance a été créée.
  • created-by indique le groupe d'instances géré qui a créé l'instance.

Même si vous abandonnez l'instance, elle possédera toujours ces entrées de métadonnées, à moins que vous ne les supprimiez manuellement.

Par exemple, si vous disposez d'une instance random-instance-biy et souhaitez savoir si elle a été créée par un groupe d'instances géré, vous pouvez la décrire et rechercher les clés de métadonnées mentionnées ci-dessus. Exemple :

gcloud compute instances describe random-instance-biy --zone us-central1-f

L'outil gcloud renvoie un résultat semblable à celui-ci :

canIpForward: false
cpuPlatform: Intel Ivy Bridge
creationTimestamp: '2016-08-24T14:11:38.012-07:00'
...
metadata:
  items:
  - key: instance-template
    value: projects/123456789012/global/instanceTemplates/example-it
  - key: created-by
    value: projects/123456789012/zones/us-central1-f/instanceGroupManagers/igm-metadata

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Compute Engine