Travailler avec des instances gérées


Un groupe d'instances géré (MIG) crée chacune de ses instances gérées en fonction des composants de configuration que vous utilisez : modèle d'instance, configuration facultative sur toutes les instances et configuration avec état facultative.

Chaque instance gérée est une entité de données qui représente l'état souhaité d'une instance de machine virtuelle (VM) actuelle dans un MIG.

Lisez ce document pour savoir comment utiliser de manière fiable les instances gérées d'un MIG. Par exemple, vous devrez peut-être ajouter, supprimer ou mettre à jour une instance spécifique, ou bien obtenir des informations s'y rapportant.

Pour vous assurer que les modifications apportées à votre configuration ne sont pas annulées par le MIG, il est important d'utiliser les méthodes décrites dans ce document. Si vous travaillez en dehors des méthodes du groupe pour modifier les VM d'un MIG, celui-ci peut ou non détecter que ces VM n'utilisent plus la configuration prévue du groupe et vous risquez d'obtenir des résultats inattendus. Par exemple, si vous supprimez ou mettez à jour une VM dans un MIG à l'aide de l'API des instances au lieu de l'API requise, celle du gestionnaire de groupe d'instances, le MIG ne va pas connaître votre intent. Par la suite, le MIG peut alors à tout moment tenter automatiquement de recréer ou de rétablir cette VM en fonction de la configuration du MIG.

Avant de commencer

  • Consultez les limites, puis créez un groupe.
  • 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

Qu'est-ce qu'une instance gérée ?

Une instance gérée est une entité de données dans un MIG qui contient l'état actuel et l'état souhaité d'une instance de VM,

L'état actuel d'une instance gérée inclut les champs suivants :

  • l'état du cycle de vie de l'instance, par exemple : RUNNING, STOPPING ;
  • l'action actuelle réalisée par le MIG sur une instance, par exemple : RESTARTING, VERIFYING, NONE ;
  • l'état de santé de l'instance, par exemple : HEALTHY, UNHEALTHY.

Pour une instance de VM réelle, l'état souhaité d'une instance gérée inclut les éléments suivants :

  • la version souhaitée, c'est-à-dire le nom de version et le modèle d'instance à utiliser pour l'instance ;
  • l'état préservé des éléments (tels que les disques ou les métadonnées) à conserver.

Comme le montre la Figure 1, pour chaque instance gérée d'un MIG, celui-ci maintient une VM réelle opérationnelle en fonction de la spécification de l'instance gérée.

En fonction de votre configuration, le MIG génère automatiquement des instances gérées, qui correspondent aux instances de VM réelles qu'un MIG conserve en votre nom.

Figure 1 : Relation entre les instances gérées et les VM correspondantes.

Pour afficher les spécifications d'une instance gérée, consultez la section Obtenir des informations sur les instances de VM gérées dans un MIG.

Ajouter des instances à un groupe d'instances géré

Pour ajouter des instances à un groupe d'instances géré, vous pouvez :

Pour vérifier que les instances nouvellement ajoutées fonctionnent correctement, vérifiez l'état du groupe ou vérifiez l'état des instances gérées.

Redimensionnement manuel

Si l'autoscaling n'est pas déjà configuré pour un groupe d'instances géré, vous pouvez définir la taille du groupe manuellement afin de modifier le nombre d'instances qui le composent. Reportez-vous à la section Redimensionner manuellement un groupe d'instances géré.

Autoscaling

Vous pouvez configurer des groupes d'instances gérés pour qu'ils ajoutent ou suppriment automatiquement des instances en fonction de leurs charges de travail. Cela permet à vos applications de gérer de façon optimale les hausses de trafic. En outre, cela vous permet de réduire les coûts lorsque vos besoins en ressources de calcul sont moins importants. Pour en savoir plus sur le scaling automatique de votre groupe d'instances géré, consultez la page Procéder à l'autoscaling de groupes d'instances.

Ajouter des instances avec des noms spécifiques

Si votre système dépend de noms spécifiques, vous pouvez ajouter des VM avec ces noms à un MIG existant. Les noms que vous attribuez à ces instances gérées sont conservés si le MIG recrée la VM. Pour en savoir plus, consultez la section Créer des instances avec des noms spécifiques dans les MIG.

Pour en savoir plus sur la conservation de l'état des instances de MIG, consultez la page Groupes d'instances gérés avec état.

Supprimer certaines instances d'un groupe d'instances géré

Lorsque vous supprimez des instances gérées, le groupe d'instances géré réduit la valeur targetSize spécifiée pour le groupe et supprime les instances de VM correspondantes.

Si vous configurez un MIG avec état, celui-ci supprime les configurations d'état conservées des instances. Le groupe d'instances géré supprime également les instances de tous les pools cibles auxquelles elles appartiennent.

Si le groupe fait partie d'un service de backend sur lequel le drainage de connexion est activé, le retrait ou la suppression de l'instance de VM peut prendre jusqu'à 60 secondes après la fin de la période de drainage.

Pour supprimer une instance gérée, procédez comme suit :

Mettre à jour la configuration d'une VM dans un groupe d'instances géré

Si vous devez modifier la configuration des VM d'un MIG, par exemple pour modifier le disque de démarrage ou le type de machine, ajouter des disques ou modifier d'autres propriétés de la VM, consultez la section Mettre à jour la configuration d'une VM dans un groupe d'instances géré.

Recréer des instances dans un groupe d'instances géré

Utilisez cette méthode pour mettre à jour les VM sélectionnées afin qu'elles utilisent les derniers composants de configuration de VM du groupe. Si vous devez recréer toutes les VM d'un groupe d'instances géré, lancez plutôt une mise à jour progressive.

Si le groupe fait partie d'un service de backend sur lequel le drainage de connexion est activé, le retrait ou la suppression de l'instance de VM peut prendre jusqu'à 60 secondes après la fin de la période de drainage.

Recréez les instances de VM sélectionnées dans un groupe d'instances géré à l'aide de gcloud CLI ou de REST.

gcloud

Utilisez la commande instance-groups managed recreate-instances.

gcloud compute instance-groups managed recreate-instances INSTANCE_GROUP_NAME \
    --instances INSTANCE_NAME_1,INSTANCE_NAME_2 \
    [--region REGION | --zone ZONE]

REST

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

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

{
 "instances": [
  "zones/ZONE/instances/INSTANCE_NAME_1",
  "zones/ZONE/instances/INSTANCE_NAME_2"
 ]
}

Une fois votre requête de recréation d'instances de VM dans un groupe d'instances géré envoyée, les nouvelles VM démarrent dès que le système est en mesure de les provisionner. Ce processus peut prendre un certain temps selon le nombre d'instances que vous recréez. Vérifiez l'état du groupe ou vérifiez l'état des instances gérées.

L'opération de recréation conserve le nom de l'instance de VM, mais l'horodatage de création de l'instance peut ne pas changer. Pour confirmer que l'opération de recréation a créé une instance lorsque l'horodatage de création de l'instance n'a pas changé, vérifiez l'horodatage de création du disque de démarrage associé à cette instance.

Obtenir des informations sur des instances appartenant à un groupe d'instances géré

Reportez-vous à la section Obtenir des informations sur les instances gérées d'un groupe d'instances géré.

Configurer des instances avec état dans un groupe d'instances géré

Consultez la page Configurer des groupes d'instances gérés avec état.

Étapes suivantes