Créer une instance optimisée pour l'IA avec A3 Edge

Ce document décrit la procédure de création d'instances de machines virtuelles (VM) autonomes qui utilisent des types de machines optimisés pour l'accélérateur A3 Edge. Pour en savoir plus sur les types de machines, consultez A3 Edge.

Pour découvrir d'autres méthodes de création de VM ou de clusters, consultez la page Présentation.

Limites

Lorsque vous créez une VM A3 Edge autonome, 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, 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é.

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 Google Cloud et aux API, vous n'avez pas besoin de configurer l'authentification.

gcloud

Dans la console Google Cloud , activez Cloud Shell.

Activer Cloud Shell

En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.

REST

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

    Installez la Google Cloud CLI.

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

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

Rôles requis

Pour obtenir les autorisations nécessaires à la création de VM, 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. 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 :

  • 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 d'une instance avec le type de machine A3 Edge comprend les étapes suivantes :

  1. Créer des réseaux VPC
  2. Facultatif : créer une stratégie d'emplacement compact
  3. Créer une instance
  4. Installer des pilotes de GPU.
  5. Facultatif : activer le mode GPU multi-instances NVIDIA

Créer des réseaux VPC

Pour permettre une communication efficace pour vos VM GPU, vous devez créer un réseau de gestion et un ou plusieurs réseaux de données. Le réseau de gestion est utilisé pour l'accès externe, par exemple SSH, et pour la plupart des communications réseau générales. Les réseaux de données sont utilisés pour la communication hautes performances entre les GPU sur différentes VM, par exemple pour le trafic Remote Direct Memory Access (RDMA).

Pour ces réseaux VPC, nous vous recommandons de définir l'unité de transmission maximale (MTU) sur une valeur plus élevée. Des valeurs de MTU plus élevées augmentent la taille des paquets et réduisent la surcharge de l'en-tête du paquet, ce qui augmente le débit des données de charge utile. Pour en savoir plus sur la création de réseaux VPC, consultez Créer et vérifier un réseau avec une MTU de trame géante.

Créer un réseau de gestion, un sous-réseau et une règle de pare-feu

Pour configurer le réseau de gestion, procédez comme suit :

  1. Créez le réseau de gestion à l'aide de la commande networks create :

    gcloud compute networks create NETWORK_NAME_PREFIX-mgmt-net \
        --project=PROJECT_ID \
        --subnet-mode=custom \
        --mtu=8244
    
  2. Créez le sous-réseau de gestion à l'aide de la commande networks subnets create :

    gcloud compute networks subnets create NETWORK_NAME_PREFIX-mgmt-sub \
        --project=PROJECT_ID \
        --network=NETWORK_NAME_PREFIX-mgmt-net \
        --region=REGION \
        --range=192.168.0.0/24
    
  3. Créez des règles de pare-feu à l'aide de la commande firewall-rules create.

    1. Créez une règle de pare-feu pour le réseau de gestion.

      gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-internal \
          --project=PROJECT_ID \
          --network=NETWORK_NAME_PREFIX-mgmt-net \
          --action=ALLOW \
          --rules=tcp:0-65535,udp:0-65535,icmp \
          --source-ranges=192.168.0.0/16
      
    2. Créez la règle de pare-feu tcp:22 pour limiter les adresses IP sources qui peuvent se connecter à votre VM à l'aide de SSH.

      gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-external-ssh \
          --project=PROJECT_ID \
          --network=NETWORK_NAME_PREFIX-mgmt-net \
          --action=ALLOW \
          --rules=tcp:22 \
          --source-ranges=SSH_SOURCE_IP_RANGE
      
    3. Créez la règle de pare-feu icmp permettant de vérifier les problèmes de transmission de données sur le réseau.

      gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-external-ping \
          --project=PROJECT_ID \
          --network=NETWORK_NAME_PREFIX-mgmt-net \
          --action=ALLOW \
          --rules=icmp \
          --source-ranges=0.0.0.0/0
      

Remplacez les éléments suivants :

  • NETWORK_NAME_PREFIX : préfixe de nom à utiliser pour les réseaux et sous-réseaux VPC.
  • PROJECT_ID : ID de votre projet.
  • REGION : région dans laquelle vous souhaitez créer les réseaux.
  • SSH_SOURCE_IP_RANGE : plage d'adresses IP au format CIDR. Ce paramètre spécifie les adresses IP sources qui peuvent se connecter à votre VM à l'aide de SSH.

Créer des réseaux de données, des sous-réseaux et une règle de pare-feu

A3 Edge nécessite quatre réseaux de données. Exécutez la commande suivante pour créer quatre réseaux de données, chacun avec des sous-réseaux et des règles de pare-feu.

for N in $(seq 1 4); do
gcloud compute networks create NETWORK_NAME_PREFIX-data-net-$N \
    --project=PROJECT_ID \
    --subnet-mode=custom \
    --mtu=8244

gcloud compute networks subnets create NETWORK_NAME_PREFIX-data-sub-$N \
    --project=PROJECT_ID \
    --network=NETWORK_NAME_PREFIX-data-net-$N \
    --region=REGION \
    --range=192.168.$N.0/24

gcloud compute firewall-rules create NETWORK_NAME_PREFIX-data-internal-$N \
    --project=PROJECT_ID \
    --network=NETWORK_NAME_PREFIX-data-net-$N \
    --action=ALLOW \
    --rules=tcp:0-65535,udp:0-65535,icmp \
    --source-ranges=192.168.0.0/16
done

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 les unes des autres que possible. Si votre application est sensible à la latence et nécessite une compacité maximale, spécifiez le champ maxDistance (aperçu) 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 beta compute resource-policies create group-placement :

gcloud beta 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 (aperçu, recommandé) ou non spécifiée (supprimez l'indicateur --max-distance). En fonction de ce que votre type de machine prend en charge, vous pouvez spécifier l'une des valeurs suivantes :
    • Pour placer des VM dans le même sous-bloc : 1
    • Pour placer les VM dans le même bloc : 2
    • Pour placer des VM dans des blocs adjacents : 3
    Assurez-vous que la configuration de la 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, et 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 en version bêta. 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/beta/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 (aperçu, recommandé) ou non spécifiée (supprimez le champ maxDistance). En fonction de ce que votre type de machine prend en charge, vous pouvez spécifier l'une des valeurs suivantes :
    • Pour placer des VM dans le même sous-bloc : 1
    • Pour placer les VM dans le même bloc : 2
    • Pour placer des VM dans des blocs adjacents : 3
    Assurez-vous que la configuration de la 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, et 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 une VM A3 Edge

Pour créer une VM A3 Edge, utilisez l'une des méthodes 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.

Console

  1. Accédez à la page Créer une instance dans la console Google Cloud .

    Accéder à "Créer une instance"

  2. Spécifiez un nom pour votre VM. Consultez la convention d'attribution de noms des ressources.

  3. Sélectionnez la région et la zone dans lesquelles vous souhaitez créer une VM. Consultez la liste des régions et zones où les GPU sont disponibles.

  4. Cliquez sur l'onglet GPU, puis procédez comme suit :

    1. Dans la liste Type de GPU, sélectionnez NVIDIA H100 80GB.
    2. Dans la liste Nombre de GPU, sélectionnez 8.
    3. Dans la liste Type de machine, sélectionnez a3-edgegpu-8g.
  5. En fonction de l'option de consommation que vous souhaitez utiliser, sélectionnez l'une des options suivantes et suivez les étapes correspondantes.

    Réservation

    Les instances A3 Edge 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.

    1. Dans la section Modèle de provisionnement, dans la liste Modèle de provisionnement de VM, sélectionnez Standard. (Cette option est sélectionnée par défaut.)
    2. Pour configurer les réservations utilisées par cette VM, procédez comme suit :

      1. Dans le menu de navigation, cliquez sur Avancé.
      2. Pour Réservations, sélectionnez l'une des options suivantes :

        • Pour utiliser la capacité de réservation de manière facultative, sélectionnez Utiliser la sélection automatique. (Cette option est sélectionnée 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.

        • Pour exiger une capacité de réservation, sélectionnez Choisir une réservation, puis cliquez sur Choisir une réservation pour spécifier la réservation à utiliser.

          L'instance est tenue d'utiliser la capacité d'une réservation spécifiquement ciblée et 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.

    À la demande

    1. Dans la section Modèle de provisionnement, dans la liste Modèle de provisionnement de VM, sélectionnez Standard. (Cette option est sélectionnée par défaut.)
    2. Facultatif : Pour configurer l'utilisation ou non de réservations par cette VM, procédez comme suit :

      1. Dans le menu de navigation, cliquez sur Avancé.
      2. Pour Réservations, sélectionnez l'une des options suivantes :

        • Pour utiliser la capacité de réservation de manière facultative, sélectionnez Utiliser la sélection automatique. (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.

        • Pour exiger une capacité à la demande, sélectionnez Ne pas utiliser de réservation.

          L'instance ne peut pas utiliser de capacité de réservation.

    Démarrage flexible

    1. Dans la section Modèle de provisionnement, dans la liste Modèle de provisionnement de VM, sélectionnez Démarrage flexible.
    2. Dans le champ Saisir le nombre d'heures, saisissez la durée maximale pendant laquelle vous souhaitez que la VM s'exécute. La valeur doit être comprise entre 46 secondes (0.01) et sept jours (168, soit 168 heures).

    3. Sélectionnez Définir un temps d'attente pour la création de la VM

      En fonction des exigences zonales de votre charge de travail, spécifiez l'une des durées suivantes pour augmenter vos chances de voir aboutir votre demande de création de VM :

      • Charges de travail avec des exigences zonales strictes : si votre charge de travail vous oblige à créer la VM dans une zone spécifique, spécifiez une durée comprise entre 90 secondes et 2 heures. Plus la durée est longue, plus vous avez de chances d'obtenir des ressources.
      • Charges de travail sans exigences strictes concernant les zones : si la VM peut s'exécuter dans n'importe quelle zone de la région, spécifiez une durée de 0 seconde ou décochez la case Définir un temps d'attente pour la création de VM. Cette action indique que Compute Engine n'alloue des ressources que si elles sont immédiatement disponibles. Si la requête de création de VM échoue parce que les ressources ne sont pas disponibles, réessayez dans une autre zone.

    4. Dans le champ À l'arrêt de la VM, sélectionnez si vous souhaitez arrêter ou supprimer la VM à la fin de sa durée d'exécution :

      • Pour supprimer la VM, sélectionnez Supprimer.
      • Pour arrêter la VM, sélectionnez Arrêter.

    Spot

    1. Dans la section Modèle de provisionnement, sélectionnez Spot dans la liste Modèle de provisionnement de VM.
    2. Facultatif : Pour sélectionner l'action de terminaison qui se produit lorsque Compute Engine préempte la VM, procédez comme suit :

      1. Développez la section Paramètres avancés du modèle de provisionnement de la VM.
      2. Dans la liste À l'arrêt de la VM, sélectionnez l'une des options suivantes :
        • Pour arrêter la VM pendant la préemption, sélectionnez Arrêter (sélection par défaut).
        • Pour supprimer la VM pendant la préemption, sélectionnez Supprimer.
  6. Dans le menu de navigation, cliquez sur OS et stockage, puis procédez comme suit :

    1. Cliquez sur Modifier. Le volet Configuration du disque de démarrage s'ouvre.
    2. Dans l'onglet Images publiques, sélectionnez une image recommandée. Pour obtenir la liste des images recommandées, consultez Systèmes d'exploitation.

    3. Facultatif : Pour configurer la taille du disque de démarrage, consultez les limites de taille des Hyperdisks Google Cloud ou les limites de taille des Persistent Disks, selon le type de disque.

    4. Cliquez sur Sélectionner pour confirmer vos options de disque de démarrage.

  7. Configurez le compte de service et les niveaux d'accès comme suit. Les charges de travail exécutées sur l'instance utilisent le compte de service associé pour autoriser les requêtes adressées à d'autres services Google Cloud .

    1. Dans le menu de navigation, cliquez sur Sécurité.
    2. Dans la liste Compte de service, sélectionnez un compte de service à utiliser.
    3. Pour Niveaux d'accès, sélectionnez l'option Autoriser l'accès complet à l'ensemble des API Cloud. Cette bonne pratique est recommandée, car elle vous permet de gérer les accès en ajoutant ou en supprimant des rôles IAM du compte de service. Pour en savoir plus, consultez Associer un compte de service à une instance.
  8. Pour créer une VM avec plusieurs cartes d'interface réseau, procédez comme suit. Sinon, ignorez ces étapes pour créer une VM à une seule interface réseau.

    1. Dans le menu de navigation, cliquez sur Mise en réseau.

    2. Dans la section Interfaces réseau, procédez comme suit :

      1. Supprimez l'interface réseau par défaut. Pour supprimer l'interface, cliquez sur Supprimer.
      2. Cliquez sur Ajouter une interface réseau. Utilisez cette option pour ajouter des interfaces réseau qui se connectent aux réseaux VPC que vous avez créés dans la section précédente. Lorsque vous ajoutez des interfaces réseau, n'oubliez pas les points suivants :
        • Pour une interface réseau utilisée pour la communication d'hôte à hôte, sélectionnez un réseau et un sous-réseau VPC standards dans les listes Réseau et Sous-réseau, puis définissez la liste Carte d'interface réseau sur gVNIC. Pour chaque réseau, à l'exception du premier, définissez la liste Adresse IP externe sur Aucune.
        • Pour une interface réseau utilisée pour la communication entre GPU à l'aide de GPUDirect-TCPX, sélectionnez les réseaux et sous-réseaux VPC spécialisés correspondants pour chaque interface, puis définissez la liste Carte d'interface réseau sur gVNIC pour ces interfaces réseau également. Pour chaque réseau, à l'exception du premier, définissez la liste Adresse IP externe sur Aucune.
  9. Pour créer et démarrer la VM, cliquez sur Créer.

gcloud

Pour créer la VM, utilisez la commande gcloud compute instances 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 A3 Edge 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 instances create INSTANCE_NAME  \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --zone=ZONE \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address 
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY \
    --reservation=RESERVATION

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_NAME : nom de la VM.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS. Par exemple, utilisez cos-cloud pour l'image Container-Optimized OS cos-121-lts ou version ultérieure.
    • ZONE : zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour spécifier une stratégie d'emplacement compact, utilisez une zone de 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.
    • DISK_TYPE : type de disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • 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 utiliser une stratégie d'emplacement compact, ajoutez l'indicateur suivant :

      --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  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 instances create INSTANCE_NAME  \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --zone=ZONE \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address 
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_NAME : nom de la VM.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS. Par exemple, utilisez cos-cloud pour l'image Container-Optimized OS cos-121-lts ou version ultérieure.
    • ZONE : zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour spécifier une stratégie d'emplacement compact, utilisez une zone de 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.
    • DISK_TYPE : type de disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • 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 utiliser une stratégie d'emplacement compact, ajoutez l'indicateur suivant :

      --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  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 instances create INSTANCE_NAME  \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --zone=ZONE \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address 
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
    --reservation-affinity=none \
    --provisioning-model=FLEX_START \
    --request-valid-for-duration=REQUEST_VALID_FOR_DURATION \
    --max-run-duration=MAX_RUN_DURATION \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • INSTANCE_NAME : nom de la VM.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS. Par exemple, utilisez cos-cloud pour l'image Container-Optimized OS cos-121-lts ou version ultérieure.
    • ZONE : zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour spécifier une stratégie d'emplacement compact, utilisez une zone de 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.
    • DISK_TYPE : type de disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • REQUEST_VALID_FOR_DURATION : durée de validité de la requête de création de la VM. 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 1h2m3s pour une heure, deux minutes et trois secondes.

      En fonction des exigences zonales de votre charge de travail, spécifiez l'une des durées suivantes pour augmenter vos chances de voir aboutir votre demande de création de VM :

      • Charges de travail avec des exigences zonales strictes : si votre charge de travail vous oblige à créer la VM dans une zone spécifique, spécifiez une durée comprise entre 90 secondes (90s) et deux heures (2h). Plus la durée est longue, plus vous avez de chances d'obtenir des ressources.
      • Charges de travail sans exigences strictes concernant les zones : si la VM peut s'exécuter dans n'importe quelle zone de la région, spécifiez une durée de zéro seconde (0s). Cette action indique que Compute Engine n'alloue des ressources que si elles sont immédiatement disponibles. Si la requête de création de VM échoue en raison de l'indisponibilité des ressources, réessayez dans une autre zone.
    • MAX_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. Cette valeur doit être comprise entre 10 minutes et 7 jours.

    • TERMINATION_ACTION : indique si Compute Engine arrête (STOP) ou supprime (DELETE) la VM à la fin de sa durée d'exécution.

  2. Facultatif : Pour utiliser une stratégie d'emplacement compact, ajoutez l'indicateur suivant :

      --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  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 instances create INSTANCE_NAME  \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --zone=ZONE \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address 
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
    --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_NAME : nom de la VM.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • IMAGE_PROJECT : ID du projet de l'image de l'OS. Par exemple, utilisez cos-cloud pour l'image Container-Optimized OS cos-121-lts ou version ultérieure.
    • ZONE : zone dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour spécifier une stratégie d'emplacement compact, utilisez une zone de 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.
    • DISK_TYPE : type de disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • TERMINATION_ACTION : action à effectuer lorsque Compute Engine préempte l'instance, soit STOP (par défaut), soit DELETE.

  2. Facultatif : Pour utiliser une stratégie d'emplacement compact, ajoutez l'indicateur suivant :

      --resource-policies=POLICY_NAME
    

    Remplacez les éléments suivants :

    • POLICY_NAME : nom de la stratégie d'emplacement compact.
  3. Exécutez la commande.

REST

Pour renommer la VM, envoyez une requête POST à la méthode instances.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 A3 Edge 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
{
  "machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
  "name": "INSTANCE_NAME",
  "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"
      ]
    }
  ],
  "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-nat",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
      },
  "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 la VM.
    • ZONE : 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.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • INSTANCE_NAME : Nom de la VM.
    • 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 cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • NETWORK_PROJECT_ID : ID du projet du réseau.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • REGION : région du sous-réseau.
    • 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 : Si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le champ 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. 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
{
  "machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
  "name": "INSTANCE_NAME",
  "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"
      ]
    }
  ],
  "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-nat",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
      },
  "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 la VM.
    • ZONE : 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.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • INSTANCE_NAME : Nom de la VM.
    • 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 cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • NETWORK_PROJECT_ID : ID du projet du réseau.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • REGION : région du sous-réseau.
    • 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 : Si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le champ 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. 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/zones/ZONE/instances
{
  "machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
  "name": "INSTANCE_NAME",
  "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"
      ]
    }
  ],
  "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-nat",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
      },
  "reservationAffinity": {
    "consumeReservationType": "NO_RESERVATION",
  },
  "scheduling": {
    "provisioningModel": "FLEX_START",
    "requestValidForDuration": {
      "seconds": REQUEST_VALID_FOR_DURATION
    },
    "maxRunDuration": {
      "seconds": MAX_RUN_DURATION
    },
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
  }
}

Procédez comme suit :

  1. Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet dans lequel vous souhaitez créer la VM.
    • ZONE : 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.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • INSTANCE_NAME : Nom de la VM.
    • 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 cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • NETWORK_PROJECT_ID : ID du projet du réseau.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • REGION : région du sous-réseau.
    • REQUEST_VALID_FOR_DURATION : durée, en secondes, pendant laquelle la requête de création de la VM reste valide.

      En fonction des exigences zonales de votre charge de travail, spécifiez l'une des durées suivantes pour augmenter vos chances de voir aboutir votre demande de création de VM :

      • Charges de travail avec des exigences zonales strictes : si votre charge de travail vous oblige à créer la VM dans une zone spécifique, spécifiez une durée comprise entre 90 secondes (90) et deux heures (7200). Plus la durée est longue, plus vous avez de chances d'obtenir des ressources.
      • Charges de travail sans exigences strictes concernant les zones : si la VM peut s'exécuter dans n'importe quelle zone de la région, spécifiez une durée de zéro seconde (0). Cette action indique que Compute Engine n'alloue des ressources que si elles sont immédiatement disponibles. Si la requête de création de VM échoue en raison de l'indisponibilité des ressources, réessayez dans une autre zone.
    • MAX_RUN_DURATION : durée d'exécution des VM demandées. Vous devez mettre en forme la valeur en tant que nombre de secondes. Par exemple, spécifiez 86400 pour 86 400 secondes (24 heures). Cette valeur doit être comprise entre 10 minutes et 7 jours.

    • TERMINATION_ACTION : indique si Compute Engine arrête (STOP) ou supprime (DELETE) la VM à la fin de sa durée d'exécution.

  2. Facultatif : Si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le champ 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. 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
{
  "machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
  "name": "INSTANCE_NAME",
  "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"
      ]
    }
  ],
  "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-nat",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
      },
  "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 la VM.
    • ZONE : 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.
    • MACHINE_TYPE : type de machine à utiliser pour la VM. Pour en savoir plus, consultez Types de machines GPU dans la documentation Compute Engine.
    • INSTANCE_NAME : Nom de la VM.
    • 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 cette série de machines, nous vous recommandons d'utiliser hyperdisk-balanced. 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.
    • 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. Pour la gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OS cos-121-lts ou version ultérieure et de désactiver les mises à jour automatiques.
    • NETWORK_PROJECT_ID : ID du projet du réseau.
    • GVNIC_NAME_PREFIX : préfixe de nom que vous avez spécifié lors de la création des réseaux et sous-réseaux VPC standards qui utilisent des cartes d'interface réseau virtuelles Google (gVNIC).
    • REGION : région du sous-réseau.
    • 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 champ 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. Envoyez la demande.

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. Si vous n'avez pas spécifié d'image d'OS incluant des pilotes de GPU, consultez Installer des pilotes de GPU dans la documentation Compute Engine.

Facultatif : Activer le mode GPU multi-instance NVIDIA

Le mode GPU multi-instance (MIG) est une fonctionnalité que vous pouvez activer pour un GPU NVIDIA compatible. Une fois que vous avez créé une instance, vous pouvez activer le mode MIG sur un seul GPU associé à votre machine. Lorsque le mode MIG est activé, le GPU unique est partitionné en sept instances GPU indépendantes maximum. Chaque instance s'exécute simultanément, chacune avec sa propre mémoire, son propre cache et ses propres multiprocesseurs de streaming. Vous pouvez ensuite exécuter différentes charges de travail en parallèle sur ces instances de GPU. Pour en savoir plus sur l'utilisation du mode MIG, consultez le guide de l'utilisateur sur les GPU multi-instances (MIG) dans la documentation NVIDIA.

Étapes suivantes