Créer un MIG N1 optimisé pour l'IA avec des GPU

Ce document explique comment créer un groupe d'instances géré (MIG) qui utilise la série N1 avec des GPU associés. Pour en savoir plus sur ces types de machines, consultez la section Série N1.

La création d'un MIG vous permet de gérer plusieurs machines virtuelles (VM) comme une seule entité. Chaque VM d'un MIG est basée sur un modèle d'instance. En gérant automatiquement les VM du groupe, les MIG offrent une disponibilité et une évolutivité élevées. Pour en savoir plus sur les MIG, consultez Groupes d'instances gérés dans la documentation Compute Engine.

Pour découvrir d'autres méthodes de création de VM ou de clusters, consultez Présentation des options de déploiement.

Limites

Lorsque vous créez un MIG avec des VM N1 dotées de GPU, tenez compte des limites du type de machine et du MIG.

Limites pour les VM N1 avec GPU

Pour connaître les limites qui s'appliquent aux types de machines N1 avec GPU, consultez les ressources suivantes :

Limites du MIG

Avant de commencer

Avant de créer un MIG, si vous ne l'avez pas déjà fait, procédez comme suit :

  1. Choisissez une option de consommation : l'option de consommation que vous choisissez détermine comment vous obtenez et utilisez les ressources GPU. Pour en savoir plus, consultez Choisir une option de consommation.
  2. Obtenir de la capacité : le processus d'obtention de la capacité diffère pour chaque option de consommation. Pour en savoir plus sur la procédure à suivre pour obtenir de la capacité pour l'option de consommation choisie, consultez Présentation de la capacité.

Rôles requis

Pour obtenir les autorisations nécessaires à la création d'un MIG, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur le projet. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient les autorisations requises pour créer un MIG. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour créer un MIG :

  • Pour créer un MIG : compute.instanceGroupManagers.create sur le projet

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Présentation

La création d'un MIG avec le type de machine N1 avec GPU T4 ou V100 comprend les étapes suivantes :

  1. Créer un modèle d'instance
  2. Créer un MIG
  3. Installer des pilotes de GPU.

Créer un modèle d'instance

Spécifiez les propriétés de VM pour un MIG en créant un modèle d'instance.

Pour créer un modèle d'instance, sélectionnez l'une des options suivantes :

Les commandes suivantes définissent également le niveau d'accès pour vos instances. Pour simplifier la gestion des autorisations, Google vous recommande de définir le niveau d'accès d'une instance sur cloud-platform, puis d'utiliser des rôles IAM pour définir les services auxquels l'instance peut accéder. Pour en savoir plus, consultez les bonnes pratiques concernant les niveaux d'accès.

gcloud

Pour créer un modèle d'instance régional, exécutez la commande gcloud compute instance-templates create.

Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant à votre option de consommation.

Réservation

Les instances N1 avec GPU T4 ou V100 sont compatibles avec les types de réservations suivants :

  • Réservations à la demande
  • Réservations futures standards

Pour utiliser ces types de réservations, une instance doit utiliser le modèle de provisionnement standard. Par exemple, utilisez les paramètres de création suivants.

Avant d'exécuter la commande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY \
    --reservation=RESERVATION

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • RESERVATION_AFFINITY : les réservations que l'instance est autorisée à utiliser, si possible. Spécifiez l'une des options suivantes :

      • any (la capacité de réservation est facultative) : il s'agit de l'option par défaut. L'instance tente d'utiliser la capacité d'une réservation à consommation automatique, ce qui ne se produit que si la capacité de réservation correspondante est disponible. Sinon, l'instance utilise la capacité à la demande.

      • specific (Capacité de réservation requise) : exige que l'instance utilise la capacité d'une réservation spécifiquement ciblée. L'instance n'est pas autorisée à utiliser la capacité à la demande. Si la capacité de réservation n'est pas disponible, la création de l'instance échoue.

    • RESERVATION : réservation à utiliser. Spécifiez l'une des valeurs suivantes en fonction de la valeur que vous avez spécifiée pour RESERVATION_AFFINITY :

      • Si vous avez spécifié any, remplacez RESERVATION par une chaîne vide (""). Vous pouvez également supprimer complètement l'option --reservation.
      • Si vous avez spécifié specific, remplacez RESERVATION par ce qui suit :

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Remplacez les éléments suivants :

        • RESERVATION_OWNER_PROJECT_ID : ID du projet dans lequel la réservation a été créée.
        • RESERVATION_NAME : nom de la réservation.
  2. Par défaut, l'instance redémarre automatiquement en cas de plantage ou si Compute Engine l'arrête pour un arrêt programmé, comme un événement de maintenance. Si vous souhaitez désactiver le redémarrage automatique, ajoutez le flag suivant :

    --no-restart-on-failure
  3. Facultatif : Pour associer des disques SSD locaux, ajoutez l'indicateur --local-ssd suivant pour chaque disque SSD local.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Remplacez les éléments suivants :

    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  4. Exécutez la commande.

À la demande

Avant d'exécuter la commande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • RESERVATION_AFFINITY : les réservations que l'instance est autorisée à utiliser, si possible. Spécifiez l'une des options suivantes :

      • any (la capacité de réservation est facultative) : il s'agit de l'option par défaut. L'instance tente d'utiliser la capacité d'une réservation à consommation automatique, ce qui ne se produit que si la capacité de réservation correspondante est disponible. Sinon, l'instance utilise la capacité à la demande.

      • none (capacité à la demande requise) : empêche l'instance d'utiliser la capacité de réservation.

  2. Par défaut, l'instance redémarre automatiquement en cas de plantage ou si Compute Engine l'arrête pour un arrêt programmé, comme un événement de maintenance. Si vous souhaitez désactiver le redémarrage automatique, ajoutez le flag suivant :

    --no-restart-on-failure
  3. Facultatif : Pour associer des disques SSD locaux, ajoutez l'indicateur --local-ssd suivant pour chaque disque SSD local.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Remplacez les éléments suivants :

    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  4. Exécutez la commande.

Démarrage flexible

Avant d'exécuter la commande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --reservation-affinity=none \
    --instance-termination-action=DELETE \
    --max-run-duration=RUN_DURATION \
    --maintenance-policy=TERMINATE \
    --provisioning-model=FLEX_START

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • RUN_DURATION : durée d'exécution des VM demandées. Vous devez formater la valeur en nombre de jours, d'heures, de minutes ou de secondes, suivis respectivement de d, h, m et s. Par exemple, spécifiez 30m pour 30 minutes ou 1d2h3m4s pour un jour, deux heures, trois minutes et quatre secondes. Cette valeur doit être comprise entre 10 minutes et 7 jours.
  2. Facultatif : Pour associer des disques SSD locaux, ajoutez l'indicateur --local-ssd suivant pour chaque disque SSD local.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Remplacez les éléments suivants :

    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Exécutez la commande.

Spot

Avant d'exécuter la commande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=SPOT \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --no-restart-on-failure

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • TERMINATION_ACTION : action à effectuer lorsque Compute Engine préempte l'instance, soit STOP (par défaut), soit DELETE.

  2. Facultatif : Pour associer des disques SSD locaux, ajoutez l'indicateur --local-ssd suivant pour chaque disque SSD local.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Remplacez les éléments suivants :

    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Exécutez la commande.

REST

Pour créer un modèle d'instance régional, envoyez une requête POST à la méthode regionInstanceTemplates.insert :

Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant à votre option de consommation.

Réservation

Les instances N1 avec GPU T4 ou V100 sont compatibles avec les types de réservations suivants :

  • Réservations à la demande
  • Réservations futures standards

Pour utiliser ces types de réservations, une instance doit utiliser le modèle de provisionnement standard. Par exemple, utilisez les paramètres de création suivants.

Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
      }
    ],
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "diskSizeGb": "DISK_SIZE",
          "diskType": "DISK_TYPE",
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode": "READ_WRITE",
        "type": "PERSISTENT"
      }
    ],
    "serviceAccounts": [
      {
        "email": "default",
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      }
    ],
    "scheduling": {
    "provisioningModel": "STANDARD",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": AUTOMATIC_RESTART
  },
  "reservationAffinity": {
    "consumeReservationType": "RESERVATION_AFFINITY",
    "key": "compute.googleapis.com/reservation-name",
    "values": [
      "RESERVATION"
    ]
  }
  }
}

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • AUTOMATIC_RESTART : indique si votre instance redémarre automatiquement en cas de plantage ou d'arrêt programmé par Compute Engine, par exemple lors d'un événement de maintenance. Spécifiez true pour activer le redémarrage automatique (par défaut) ou false pour le désactiver.

    • RESERVATION_AFFINITY : les réservations que l'instance est autorisée à utiliser, si possible. Spécifiez l'une des options suivantes :

      • ANY_RESERVATION (la capacité de réservation est facultative) : il s'agit de l'option par défaut. L'instance tente d'utiliser la capacité d'une réservation consommée automatiquement, ce qui ne se produit que si la capacité de réservation correspondante est disponible. Sinon, l'instance utilise une capacité à la demande.

      • SPECIFIC_RESERVATION (Capacité de réservation requise) : exige que l'instance utilise la capacité d'une réservation spécifiquement ciblée. L'instance n'est pas autorisée à utiliser la capacité à la demande. Si la capacité de réservation n'est pas disponible, la création de l'instance échoue.

    • RESERVATION : réservation à utiliser. Spécifiez l'une des valeurs suivantes en fonction de la valeur que vous avez spécifiée pour RESERVATION_AFFINITY :

      • Si vous avez spécifié ANY_RESERVATION, supprimez RESERVATION afin que la valeur soit une chaîne vide (""). Vous pouvez également supprimer entièrement les champs key et values.
      • Si vous avez spécifié SPECIFIC_RESERVATION, remplacez RESERVATION par ce qui suit :

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Remplacez les éléments suivants :

        • RESERVATION_OWNER_PROJECT_ID : ID du projet dans lequel la réservation a été créée.
        • RESERVATION_NAME : nom de la réservation.
  2. Facultatif : Pour utiliser des disques SSD locaux, ajoutez le champ suivant au champ disks[] pour chaque disque SSD local. Séparez chaque sous-champ disks[] (y compris le disque de démarrage) par une virgule.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Remplacez les éléments suivants :

    • ZONE : zone spécifiée.
    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Envoyez la demande.

À la demande

Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
      }
    ],
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "diskSizeGb": "DISK_SIZE",
          "diskType": "DISK_TYPE",
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode": "READ_WRITE",
        "type": "PERSISTENT"
      }
    ],
    "serviceAccounts": [
      {
        "email": "default",
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      }
    ],
    "scheduling": {
    "provisioningModel": "STANDARD",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": AUTOMATIC_RESTART
  },
  "reservationAffinity": {
    "consumeReservationType": "RESERVATION_AFFINITY"
  }
  }
}

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • AUTOMATIC_RESTART : indique si votre instance redémarre automatiquement en cas de plantage ou d'arrêt programmé par Compute Engine, par exemple lors d'un événement de maintenance. Spécifiez true pour activer le redémarrage automatique (par défaut) ou false pour le désactiver.

    • RESERVATION_AFFINITY : les réservations que l'instance est autorisée à utiliser, si possible. Spécifiez l'une des options suivantes :

      • ANY_RESERVATION (la capacité de réservation est facultative) : il s'agit de l'option par défaut. L'instance tente d'utiliser la capacité d'une réservation consommée automatiquement, ce qui ne se produit que si la capacité de réservation correspondante est disponible. Sinon, l'instance utilise une capacité à la demande.

      • NO_RESERVATION (capacité à la demande requise) : empêche l'instance d'utiliser la capacité de réservation.

  2. Facultatif : Pour utiliser des disques SSD locaux, ajoutez le champ suivant au champ disks[] pour chaque disque SSD local. Séparez chaque sous-champ disks[] (y compris le disque de démarrage) par une virgule.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Remplacez les éléments suivants :

    • ZONE : zone spécifiée.
    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Envoyez la demande.

Démarrage flexible

Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
      }
    ],
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "diskSizeGb": "DISK_SIZE",
          "diskType": "DISK_TYPE",
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode": "READ_WRITE",
        "type": "PERSISTENT"
      }
    ],
    "serviceAccounts": [
      {
        "email": "default",
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      }
    ],
    "reservationAffinity": {
        "consumeReservationType": "NO_RESERVATION"
      },
    "scheduling": {
        "instanceTerminationAction": "DELETE",
        "maxRunDuration": {
          "seconds": RUN_DURATION
        },
        "onHostMaintenance": "TERMINATE",
        "provisioningModel": "FLEX_START"
      }

  }
}

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • RUN_DURATION : durée, en secondes, pendant laquelle vous souhaitez que les VM demandées s'exécutent. La valeur doit être comprise entre 600, soit 600 secondes (10 minutes), et 604800, soit 604 800 secondes (7 jours).
  2. Facultatif : Pour utiliser des disques SSD locaux, ajoutez le champ suivant au champ disks[] pour chaque disque SSD local. Séparez chaque sous-champ disks[] (y compris le disque de démarrage) par une virgule.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Remplacez les éléments suivants :

    • ZONE : zone spécifiée.
    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Envoyez la demande.

Spot

Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
      }
    ],
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "diskSizeGb": "DISK_SIZE",
          "diskType": "DISK_TYPE",
          "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode": "READ_WRITE",
        "type": "PERSISTENT"
      }
    ],
    "serviceAccounts": [
      {
        "email": "default",
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      }
    ],
    "scheduling":
    {
      "provisioningModel": "SPOT",
      "instanceTerminationAction": "TERMINATION_ACTION",
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": false
    }
  }
}

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_TEMPLATE_NAME : nom du modèle d'instance.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance N1 avec GPU T4 ou V100. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • ACCELERATOR_COUNT : nombre de GPU que vous souhaitez associer à votre VM N1. Pour obtenir la liste des limites de GPU en fonction du type de machine de votre VM, consultez les informations sur les GPU N1 dans la documentation Compute Engine.
    • ACCELERATOR_TYPE : type d'accélérateur pour les VM N1 que vous souhaitez utiliser. Pour les charges de travail d'IA, nous vous recommandons d'utiliser des GPU T4 ou V100.
    • IMAGE_FAMILY : famille d'images à laquelle appartient l'image de l'OS que vous souhaitez utiliser. Pour obtenir la liste de tous les systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • REGION : région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille des volumes Google Cloud Hyperdisk ou Limites de taille des volumes Persistent Disk, selon le type de disque.
    • DISK_TYPE : type de disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU de la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • TERMINATION_ACTION : action à effectuer lorsque Compute Engine préempte l'instance, soit STOP (par défaut), soit DELETE.

  2. Facultatif : Pour utiliser des disques SSD locaux, ajoutez le champ suivant au champ disks[] pour chaque disque SSD local. Séparez chaque sous-champ disks[] (y compris le disque de démarrage) par une virgule.

    Assurez-vous que le nombre de disques SSD locaux que vous associez est autorisé pour votre type de machine. Pour en savoir plus, consultez À propos des disques SSD locaux dans la documentation Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Remplacez les éléments suivants :

    • ZONE : zone spécifiée.
    • INTERFACE_TYPE : type d'interface de disque que vous souhaitez utiliser pour le disque SSD local. Si votre image de disque de démarrage inclut des pilotes NVMe optimisés, spécifiez NVME. Spécifiez SCSI pour les autres images.

    Après avoir créé une VM avec des disques SSD locaux, vous devez formater et installer chaque périphérique pour pouvoir l'utiliser.

  3. Envoyez la demande.

Une fois créé, vous pouvez consulter le modèle d'instance pour voir son ID et examiner les propriétés de l'instance.

Créer un MIG

Après avoir terminé toutes les étapes précédentes, créez un MIG en fonction de votre scénario :

Scénario Méthode pour créer un MIG et des VM Exemple
Vous disposez de plusieurs tâches ou de tâches parallèles pouvant démarrer avec n'importe quel nombre de VM. Créez un MIG et utilisez la taille cible pour spécifier le nombre de VM que vous souhaitez inclure dans le groupe.

Consultez Créer un MIG avec une taille cible.

Jobs d'inférence ML
Vous avez un job qui nécessite une distribution sur un nombre exact de VM. Créez un MIG sans VM, puis créez une demande de redimensionnement dans le MIG. La requête de redimensionnement vous permet d'obtenir des VM simultanément.

Consultez Créer un MIG et une demande de redimensionnement.

Jobs d'entraînement et d'affinage de ML distribués

Créer un MIG avec une taille cible

Si vous pouvez démarrer votre job sans créer toutes les VM en même temps, créez un MIG avec une taille cible. La taille cible détermine le nombre de VM dans le MIG. Le MIG commence à créer des VM en fonction de la disponibilité actuelle des ressources. Si des ressources sont temporairement indisponibles, le MIG tente continuellement de créer des VM pour atteindre la taille cible.

Pour créer un MIG avec une taille cible, sélectionnez l'une des options suivantes :

gcloud

Pour créer un MIG avec une taille cible spécifiée, utilisez la commande instance-groups managed create.

Créez un MIG zonal ou régional comme suit :

  • Pour créer un MIG zonal, utilisez la commande suivante :
    gcloud compute instance-groups managed create MIG_NAME \
      --template=INSTANCE_TEMPLATE_URL \
      --size=TARGET_SIZE \
      --zone=ZONE
    
  • Pour créer un MIG régional, utilisez la commande suivante :
    gcloud compute instance-groups managed create MIG_NAME \
        --template=INSTANCE_TEMPLATE_URL \
        --size=TARGET_SIZE \
        --region=REGION
    
Remplacez les éléments suivants :
  • MIG_NAME : nom du MIG.
  • INSTANCE_TEMPLATE_URL : URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :
    • Pour un modèle d'instance régional : projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Pour un modèle d'instance global : INSTANCE_TEMPLATE_ID
  • TARGET_SIZE : nombre d'instances que vous souhaitez inclure dans le MIG.
  • ZONE : zone dans laquelle vous souhaitez créer le MIG.
  • REGION : région dans laquelle vous souhaitez créer le MIG. Pour un MIG régional, vous pouvez spécifier les zones de cette région à l'aide de l'indicateur --zones.

REST

Pour créer un MIG avec une taille cible spécifiée, envoyez une requête POST.

Créez un MIG zonal ou régional comme suit :

  • Pour créer un MIG zonal, envoyez une requête POST à la méthode instanceGroupManagers.insert.
    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    {
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ],
      "name": "MIG_NAME",
      "targetSize": TARGET_SIZE
    }
    
  • Pour créer un MIG régional, envoyez une requête POST à la méthode regionInstanceGroupManagers.insert.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "name": "MIG_NAME",
        "instanceTemplate": "INSTANCE_TEMPLATE_URL",
        "targetSize": TARGET_SIZE
      }
    
Remplacez les éléments suivants :
  • PROJECT_ID : ID du projet.
  • ZONE : zone dans laquelle vous souhaitez créer le MIG.
  • REGION : région dans laquelle vous souhaitez créer le MIG.
  • INSTANCE_TEMPLATE_URL : URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :
    • Pour un modèle d'instance régional : projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Pour un modèle d'instance global : INSTANCE_TEMPLATE_ID
  • MIG_NAME : nom du MIG.
  • TARGET_SIZE : nombre d'instances que vous souhaitez inclure dans le MIG.

Créer un MIG et une demande de redimensionnement

Si vous avez besoin de plusieurs VM en même temps pour démarrer un job, créez un MIG, puis créez une demande de redimensionnement dans le MIG, comme décrit dans cette section.

Pour créer une demande de redimensionnement dans un MIG, sélectionnez l'une des options suivantes :

gcloud

Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.

Réservation

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

À la demande

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

Démarrage flexible

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

  • Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci :

    1. Créez un MIG zonal à l'aide de la commande instance-groups managed create comme suit.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --default-action-on-vm-failure=do-nothing \
          --zone=ZONE
      
    2. Créez une demande de redimensionnement dans le MIG zonal à l'aide de la commande instance-groups managed resize-requests create comme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --zone=ZONE
      
  • Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :

    1. Créez un MIG régional à l'aide de la commande instance-groups managed create comme suit.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --default-action-on-vm-failure=do-nothing \
      
          --region=REGION \
          --target-distribution-shape=any-single-zone \
          --instance-redistribution-type=none
        
    2. Créez une demande de redimensionnement dans le MIG régional à l'aide de la commande instance-groups managed resize-requests create comme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --region=REGION
      

Spot

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

Remplacez les éléments suivants :
  • MIG_NAME : nom du MIG.
  • INSTANCE_TEMPLATE_URL : URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :
    • Pour un modèle d'instance régional : projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Pour un modèle d'instance global : INSTANCE_TEMPLATE_ID
  • ZONE : zone dans laquelle vous souhaitez créer le MIG. Pour un MIG régional, vous devez également spécifier une zone. Cette zone doit être celle qui contient le profil de votre réseau VPC et doit être une zone où le type de machine est disponible. Pour en savoir plus, consultez la section Limites.
  • RESIZE_REQUEST_NAME : nom de la requête de redimensionnement, qui doit être unique dans le MIG spécifié. Sinon, la création de la demande de redimensionnement échoue.
  • COUNT : nombre d'instances à ajouter simultanément au MIG.
  • REGION : région dans laquelle vous souhaitez créer le MIG.

Créer une demande de redimensionnement en spécifiant une liste de noms de VM

Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.

Pour créer une demande de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez la commande bêta gcloud compute instance-groups managed resize-requests create avec l'option --instances :

  • Dans un MIG zonal, exécutez la commande suivante :

    gcloud beta compute instance-groups managed resize-requests create MIG_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --instances=INSTANCE_NAMES \
        --zone=ZONE
    
  • Dans un MIG régional, exécutez la commande suivante :

    gcloud beta compute instance-groups managed resize-requests create MIG_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --instances=INSTANCE_NAMES \
        --region=REGION
    
Remplacez INSTANCE_NAMES par une liste de noms de VM séparés par une virgule. Exemple : instance-1,instance-2,instance-3.

REST

Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.

Réservation

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

  • Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
    1. Créez un MIG zonal en envoyant une requête POST à la méthode instanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Créez une demande de redimensionnement dans le MIG zonal en envoyant une requête POST à la méthode instanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
    1. Créez un MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Créez une demande de redimensionnement dans le MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

À la demande

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

  • Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
    1. Créez un MIG zonal en envoyant une requête POST à la méthode instanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Créez une demande de redimensionnement dans le MIG zonal en envoyant une requête POST à la méthode instanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
    1. Créez un MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Créez une demande de redimensionnement dans le MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

Démarrage flexible

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

  • Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
    1. Créez un MIG zonal en envoyant une requête POST à la méthode instanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
        }
      }
      
    2. Créez une demande de redimensionnement dans le MIG zonal en envoyant une requête POST à la méthode instanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
    1. Créez un MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        },
        "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
        }
      }
      
    2. Créez une demande de redimensionnement dans le MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

Spot

Pour créer un MIG zonal ou régional et une demande de redimensionnement :

  • Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
    1. Créez un MIG zonal en envoyant une requête POST à la méthode instanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Créez une demande de redimensionnement dans le MIG zonal en envoyant une requête POST à la méthode instanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
    1. Créez un MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagers.insert comme suit.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Créez une demande de redimensionnement dans le MIG régional en envoyant une requête POST à la méthode regionInstanceGroupManagerResizeRequests.insert comme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une demande de redimensionnement en spécifiant une liste de noms de VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
Remplacez les éléments suivants :
  • PROJECT_ID : ID du projet.
  • ZONE : zone dans laquelle vous souhaitez créer le MIG. Cette zone doit être la même que celle qui contient le profil de votre réseau VPC et doit être une zone où le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.
  • REGION : région dans laquelle vous souhaitez créer le MIG. Cette région doit être la même que celle qui contient le profil de votre réseau VPC et doit contenir une zone où le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.
  • INSTANCE_TEMPLATE_URL : URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :
    • Pour un modèle d'instance régional : projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Pour un modèle d'instance global : INSTANCE_TEMPLATE_ID
  • MIG_NAME : nom du MIG.
  • RESIZE_REQUEST_NAME : nom de la requête de redimensionnement, qui doit être unique dans le MIG spécifié. Sinon, la création de la demande de redimensionnement échoue.
  • COUNT : nombre d'instances à ajouter simultanément au MIG.

Créer une demande de redimensionnement en spécifiant une liste de noms de VM

Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.

Pour créer une demande de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez l'une des méthodes suivantes :

  • Dans un MIG zonal, envoyez une requête POST à l'aide de la méthode beta.instanceGroupManagerResizeRequests.insert :

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
    
  • Dans un MIG régional, envoyez une requête POST à l'aide de la méthode beta.regionInstanceGroupManagerResizeRequests.insert :

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
    

Par exemple, pour spécifier deux noms de VM, incluez les éléments suivants dans le corps de la requête :

{
  "name": "RESIZE_REQUEST_NAME",
  "instances": [
    {
      "name": "INSTANCE_NAME_1"
    },
    {
      "name": "INSTANCE_NAME_2"
    }
  ]
}

Remplacez INSTANCE_NAME_1, INSTANCE_NAME_2 par les noms des VM.

Installer des pilotes de GPU

Une fois que vous avez créé une instance, celle-ci ne peut pas utiliser ses GPU, sauf si les pilotes de GPU appropriés sont déjà installés. Le pilote que vous devez installer dépend de l'activation ou non du poste de travail virtuel (vWS) NVIDIA RTX sur l'instance. Utilisez l'une des options suivantes :

Étape suivante