Ce document explique comment créer un groupe d'instances géré (MIG) qui conserve les données sur disques avec un nom d'appareil donné pour toutes les VM du MIG, même en cas de recréation de VM, par exemple lorsqu'une VM du MIG est autoréparée, mise à jour ou recréée. La conservation des disques est utile pour certaines charges de travail, par exemple pour les bases de données ou les anciennes applications.
En plus de conserver les disques pour toutes les VM du groupe, vous pouvez également configurer un MIG avec état pour les éléments suivants :
- Vous pouvez ajouter et conserver des disques spécifiques à une instance.
- Vous pouvez ajouter et conserver des métadonnées spécifiques à une instance.
- Vous pouvez ajouter et conserver des adresses IP.
Pour en savoir plus, consultez la présentation des MIG avec état.
Vous pouvez également découvrir d'autres scénarios de base pour la création d'un MIG.
Avant de commencer
- Créez un modèle d'instance, qui est nécessaire pour créer 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
-
Installez Google Cloud CLI, puis initialisez-la en exécutant la commande suivante :
gcloud init
- Définissez une région et une zone par défaut.
Terraform
Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Créez des identifiants d'authentification locaux pour votre compte Google :
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
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
Un MIG doté d'une configuration avec état (un MIG avec état) présente les limites suivantes :
- Vous ne pouvez pas utiliser l'autoscaling si votre MIG dispose d'une configuration avec état.
- Si vous souhaitez utiliser des mises à jour progressives automatiques, vous devez définir la méthode de remplacement sur
RECREATE
. - Pour les MIG régionaux avec état, vous devez désactiver la redistribution proactive (définissez le type de redistribution sur
NONE
) pour empêcher la suppression d'instances avec état lors de redistributions interzones automatiques. - Si vous utilisez une configuration sur toutes les instances pour remplacer les propriétés d'un modèle d'instance, vous ne pouvez pas spécifier ces propriétés à la fois dans une configuration par instance et dans une configuration sur toutes les instances du groupe.
Pour afficher la liste complète des limites des MIG, qui varie en fonction de la configuration que vous utilisez, consultez la section Limites des MIG.
Créer un MIG avec des disques avec état
Utilisez la console Google Cloud, la gcloud CLI, Terraform ou REST.
Console
-
Accédez à la page Groupes d'instances.
Accéder à la page "Groupes d'instances"
Les étapes restantes apparaîtront automatiquement dans la console Google Cloud.
-
Cliquez sur
Créer un groupe d'instances . -
Sélectionnez l'option
Nouveau groupe d'instances géré (avec état) . - Attribuez un nom et éventuellement une description à votre groupe d'instances.
- Choisissez un modèle d'instance pour le groupe d'instances ou créez-en un.
- Dans le champ
Nombre d'instances , spécifiez le nombre initial de VM dont vous avez besoin dans ce groupe. - Dans la section
Configuration avec état , sous Configuration du groupe, cliquez sur le disque à définir avec état, puis procédez comme suit. - Dans la section Avec état, sélectionnez Oui.
- Dans la liste Lors de la suppression définitive de l'instance, indiquez si vous souhaitez dissocier ou supprimer le disque lorsque vous supprimez définitivement la VM.
- Pour enregistrer les paramètres, cliquez sur OK.
- Pour créer le MIG, cliquez sur
Créer .
gcloud
Pour spécifier les disques du modèle d'instance qui doivent être avec état lors de la création d'un MIG, utilisez l'option --stateful-disk
avec la commande gcloud compute instance-groups managed create
:
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --template INSTANCE_TEMPLATE \ --size SIZE \ --stateful-disk device-name=DEVICE_NAME[,auto-delete=DELETE_RULE]
Remplacez les éléments suivants :
INSTANCE_GROUP_NAME
: nom du groupe d'instances géré à créer.INSTANCE_TEMPLATE
: nom du modèle d'instance à utiliser lors de la création d'instances. Pour un modèle d'instance régional, vous devez spécifier l'URL complète ou partielle du modèle.https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
est un exemple d'URL complète etprojects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
est un exemple d'URL partielle.SIZE
: nombre initial de VM dont vous avez besoin dans ce groupe.DEVICE_NAME
: nom de l'appareil d'un disque spécifié dans le modèle d'instance.DELETE_RULE
: valeur qui indique ce qui doit arriver à un disque avec état lorsqu'une VM est supprimée. Les options disponibles sont les suivantes :never
: (Par défaut) Ne supprimez jamais le disque. À la place, dissociez le disque lorsque sa VM est supprimée.on-permanent-instance-deletion
: supprimez le disque lorsque son instance de VM est définitivement supprimée du groupe d'instances, par exemple lorsque l'instance gérée est supprimée manuellement ou lorsque la taille du groupe est réduite.
Quelle que soit la valeur de la règle de suppression, les disques avec état sont toujours conservés lors des opérations d'autoréparation, de mise à jour et de recréation de VM.
Terraform
Si vous n'avez pas encore créé de modèle d'instance, qui spécifie le type de machine, l'image de disque de démarrage, le réseau et les autres propriétés de VM que vous souhaitez pour chaque VM de votre MIG, créez Un modèle d'instance.
Pour spécifier les disques du modèle d'instance qui doivent être avec état lors de la création d'un MIG, incluez le bloc stateful_disk
. L'exemple suivant crée un MIG zonal avec des disques avec état. Pour en savoir plus sur la ressource utilisée dans l'exemple, consultez la section Ressource google_compute_instance_group_manager
.
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.
REST
Pour spécifier les disques du modèle d'instance qui doivent être avec état lors de la création d'un MIG, incluez-les dans le champ statefulPolicy
du corps de la requête.
Pour un MIG zonal, utilisez la méthode instanceGroupManagers.insert
ou, pour un MIG régional, la méthode regionInstanceGroupManagers.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instanceGroupManagers { "name": "NAME", "versions": [ { "instanceTemplate": "global/instanceTemplates/TEMPLATE" } ], "targetSize": SIZE, "statefulPolicy": { "preservedState": { "disks": { "DEVICE_NAME": {"autoDelete": "DELETE_RULE" }, "DEVICE_NAME": {"autoDelete": "DELETE_RULE" } } } } }
Remplacez les éléments suivants :
PROJECT
: ID du projet pour la requête.ZONE
: zone où se trouve le MIG (s'applique à un MIG zonal).- Pour un MIG régional, remplacez
zones/ZONE
parregions/REGION
et spécifiez la région du MIG.
- Pour un MIG régional, remplacez
NAME
: nom du MIG à créer.TEMPLATE
: nom du modèle d'instance à utiliser lors de la création d'instances.SIZE
: nombre initial d'instances dont vous avez besoin dans ce groupe.DEVICE_NAME
: nom de l'appareil d'un disque spécifié dans le modèle d'instance.DELETE_RULE
: valeur qui indique ce qui doit arriver au disque avec état lorsque l'instance de VM est supprimée. Les options disponibles sont les suivantes :never
: (Par défaut) Ne supprimez jamais le disque. Dissociez le disque lorsque la VM est supprimée.on_permanent_instance_deletion
: supprimez le disque lorsque sa VM est définitivement supprimée du groupe d'instances, par exemple lorsque l'instance gérée est supprimée manuellement ou lorsque la taille du groupe est réduite.
Quelle que soit la valeur de la règle de suppression, les disques avec état sont toujours conservés lors des opérations d'autoréparation, de mise à jour et de recréation d'instances.
Étape suivante
- Apprenez-en plus sur les MIG avec état et à quel moment les utiliser.
- Apprenez-en plus sur la configuration des disques avec état dans les MIG.
- Apprenez-en plus sur le fonctionnement des groupes d'instances gérés avec état.
- En savoir plus sur la configuration des MIG avec état pour les disques, les métadonnées et les adresses IP