Créer des VM G2 optimisées pour l'IA de manière groupée

Ce document explique comment créer de manière groupée des instances de machine virtuelle (VM) qui utilisent des types de machines G2. Pour en savoir plus sur ces types de machines optimisés pour les accélérateurs, consultez la section Série G2.

Pour en savoir plus sur la création groupée de VM, consultez À propos de la création groupée de VM dans la documentation Compute Engine.

Pour en savoir plus sur les autres façons de créer des VM ou des clusters, consultez Présentation des options de déploiement.

Limites

Lorsque vous créez des VM G2, les limites suivantes s'appliquent :

Si vous souhaitez utiliser une stratégie d'emplacement compact, consultez les restrictions applicables aux stratégies d'emplacement.

Avant de commencer

Avant de créer des VM de manière groupée, si vous ne l'avez pas déjà fait, procédez comme suit :

  1. Choisissez une option de consommation : votre choix d'option de consommation détermine la manière dont 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 capacité diffère pour chaque option de consommation. Pour en savoir plus sur la procédure d'obtention de capacité pour l'option de consommation que vous avez choisie, consultez Présentation de la capacité.

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 la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée. Après vous être connecté, initialisez la Google Cloud CLI en exécutant la commande suivante :

gcloud init

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, puis connectez-vous à 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'authentification Google Cloud .

Rôles requis

Pour obtenir les autorisations nécessaires à la création de VM de manière groupée, 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 des VM de manière groupée. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour créer des VM de manière groupée :

  • compute.instances.create sur le projet
  • Pour créer la VM à l'aide d'une image personnalisée : compute.images.useReadOnly sur l'image
  • Pour créer la VM à l'aide d'un instantané : compute.snapshots.useReadOnly sur l'instantané
  • Pour créer la VM à l'aide d'un modèle d'instance : compute.instanceTemplates.useReadOnly sur le modèle d'instance
  • Pour spécifier un sous-réseau pour la VM : compute.subnetworks.use sur le projet ou sur le sous-réseau choisi
  • Pour spécifier une adresse IP statique pour la VM : compute.addresses.use sur le projet
  • Pour attribuer une adresse IP externe à la VM en cas d'utilisation d'un réseau VPC : compute.subnetworks.useExternalIp sur le projet ou sur le sous-réseau choisi
  • Pour attribuer un ancien réseau à la VM : compute.networks.use sur le projet
  • Pour attribuer une adresse IP externe à la VM en cas d'utilisation d'un ancien réseau : compute.networks.useExternalIp sur le projet
  • Pour définir les métadonnées d'instance de VM pour la VM : compute.instances.setMetadata sur le projet
  • Pour définir des tags pour la VM : compute.instances.setTags sur la VM
  • Pour définir des étiquettes pour la VM : compute.instances.setLabels sur la VM
  • Pour définir un compte de service que doit utiliser la VM : compute.instances.setServiceAccount sur la VM
  • Pour créer un disque pour la VM : compute.disks.create sur le projet
  • Pour associer un disque existant en mode lecture seule ou en mode lecture-écriture : compute.disks.use sur le disque
  • Pour associer un disque existant en mode lecture seule : compute.disks.useReadOnly sur le disque

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 groupée d'instances avec le type de machine G2 comprend les étapes suivantes :

  1. Facultatif : créer une stratégie d'emplacement compact
  2. Créer des instances de manière groupée
  3. Installer des pilotes de GPU.

Facultatif : créer une stratégie d'emplacement compact

Vous pouvez spécifier l'emplacement des VM en créant une stratégie d'emplacement compact. Lorsque vous appliquez une stratégie d'emplacement compact à vos VM, Compute Engine s'efforce de créer des VM aussi proches que possible les unes des autres. Si votre application est sensible à la latence et nécessite une compacité maximale, spécifiez le champ maxDistance (bêta) lorsque vous créez une stratégie d'emplacement compact. Une valeur maxDistance inférieure garantit un placement plus proche des VM, mais augmente également le risque que certaines VM ne soient pas créées.

Pour créer une stratégie d'emplacement compact, sélectionnez l'une des options suivantes :

gcloud

Pour créer une stratégie d'emplacement compact, utilisez la commande gcloud compute resource-policies create group-placement :

gcloud compute resource-policies create group-placement POLICY_NAME \
    --collocation=collocated \
    --max-distance=MAX_DISTANCE \
    --region=REGION

Remplacez les éléments suivants :

  • POLICY_NAME : nom de la stratégie d'emplacement compact.
  • MAX_DISTANCE : configuration de distance maximale pour vos VM, qui peut être spécifiée (bêta, recommandé) ou non (supprimez l'option --max-distance). En fonction de ce que votre type de machine accepte, vous pouvez spécifier l'une des valeurs suivantes :
    • Pour placer des VM dans le même sous-bloc : 1
    • Pour placer des VM dans le même bloc : 2
    • Pour placer des VM dans des blocs adjacents : 3
    Assurez-vous que la configuration de distance maximale est compatible avec la série de machines et le nombre de VM que vous prévoyez de créer. Pour en savoir plus, consultez À propos des stratégies d'emplacement compact dans la documentation Compute Engine.
  • REGION : région dans laquelle vous souhaitez créer la stratégie d'emplacement compact. Spécifiez la région contenant la zone dans laquelle vous prévoyez de créer des instances, puis vérifiez que le type de machine que vous souhaitez utiliser est disponible dans cette région. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.

REST

Pour créer une stratégie d'emplacement compact, envoyez une requête POST à la méthode resourcePolicies.insert. Dans le corps de la requête, incluez le champ collocation défini sur COLLOCATED, ainsi que le champ maxDistance.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
  {
    "name": "POLICY_NAME",
    "groupPlacementPolicy": {
      "collocation": "COLLOCATED",
      "maxDistance": MAX_DISTANCE
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet.
  • POLICY_NAME : nom de la stratégie d'emplacement compact.
  • MAX_DISTANCE : configuration de distance maximale pour vos VM, qui peut être spécifiée (preview, recommandé) ou non (supprimez le champ maxDistance). En fonction de ce que votre type de machine accepte, vous pouvez spécifier l'une des valeurs suivantes :
    • Pour placer des VM dans le même sous-bloc : 1
    • Pour placer des VM dans le même bloc : 2
    • Pour placer des VM dans des blocs adjacents : 3
    Assurez-vous que la configuration de distance maximale est compatible avec la série de machines et le nombre de VM que vous prévoyez de créer. Pour en savoir plus, consultez À propos des stratégies d'emplacement compact dans la documentation Compute Engine.
  • REGION : région dans laquelle vous souhaitez créer la stratégie d'emplacement compact. Spécifiez la région contenant la zone dans laquelle vous prévoyez de créer des instances, puis vérifiez que le type de machine que vous souhaitez utiliser est disponible dans cette région. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.

Créer des VM G2 de manière groupée

Pour créer des VM G2 de manière groupée, utilisez l'une des méthodes suivantes.

Les commandes suivantes définissent également le niveau d'accès de vos instances. Pour simplifier la gestion des autorisations, Google vous recommande de définir le niveau d'accès sur une instance sur l'accès 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 des instances de manière groupée, utilisez la commande gcloud compute instances bulk 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 G2 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, lisez toutes les étapes suivantes pour déterminer si vous devez inclure des options supplémentaires.

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --count=COUNT \
     --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --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 :

    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • 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 : spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser la même région que celle de la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans 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 de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • RESERVATION_AFFINITY : réservations que l'instance est autorisée à consommer, 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 consommée automatiquement, ce qui ne se produit que si la capacité de réservation correspondante est disponible. Sinon, l'instance utilise la capacité à la demande.

      • specific (La capacité de réservation est requise) : l'instance doit utiliser 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 d'arrêt programmé par Compute Engine, par exemple lors d'un événement de maintenance. Si vous souhaitez désactiver le redémarrage automatique, ajoutez l'option suivante :

    --no-restart-on-failure
  3. Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez l'option suivante à la commande :

    --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  4. Facultatif : pour associer des disques SSD locaux, ajoutez l'option --local-ssd suivante 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 optimisés pour NVMe, 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.

  5. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez l'option suivante.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    --accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  6. Exécutez la commande.

À la demande

Avant d'exécuter la commande, lisez toutes les étapes suivantes pour déterminer si vous devez inclure des options supplémentaires.

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --count=COUNT \
     --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --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 :

    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • 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 : spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser la même région que celle de la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans 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 de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • RESERVATION_AFFINITY : réservations que l'instance est autorisée à consommer, 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 consommée automatiquement, 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 une capacité de réservation.

  2. Par défaut, l'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. Si vous souhaitez désactiver le redémarrage automatique, ajoutez l'option suivante :

    --no-restart-on-failure
  3. Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez l'option suivante à la commande :

    --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  4. Facultatif : pour associer des disques SSD locaux, ajoutez l'option --local-ssd suivante 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 optimisés pour NVMe, 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.

  5. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez l'option suivante.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    --accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  6. Exécutez la commande.

Spot

Avant d'exécuter la commande, lisez toutes les étapes suivantes pour déterminer si vous devez inclure des options supplémentaires.

gcloud compute instances bulk create \
    --name-pattern=NAME_PATTERN \
    --count=COUNT \
     --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --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 :

    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • 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 : spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser la même région que celle de la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans 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 de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • TERMINATION_ACTION : action à effectuer lorsque Compute Engine préempte l'instance, soit STOP (par défaut), soit DELETE.

  2. Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez l'option suivante à la commande :

    --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  3. Facultatif : pour associer des disques SSD locaux, ajoutez l'option --local-ssd suivante 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 optimisés pour NVMe, 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. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez l'option suivante.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    --accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  5. Exécutez la commande.

REST

Pour créer des instances de manière groupée, envoyez une requête POST à la méthode instances.bulkInsert.

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 G2 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/zones/ZONE/instances/bulkInsert
{
  "namePattern": "NAME_PATTERN",
  "count": "COUNT",
  "instanceProperties": {
    "machineType": "MACHINE_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 :

    • PROJECT_ID : ID du projet dans lequel vous souhaitez créer l'instance G2.
    • ZONE : spécifiez une zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser une zone située dans la même région que la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • 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.
    • AUTOMATIC_RESTART : indique si votre instance doit redémarrer automatiquement en cas de plantage ou en cas 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 : réservations que l'instance est autorisée à consommer, 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 la capacité à la demande.

      • SPECIFIC_RESERVATION (La capacité de réservation est requise) : l'instance doit utiliser 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 pour 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 : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le sous-champ instanceProperties suivant au corps de la requête :

        "resourcePolicies": [
          "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
        ]
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet de la stratégie d'emplacement compact.
    • REGION : région de la stratégie d'emplacement compact.
    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  3. 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 que vous avez 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 optimisés pour NVMe, 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. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez le champ suivant.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    "guestAccelerators":
      [
        {
          "acceleratorCount": VWS_ACCELERATOR_COUNT,
          "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-l4-vws"
        }
      ]
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  5. 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/zones/ZONE/instances/bulkInsert
{
  "namePattern": "NAME_PATTERN",
  "count": "COUNT",
  "instanceProperties": {
    "machineType": "MACHINE_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 :

    • PROJECT_ID : ID du projet dans lequel vous souhaitez créer l'instance G2.
    • ZONE : spécifiez une zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser une zone située dans la même région que la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • 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.
    • AUTOMATIC_RESTART : indique si votre instance doit redémarrer automatiquement en cas de plantage ou en cas 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 : réservations que l'instance est autorisée à consommer, 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 la capacité à la demande.

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

  2. Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le sous-champ instanceProperties suivant au corps de la requête :

        "resourcePolicies": [
          "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
        ]
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet de la stratégie d'emplacement compact.
    • REGION : région de la stratégie d'emplacement compact.
    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  3. 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 que vous avez 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 optimisés pour NVMe, 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. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez le champ suivant.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    "guestAccelerators":
      [
        {
          "acceleratorCount": VWS_ACCELERATOR_COUNT,
          "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-l4-vws"
        }
      ]
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  5. 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/zones/ZONE/instances/bulkInsert
{
  "namePattern": "NAME_PATTERN",
  "count": "COUNT",
  "instanceProperties": {
    "machineType": "MACHINE_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 :

    • PROJECT_ID : ID du projet dans lequel vous souhaitez créer l'instance G2.
    • ZONE : spécifiez une zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Si vous souhaitez spécifier une stratégie d'emplacement compact, vous devez utiliser une zone située dans la même région que la stratégie d'emplacement compact. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.
    • NAME_PATTERN : format de nom à utiliser pour les instances G2. Par exemple, le format de nom instance-# génère des instances G2 portant les noms instance-1, instance-2, etc., jusqu'à ce qu'il atteigne le nombre d'instances G2 spécifié par --count.
    • COUNT : nombre d'instances G2 à créer.
    • MACHINE_TYPE : type de machine à utiliser pour l'instance G2. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • DISK_SIZE : taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille de Google Cloud Hyperdisk ou Limites de taille de Persistent Disk en fonction du type de disque.
    • DISK_TYPE : type du disque de démarrage. Pour en savoir plus sur les types de disques compatibles avec votre type de machine, consultez Machines GPU dans la famille de machines optimisées pour les accélérateurs dans la documentation Compute Engine.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS.
    • 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.
    • TERMINATION_ACTION : action à effectuer lorsque Compute Engine préempte l'instance, soit STOP (par défaut), soit DELETE.

  2. Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le sous-champ instanceProperties suivant au corps de la requête :

        "resourcePolicies": [
          "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
        ]
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet de la stratégie d'emplacement compact.
    • REGION : région de la stratégie d'emplacement compact.
    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  3. 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 que vous avez 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 optimisés pour NVMe, 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. Facultatif : Pour utiliser le poste de travail virtuel NVIDIA RTX (vWS), ajoutez le champ suivant.

    Lorsque vous créez une instance qui utilise NVIDIA RTX Virtual Workstation, Compute Engine ajoute automatiquement une licence vWS. Pour en savoir plus sur la tarification des postes de travail virtuels, consultez la page des tarifs des GPU.

    "guestAccelerators":
      [
        {
          "acceleratorCount": VWS_ACCELERATOR_COUNT,
          "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-l4-vws"
        }
      ]
    

    Remplacez VWS_ACCELERATOR_COUNT par le nombre de GPU virtuels souhaité.

  5. Envoyez la demande.

Pour en savoir plus sur les options de configuration lors de la création de VM de manière groupée, consultez Créer des VM de manière groupée dans la documentation Compute Engine.

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 :

Étapes suivantes