Modifier ou supprimer la flexibilité des instances

Ce document explique comment modifier ou supprimer la flexibilité des instances dans un groupe d'instances géré (MIG) en modifiant la stratégie de flexibilité des instances. Il explique également comment mettre à jour le type de machine d'une VM lorsque le type de machine est supprimé de la configuration de flexibilité des instances.

Avant de commencer

  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification permet de valider votre identité pour accéder aux Google Cloud services et aux API. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :

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

    Console

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

    gcloud

    1. Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisezla en exécutant la commande suivante :

      gcloud init

      Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

  • Définissez une région et une zone par défaut.
  • REST

    Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.

      Installez la Google Cloud CLI.

      Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

    Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l' Google Cloud authentification.

Modifier la configuration de flexibilité des instances

Vous pouvez apporter les modifications suivantes en modifiant la configuration de flexibilité des instances dans un MIG :

  • Ajouter un type de machine à une sélection d'instances
  • Supprimer un type de machine d'une sélection d'instances
  • Modifier les rangs des sélections d'instances
  • Ajouter une sélection d'instances
  • Ajouter des remplacements de plate-forme de processeur et de disque minimales (aperçu)

Le MIG applique les modifications en fonction des noms de sélection d'instances que vous spécifiez. Les sélections d'instances que vous ne spécifiez pas restent inchangées. Lorsque vous modifiez une sélection d'instances, vous devez spécifier sa configuration complète lors de la modification. Si vous ne spécifiez pas la configuration complète, le MIG remplace les parties non spécifiées de la sélection d'instances. Par exemple, si vous ne souhaitez modifier qu'un rang, spécifiez le nouveau rang ainsi que les types de machines et tous les autres remplacements définis dans cette sélection. Pour afficher la configuration existante, consultez la section Afficher la flexibilité des instances.

Une fois que vous avez supprimé un type de machine de la configuration, les VM existantes avec les types de machines supprimés continuent de les utiliser. Si vous souhaitez modifier les types de machines de ces VM, vous devez mettre à jour ou recréer les VM spécifiques. Pour en savoir plus, consultez la section Mettre à jour le type de machine d'une VM pour utiliser la dernière configuration.

Pour modifier la configuration de flexibilité des instances dans un MIG, sélectionnez l'une des options suivantes :

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 dans lequel vous souhaitez modifier la flexibilité des instances.

  3. Cliquez sur Modifier.

  4. Cliquez sur Flexibilité des instances pour développer la section.

  5. Dans la section Sélections d'instances, cliquez sur Modifier les sélections.

  6. Dans la fenêtre Sélections d'instances, cliquez sur l'icône Activer/Désactiver d'une sélection d'instances pour ouvrir la vue Modifier la sélection d'instances.

    Lorsque vous modifiez une sélection d'instances, vous pouvez apporter les modifications suivantes :

    • Modifiez le nom et le rang de la sélection d'instances. Pour ce faire, modifiez les valeurs dans les champs Nom et Rang.
    • Ajoutez un nouveau type de machine à la sélection. Pour ce faire, cliquez sur Ajouter un type de machine.
    • Supprimez des types de machines. Pour ce faire, sélectionnez les types de machines, puis cliquez sur Supprimer.
    • Ajoutez ou modifiez la plate-forme de processeur minimale ou les remplacements de disque (aperçu). Pour ce faire, suivez les instructions de la section Remplacements.
  7. Modifiez la sélection selon vos besoins, puis cliquez sur OK.

  8. Une fois les modifications effectuées dans la fenêtre Sélections d'instances, cliquez sur OK.

  9. Cliquez sur Enregistrer pour appliquer les modifications.

gcloud

Pour modifier une configuration de flexibilité des instances, utilisez la commande bêtainstance-groups managed update.

  gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \
      --region REGION \
      --instance-flexibility-policy={"instanceSelections": \
        {"INSTANCE_SELECTION_1":{"rank":RANK_1,"machineTypes":["MACHINE_TYPE_1","MACHINE_TYPE_2"],"minCpuPlatform":"MIN_CPU_PLATFORM_1","disks":[{"deviceName":"DEVICE_NAME_1","boot":true,"initializeParams":{"sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE_NAME"}}]}, \
        "INSTANCE_SELECTION_2":{"rank":RANK_2,"machineTypes":["MACHINE_TYPE_3","MACHINE_TYPE_4"],"minCpuPlatform":"MIN_CPU_PLATFORM_2","disks":[{"deviceName":"DEVICE_NAME_2","boot":true,"initializeParams":{"sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE_NAME"}}]}}}

Vous pouvez également utiliser un fichier YAML ou JSON pour configurer la stratégie de flexibilité des instances. Pour ce faire, utilisez l'--flags-file indicateur au lieu de l'--instance-flexibility-policy indicateur et spécifiez le nom de fichier. Par exemple, utilisez --flags-file=FILE_NAME.YAML. Consultez l'exemple de fichier YAML pour configurer la flexibilité des instances.

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME: nom du MIG dans lequel vous souhaitez vérifier la configuration de flexibilité des instances.
  • REGION : région où se trouve le MIG.
  • INSTANCE_SELECTION: nom de la sélection d'instances à modifier. Lorsque vous mettez à jour une sélection d'instances, vous devez spécifier sa configuration complète, y compris toutes les propriétés que vous ne modifiez pas, pour vous assurer que le MIG conserve les propriétés inchangées.

REST

Pour modifier une configuration de flexibilité des instances, envoyez une PATCH requête à la méthode bêta regionInstanceGroupManagers.patch.

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

  {
    "instanceFlexibilityPolicy": {
      "instanceSelections": {
        "INSTANCE_SELECTION_1": {
          "machineTypes": [
            "MACHINE_TYPE_1",
            "MACHINE_TYPE_2"
          ],
          "minCpuPlatform": "MIN_CPU_PLATFORM_1",
          "disks": [
            DISK_DEFINITION_1
          ],
          "rank": RANK_1
        },
        "INSTANCE_SELECTION_2": {
          "machineTypes": [
            "MACHINE_TYPE_3",
            "MACHINE_TYPE_4"
          ],
          "minCpuPlatform": "MIN_CPU_PLATFORM_2",
          "disks": [
            DISK_DEFINITION_2
          ],
          "rank": RANK_2
        }
      }
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : votre ID de projet.
  • REGION : région où se trouve le MIG.
  • INSTANCE_GROUP_NAME: nom du MIG dans lequel vous souhaitez vérifier la configuration de flexibilité des instances.
  • INSTANCE_SELECTION: nom de la sélection d'instances à modifier. Lorsque vous mettez à jour une sélection d'instances, vous devez spécifier sa configuration complète, y compris toutes les propriétés que vous ne modifiez pas, pour vous assurer que le MIG conserve les propriétés inchangées.

Supprimer la configuration de flexibilité des instances

Vous pouvez supprimer toutes les sélections d'instances ou certaines d'entre elles dans un MIG.

  • Pour supprimer toutes les sélections d'instances dans un MIG, consultez la section Supprimer toutes les sélections d'instances. Lorsque vous supprimez toutes les sélections d'instances, le MIG utilise le type de machine spécifié dans le modèle d'instance pour créer des VM dans le groupe.

  • Pour supprimer des sélections d'instances individuelles par nom, consultez la section Supprimer des sélections d'instances spécifiques. Cette opération ne supprime que des sélections d'instances spécifiques, et le MIG conserve les autres.

Après avoir supprimé des sélections d'instances, les VM existantes qui utilisent les types de machines des sélections d'instances supprimées continuent d'utiliser le même type de machine. Pour que les modifications prennent effet, vous devez mettre à jour ou recréer ces VM. Pour en savoir plus, consultez la section Mettre à jour le type de machine d'une VM pour utiliser la dernière configuration.

Supprimer toutes les sélections d'instances

Pour supprimer toutes les sélections d'instances, sélectionnez l'une des options suivantes :

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 dans lequel vous souhaitez supprimer toutes les sélections d'instances.

  3. Cliquez sur Modifier.

  4. Cliquez sur Flexibilité des instances pour développer la section.

  5. Dans la section Sélections d'instances, cliquez sur Modifier les sélections.

  6. Dans la fenêtre Sélections d'instances, cliquez sur l'icône Supprimer à côté de chaque sélection d'instances.

  7. Cliquez sur OK.

  8. Cliquez sur Enregistrer.

gcloud

Pour supprimer toutes les sélections d'instances dans un MIG, utilisez la instance-groups managed update commande :

  gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
      --region REGION \
      --remove-instance-selections-all

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME: nom du MIG à partir duquel vous souhaitez supprimer toutes les sélections d'instances.
  • REGION : région où se trouve le MIG.

REST

Pour supprimer toutes les sélections d'instances dans un MIG, envoyez une PATCH requête à la regionInstanceGroupManagers.patch méthode.

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

  {
    "instanceFlexibilityPolicy": {
      "instanceSelections": null
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : votre ID de projet.
  • REGION : région où se trouve le MIG.
  • INSTANCE_GROUP_NAME: nom du MIG à partir duquel vous souhaitez supprimer une sélection d'instances.

Supprimer des sélections d'instances spécifiques

Pour supprimer des sélections d'instances spécifiques, sélectionnez l'une des options suivantes :

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 dans lequel vous souhaitez supprimer des sélections d'instances spécifiques.

  3. Cliquez sur Modifier.

  4. Cliquez sur Flexibilité des instances pour développer la section.

  5. Dans la section Sélections d'instances, cliquez sur Modifier les sélections.

  6. Dans la fenêtre Sélections d'instances, cliquez sur l'icône Supprimer à côté de la sélection d'instances que vous souhaitez supprimer.

  7. Cliquez sur OK.

  8. Cliquez sur Enregistrer.

gcloud

Pour supprimer des sélections d'instances spécifiques dans un MIG, utilisez la instance-groups managed update commande :

  gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
      --region REGION \
      --remove-instance-selections INSTANCE_SELECTION

Remplacez les éléments suivants :

  • INSTANCE_GROUP_NAME: nom du MIG à partir duquel vous souhaitez supprimer une sélection d'instances.
  • REGION : région où se trouve le MIG.
  • INSTANCE_SELECTION: nom de la sélection d'instances que vous souhaitez supprimer. S'il existe plusieurs sélections d'instances, fournissez une liste de noms séparés par une virgule.

REST

Pour supprimer des sélections d'instances spécifiques dans un MIG, utilisez la regionInstanceGroupManagers.patch méthode.

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

  {
    "instanceFlexibilityPolicy": {
      "instanceSelections": {
        "INSTANCE_SELECTION": null
      }
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : votre ID de projet.
  • REGION : région où se trouve le MIG.
  • INSTANCE_GROUP_NAME: nom du MIG à partir duquel vous souhaitez supprimer une sélection d'instances.
  • INSTANCE_SELECTION: nom de la sélection d'instances que vous souhaitez supprimer. S'il existe plusieurs sélections d'instances, spécifiez-les toutes. Par exemple, "selection-1": null,"selection-2": null.

Mettre à jour le type de machine d'une VM pour utiliser la dernière configuration

Si des VM d'un MIG utilisent un type de machine qui a été supprimé de la configuration de flexibilité des instances, vous devez mettre à jour ou recréer la VM pour mettre à jour son type de machine.

Pour mettre à jour ou recréer une VM, utilisez l'une des options suivantes :

  • Mettez à jour les VM à l'aide de la regionInstanceGroupManagers.applyUpdatesToInstances méthode. Lorsque vous utilisez la méthode applyUpdatesToInstances, le champ mostDisruptiveAllowedAction doit être RESTART OU REPLACE.

  • Recréez les VM à l'aide de la regionInstanceGroupManagers.recreateInstances méthode.

  • Recréez les VM en les supprimant d'abord puis en redimensionnant le MIG au nombre de VM requis.

Étape suivante