Ce document explique comment créer un groupe d'instances géré (MIG) qui utilise un type de machine optimisé pour les accélérateurs A3 Edge. Pour en savoir plus sur le type de machine, consultez A3 Edge dans la documentation Compute Engine.
La création d'un MIG vous permet de gérer plusieurs machines virtuelles (VM) comme une seule entité. Chaque VM d'un MIG est basée sur un modèle d'instance. En gérant automatiquement l'état et la taille du groupe d'instances, les MIG offrent une disponibilité et une évolutivité élevées. Pour en savoir plus sur les MIG, consultez Groupes d'instances gérés.
Pour en savoir plus sur les options de création de VM et de clusters, consultez la page Présentation de la création de VM et de clusters.
Limites
Lorsque vous créez un MIG avec des VM A3 Edge, tenez compte des limites du type de machine et du MIG.
Limites des VM A3 Edge
Selon la série de machines utilisée par les VM de votre MIG, les limites suivantes s'appliquent :
- Vous ne bénéficiez ni de remises automatiques proportionnelles à une utilisation soutenue ni de remises sur engagement d'utilisation flexible pour les instances qui utilisent un type de machine A3 Edge.
- Vous ne pouvez utiliser un type de machine A3 Edge que dans certaines régions et zones.
- Vous ne pouvez pas utiliser de disque persistant régional sur une instance qui utilise un type de machine A3 Edge.
- Le type de machine A3 Edge n'est disponible que sur la plate-forme de processeur Sapphire Rapids.
- Les modifications de type de machine ne sont pas acceptées pour le type de machine A3 Edge. Pour passer à ce type de machine ou en changer, vous devez créer une instance.
- Vous ne pouvez pas exécuter de systèmes d'exploitation Windows sur un type de machine A3 Edge.
- Les types de machines A3 Edge ne prennent pas en charge la location unique.
Limites du MIG
Lorsque vous créez un MIG avec des VM A3 Edge, les limites suivantes s'appliquent :
- Vous devez désactiver les réparations dans le MIG, comme décrit dans ce document.
Vous ne pouvez pas configurer la flexibilité des instances dans le MIG.
Limites applicables aux requêtes de redimensionnement de MIG
Les limites suivantes s'appliquent aux requêtes de redimensionnement de MIG :
Dans les MIG régionaux, vous ne pouvez utiliser que la forme de distribution cible
ANY_SINGLE_ZONE.Vous ne pouvez définir le mode de pool de secours du MIG que sur
manual(par défaut).Vous ne pouvez pas définir l'autoscaling.
Si le MIG contient des requêtes de redimensionnement acceptées, vous ne pouvez pas modifier la taille cible du MIG.
Vous ne pouvez pas supprimer les instances gérées à l'état
CREATINGcréées par le MIG pour une requête de redimensionnement. Pour supprimer ces instances gérées, vous devez annuler la requête de redimensionnement.
Pour en savoir plus, consultez toutes les limites des requêtes de redimensionnement.
Avant de commencer
Avant de créer un MIG, si vous ne l'avez pas déjà fait, procédez comme suit :
- 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.
- 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é.
- Vérifiez les autorisations de l'agent de service des API Google : lorsque vous créez des VM dans un MIG, Compute Engine utilise l'agent de service des API Google (
PROJECT_NUMBER@cloudservices.gserviceaccount.com) dans votre projet. Si votre modèle d'instance utilise des ressources d'un autre projet, vérifiez que cet agent de service dispose des autorisations requises :- VPC partagé : si les VM utilisent un réseau VPC partagé, attribuez à l'agent de service des API Google du projet de service le rôle Utilisateur de réseau Compute (
roles/compute.networkUser) sur le projet hôte ou les sous-réseaux partagés. Pour en savoir plus, consultez Compte de service des API Google comme administrateur de projet de service. - Images d'autres projets : si les VM utilisent une image d'un autre projet, attribuez à l'agent de service des API Google de votre projet le rôle Utilisateur d'images Compute (
roles/compute.imageUser) sur l'image ou le projet propriétaire de l'image. Pour en savoir plus, consultez Accorder l'accès aux images à un groupe d'instances géré;instances géré.
- VPC partagé : si les VM utilisent un réseau VPC partagé, attribuez à l'agent de service des API Google du projet de service le rôle Utilisateur de réseau Compute (
Rôles requis
Pour obtenir les autorisations nécessaires à la création d'un MIG, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur le projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour créer un MIG. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer un MIG :
-
Pour créer un MIG :
compute.instanceGroupManagers.createsur le projet
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Présentation
La création d'un MIG avec le type de machine A3 Edge comprend les étapes suivantes :
- Créer des réseaux VPC
- Facultatif : créer une stratégie d'emplacement compact
- Créer un modèle d'instance
- Créer un MIG
- Installer des pilotes de GPU.
Pour chaque MIG, vous devez choisir si vous souhaitez utiliser une stratégie d'emplacement compact, utiliser des requêtes de redimensionnement ou aucune des deux options. Pour savoir quand utiliser chaque option, consultez la section Limites du MIG de ce document.
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 d'accès direct à la mémoire à distance (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 :
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=8244Cré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/24Créez des règles de pare-feu à l'aide de la commande
firewall-rules create.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/16Créez la règle de pare-feu
tcp:22pour 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_RANGECréez la règle de pare-feu
icmppermettant 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 du 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 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.
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
- Pour placer des VM dans le même sous-bloc :
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 champmaxDistance). 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
- Pour placer des VM dans le même sous-bloc :
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 un modèle d'instance
Spécifiez les propriétés de VM d'un MIG en créant un modèle d'instance.
Pour créer un modèle d'instance, sélectionnez l'une des options suivantes :
Les commandes suivantes définissent également le niveau d'accès 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èscloud-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.
Pour créer un modèle d'instance pour les VM A3 Edge, vous devez spécifier quatre interfaces réseau supplémentaires pour le trafic GPUDirect-TCPX. Si vous ne l'avez pas déjà fait, vous devez créer quatre réseaux VPC, comme décrit dans Créer des réseaux VPC.
gcloud
Pour créer un modèle d'instance régional, exécutez la commande gcloud compute instance-templates create.
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant à votre option de consommation.
Réservation
Avant d'exécuter la commande, lisez toutes les étapes suivantes pour déterminer si vous devez inclure des options supplémentaires.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=DISK_TYPE \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--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=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE \
--restart-on-failure
Procédez comme suit :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_TYPE: type du disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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: nom de la réservation ou d'un bloc spécifique dans une réservation. Pour obtenir le nom de la réservation ou les blocs disponibles, consultez Afficher la capacité réservée. En fonction de vos exigences concernant l'emplacement des instances, choisissez l'une des options suivantes :Pour créer des instances sur plusieurs blocs ou sur un seul bloc :
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
De plus, pour un seul bloc, appliquez une stratégie d'emplacement compact qui spécifie une colocation de bloc (
maxDistance=2). Compute Engine applique ensuite la règle à la réservation et crée des instances sur le même bloc.Pour créer des instances sur un bloc spécifique :
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
-
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.
- Exécutez la commande.
Démarrage flexible
Avant d'exécuter la commande, lisez toutes les étapes suivantes pour déterminer si vous devez inclure des options supplémentaires.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=DISK_TYPE \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--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 \
--instance-termination-action=DELETE \
--max-run-duration=RUN_DURATION \
--maintenance-policy=TERMINATE \
--provisioning-model=FLEX_START
Procédez comme suit :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_TYPE: type du disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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).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 ded,h,mets. Par exemple, spécifiez30mpour 30 minutes ou1d2h3m4spour un jour, deux heures, trois minutes et quatre secondes. Cette valeur doit être comprise entre 10 minutes et 7 jours.
- 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 instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=DISK_TYPE \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--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 :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_TYPE: type du disque de démarrage. Pour cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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, soitSTOP(par défaut), soitDELETE.
-
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.
- Exécutez la commande.
REST
Pour créer un modèle d'instance régional, envoyez une requête POST à la méthode regionInstanceTemplates.insert :
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant à votre option de consommation.
Réservation
Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"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": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION"
]
},
"scheduling": {
"provisioningModel": "RESERVATION_BOUND",
"instanceTerminationAction": "DELETE",
"onHostMaintenance": "TERMINATE",
"automaticRestart": true
}
}
}
Procédez comme suit :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_SIZE: taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille 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 cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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.-
RESERVATION: nom de la réservation ou d'un bloc spécifique dans une réservation. Pour obtenir le nom de la réservation ou les blocs disponibles, consultez Afficher la capacité réservée. En fonction de vos exigences concernant l'emplacement des instances, choisissez l'une des options suivantes :Pour créer des instances sur plusieurs blocs ou sur un seul bloc :
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
De plus, pour un seul bloc, appliquez une stratégie d'emplacement compact qui spécifie une colocation de bloc (
maxDistance=2). Compute Engine applique ensuite la règle à la réservation et crée des instances sur le même bloc.Pour créer des instances sur un bloc spécifique :
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
-
Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le sous-champ
instancePropertiessuivant 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.
- Envoyez la demande.
Démarrage flexible
Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"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": {
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": RUN_DURATION
},
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START"
}
}
}
Procédez comme suit :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_SIZE: taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille 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 cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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.RUN_DURATION: durée, en secondes, pendant laquelle vous souhaitez que les VM demandées s'exécutent. La valeur doit être comprise entre600, soit 600 secondes (10 minutes), et604800, soit 604 800 secondes (7 jours).
- Envoyez la demande.
Spot
Avant d'envoyer la demande, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des champs supplémentaires.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"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 :
-
Remplacez les éléments suivants :
INSTANCE_TEMPLATE_NAME: nom du modèle d'instance.MACHINE_TYPE: type de machine à utiliser pour l'instance A3 Edge. 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 série de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou une version ultérieure, et de désactiver les mises à jour automatiques.IMAGE_PROJECT: ID du projet de l'image de l'OS. Par exemple, utilisezcos-cloudpour l'image Container-Optimized OScos-121-ltsou une version ultérieure.REGION: région dans laquelle vous souhaitez créer le modèle d'instance. Spécifiez une région dans laquelle le type de machine que vous souhaitez utiliser est disponible. Pour en savoir plus sur les régions, consultez Disponibilité des GPU par région et par zone.DISK_SIZE: taille du disque de démarrage en Go. Pour en savoir plus, consultez Limites de taille 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 cette série de machines, nous vous recommandons d'utiliserhyperdisk-balanced. 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.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, soitSTOP(par défaut), soitDELETE.
-
Facultatif : si vous avez choisi d'utiliser une stratégie d'emplacement compact, ajoutez le sous-champ
instancePropertiessuivant 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.
- Envoyez la demande.
Une fois créé, vous pouvez consulter le modèle d'instance pour voir son ID et examiner les propriétés de l'instance.
Créer un MIG
Après avoir effectué toutes les étapes précédentes, créez un MIG en fonction de votre scénario, comme suit :
| Scénario | Méthode pour créer un MIG et des VM dans celui-ci | Exemple |
|---|---|---|
| Vous avez plusieurs jobs ou des jobs parallèles qui peuvent démarrer avec n'importe quel nombre de VM. | Créez un MIG et utilisez la taille cible pour spécifier le nombre de VM que vous souhaitez inclure dans le groupe. Consultez Créer un MIG avec une taille cible. |
Jobs d'inférence de ML |
| Vous avez un job qui nécessite une distribution sur un nombre exact de VM. | Créez un MIG sans VM, puis créez une requête de redimensionnement dans le MIG.
La requête de redimensionnement vous permet d'obtenir toutes les VM à la fois. |
Jobs d'entraînement et d'affinage de ML distribués |
Créer un MIG avec une taille cible
Si vous pouvez démarrer votre job sans créer toutes les VM en même temps, créez un MIG avec une taille cible. La taille cible détermine le nombre de VM dans le MIG. Lorsque vous spécifiez une taille cible, le MIG commence à créer des VM en fonction de la disponibilité actuelle des ressources. Si des ressources sont temporairement indisponibles, le MIG tente en permanence de créer des VM pour atteindre la taille cible.
Pour créer un MIG avec une taille cible, sélectionnez l'une des options suivantes :
gcloud
Pour créer un MIG avec une taille cible spécifiée, utilisez la commande instance-groups managed
create.
Créez un MIG zonal ou régional comme suit :
- Pour créer un MIG zonal, utilisez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --zone=ZONE
- Pour créer un MIG régional, exécutez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --region=REGION
MIG_NAME: nom du MIG.INSTANCE_TEMPLATE_URL: URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :- Pour un modèle d'instance régional :
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Pour un modèle d'instance global :
INSTANCE_TEMPLATE_ID
- Pour un modèle d'instance régional :
TARGET_SIZE: nombre d'instances que vous souhaitez inclure dans le MIG.ZONE: zone dans laquelle vous souhaitez créer le MIG.REGION: région dans laquelle vous souhaitez créer le MIG. Pour un MIG régional, au lieu d'une région, vous pouvez spécifier les zones de cette région à l'aide de l'option--zones.
REST
Pour créer un MIG avec une taille cible spécifiée, envoyez une requête POST.
Créez un MIG zonal ou régional comme suit :
- Pour créer un MIG zonal, envoyez une requête
POSTà la méthodeinstanceGroupManagers.insert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": TARGET_SIZE } - Pour créer un MIG régional, envoyez une requête
POSTà la méthoderegionInstanceGroupManagers.insert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "name": "MIG_NAME", "instanceTemplate": "INSTANCE_TEMPLATE_URL", "targetSize": TARGET_SIZE }
PROJECT_ID: ID du projet.ZONE: zone dans laquelle vous souhaitez créer le MIG.REGION: région dans laquelle vous souhaitez créer le MIG.INSTANCE_TEMPLATE_URL: URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :- Pour un modèle d'instance régional :
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Pour un modèle d'instance global :
INSTANCE_TEMPLATE_ID
- Pour un modèle d'instance régional :
MIG_NAME: nom du MIG.TARGET_SIZE: nombre d'instances que vous souhaitez inclure dans le MIG.
Créer un MIG et une demande de redimensionnement
Si vous avez besoin de plusieurs VM en même temps pour démarrer un job, créez un MIG, puis créez une requête de redimensionnement dans le MIG, comme décrit dans cette section.Pour créer une requête de redimensionnement dans un MIG, sélectionnez l'une des options suivantes :
gcloud
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.
Réservation
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
-
Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG zonal à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE -
Créez une requête de redimensionnement dans le MIG zonal à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG régional à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
Créez une requête de redimensionnement dans le MIG régional à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
Démarrage flexible
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
-
Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG zonal à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --zone=ZONE -
Créez une requête de redimensionnement dans le MIG zonal à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG régional à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --region=REGION \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
Créez une requête de redimensionnement dans le MIG régional à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
Spot
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
-
Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG zonal à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE -
Créez une requête de redimensionnement dans le MIG zonal à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une requête de redimensionnement dans celui-ci, procédez comme suit :
-
Créez un MIG régional à l'aide de la commande
instance-groups managed createcomme suit.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
Créez une requête de redimensionnement dans le MIG régional à l'aide de la commande
instance-groups managed resize-requests createcomme suit. Cette commande spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
MIG_NAME: nom du MIG.INSTANCE_TEMPLATE_URL: URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :- Pour un modèle d'instance régional :
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Pour un modèle d'instance global :
INSTANCE_TEMPLATE_ID
- Pour un modèle d'instance régional :
ZONE: zone dans laquelle vous souhaitez créer le MIG. Pour un MIG régional, vous devez également spécifier une zone. Cette zone doit être celle qui contient le profil de votre réseau VPC et doit être une zone où le type de machine est disponible. Pour en savoir plus, consultez la section Limites.RESIZE_REQUEST_NAME: nom de la requête de redimensionnement, qui doit être unique dans le MIG spécifié. Sinon, la création de la requête de redimensionnement échoue.COUNT: nombre d'instances à ajouter simultanément au MIG.REGION: région dans laquelle vous souhaitez créer le MIG.
Créer une requête de redimensionnement en spécifiant une liste de noms de VM
Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.
Pour créer une requête de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez la commande bêta gcloud compute instance-groups managed resize-requests create avec l'option --instances :
-
Dans un MIG zonal, exécutez la commande suivante :
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --zone=ZONE -
Dans un MIG régional, exécutez la commande suivante :
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --region=REGION
INSTANCE_NAMES par une liste de noms de VM, séparés par une virgule. Exemple : instance-1,instance-2,instance-3.
REST
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.
Réservation
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
- Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
- Créez un MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0 } - Créez une requête de redimensionnement dans le MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une requête de redimensionnement, procédez comme suit :
- Créez un MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } } - Créez une requête de redimensionnement dans le MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG régional en envoyant une requête
Démarrage flexible
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
- Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
- Créez un MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - Créez une requête de redimensionnement dans le MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une requête de redimensionnement, procédez comme suit :
- Créez un MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - Créez une requête de redimensionnement dans le MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG régional en envoyant une requête
Spot
Pour créer un MIG zonal ou régional et une requête de redimensionnement :
- Pour créer un MIG zonal et une requête de redimensionnement dans celui-ci, procédez comme suit :
- Créez un MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0 } - Créez une requête de redimensionnement dans le MIG zonal en envoyant une requête
POSTà la méthodeinstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une requête de redimensionnement, procédez comme suit :
- Créez un MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagers.insertcomme suit.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } } - Créez une requête de redimensionnement dans le MIG régional en envoyant une requête
POSTà la méthoderegionInstanceGroupManagerResizeRequests.insertcomme suit. Cette requête spécifie le nombre de VM que vous souhaitez créer. Si votre charge de travail nécessite des noms de VM spécifiques, créez une requête de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG régional en envoyant une requête
PROJECT_ID: ID du projet.ZONE: zone dans laquelle vous souhaitez créer le MIG. Cette zone doit être identique à celle qui contient le profil de votre réseau VPC et doit être une zone où le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.REGION: région dans laquelle vous souhaitez créer le MIG. Cette région doit être la même que celle qui contient le profil de votre réseau VPC et doit contenir une zone dans laquelle le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.INSTANCE_TEMPLATE_URL: URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :- Pour un modèle d'instance régional :
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Pour un modèle d'instance global :
INSTANCE_TEMPLATE_ID
- Pour un modèle d'instance régional :
MIG_NAME: nom du MIG.RESIZE_REQUEST_NAME: nom de la requête de redimensionnement, qui doit être unique dans le MIG spécifié. Sinon, la création de la requête de redimensionnement échoue.COUNT: nombre d'instances à ajouter simultanément au MIG.
Créer une requête de redimensionnement en spécifiant une liste de noms de VM
Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.
Pour créer une requête de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez l'une des méthodes suivantes :
-
Dans un MIG zonal, envoyez une requête
POSTà l'aide de la méthodebeta.instanceGroupManagerResizeRequests.insert:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
-
Dans un MIG régional, envoyez une requête
POSTà l'aide de la méthodebeta.regionInstanceGroupManagerResizeRequests.insert:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
Par exemple, pour spécifier deux noms de VM, incluez les éléments suivants dans le corps de la requête :
{
"name": "RESIZE_REQUEST_NAME",
"instances": [
{
"name": "INSTANCE_NAME_1"
},
{
"name": "INSTANCE_NAME_2"
}
]
}
Remplacez
INSTANCE_NAME_1, INSTANCE_NAME_2 par les noms des VM.
Étape suivante
- Vérifier la consommation des réservations
- Afficher la topologie d'une instance de calcul
- Surveiller les VM
- Signaler un hôte défectueux
- Afficher, annuler ou supprimer des requêtes de redimensionnement
- Résoudre les problèmes d'utilisation des réservations