Ce document explique comment créer un groupe d'instances géré (MIG) qui utilise un type de machine A3 Edge optimisé pour les accélérateurs. 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 applicables au type de machine et au MIG.
Limites des VM A3 Edge
En fonction de 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 ni abandonner 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 concernant les 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 : 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.
- Obtenir de la capacité : le processus d'obtention de la capacité diffère pour chaque option de consommation. Pour en savoir plus sur la procédure à suivre pour obtenir de la capacité pour l'option de consommation choisie, consultez Présentation de la capacité.
Rôles requis
Pour obtenir les autorisations nécessaires à la création d'un MIG, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur le projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour créer un MIG. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer un MIG :
-
Pour créer un MIG :
compute.instanceGroupManagers.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 demandes de redimensionnement ou aucune de ces options. Pour en savoir plus sur le moment où utiliser chaque option, consultez la section Limites pour les 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 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 :
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 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.
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
- 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, 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 champmaxDistance). 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
- 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, 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 un modèle d'instance
Spécifiez les propriétés de VM pour un MIG en créant un modèle d'instance.
Pour créer un modèle d'instance, sélectionnez l'une des options suivantes :
Les commandes suivantes définissent également le niveau d'accès pour vos instances. Pour simplifier la gestion des autorisations, Google vous recommande de définir le niveau d'accès d'une instance surcloud-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, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 de 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 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 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'indicateur suivant à 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, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--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=none \
--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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 de 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 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 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, passez en revue toutes les étapes suivantes pour déterminer si vous devez inclure des indicateurs supplémentaires.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 de 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 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 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'indicateur suivant à 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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 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'utiliserhyperdisk-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.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 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"
}
],
"reservationAffinity": {
"consumeReservationType": "NO_RESERVATION"
},
"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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 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'utiliserhyperdisk-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.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 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 gamme de machines A3 Edge, nous vous recommandons vivement d'utiliser l'image Container-Optimized OScos-121-ltsou 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 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 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'utiliserhyperdisk-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.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 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 terminé toutes les étapes précédentes, créez un MIG en fonction de votre scénario :
| Scénario | Méthode pour créer un MIG et des VM | Exemple |
|---|---|---|
| Vous disposez de plusieurs tâches ou de tâches parallèles pouvant démarrer avec n'importe quel nombre de VM. | Créez un MIG et utilisez la taille cible pour spécifier le nombre de VM que vous souhaitez inclure dans le groupe. Consultez Créer un MIG avec une taille cible. |
Jobs d'inférence ML |
| Vous avez un job qui nécessite une distribution sur un nombre exact de VM. | Créez un MIG sans VM, puis créez une demande de redimensionnement dans le MIG.
La requête de redimensionnement vous permet d'obtenir des VM simultanément. |
Jobs d'entraînement et d'optimisation 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 continuellement de créer des VM pour atteindre la taille cible.
Pour créer un MIG avec une taille cible, sélectionnez l'une des options suivantes :
gcloud
Pour créer un MIG avec une taille cible spécifiée, utilisez la commande instance-groups managed
create.
Créez un MIG zonal ou régional comme suit :
- Pour créer un MIG zonal, utilisez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --zone=ZONE
- Pour créer un MIG régional, utilisez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --region=REGION
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, vous pouvez spécifier les zones de cette région à l'aide de l'indicateur--zones.
REST
Pour créer un MIG avec une taille cible spécifiée, envoyez une requête POST.
Créez un MIG zonal ou régional comme suit :
- Pour créer un MIG zonal, envoyez une requête
POSTà la mé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 demande de redimensionnement dans le MIG, comme décrit dans cette section.Pour créer une demande de redimensionnement dans un MIG, sélectionnez l'une des options suivantes :
gcloud
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.
Réservation
Pour créer un MIG zonal ou régional et une demande de redimensionnement :
-
Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
Démarrage flexible
Pour créer un MIG zonal ou régional et une demande de redimensionnement :
-
Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
Spot
Pour créer un MIG zonal ou régional et une demande de redimensionnement :
-
Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
-
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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
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 demande de redimensionnement échoue.COUNT: nombre d'instances à ajouter simultanément au MIG.REGION: région dans laquelle vous souhaitez créer le MIG.
Créer une demande de redimensionnement en spécifiant une liste de noms de VM
Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.
Pour créer une demande de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez la commande bêta gcloud compute instance-groups managed resize-requests create avec l'option --instances :
-
Dans un MIG zonal, exécutez la commande suivante :
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --zone=ZONE -
Dans un MIG régional, exécutez la commande suivante :
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --region=REGION
INSTANCE_NAMES par une liste de noms de VM séparés par une virgule. Exemple : instance-1,instance-2,instance-3.
REST
Les paramètres que vous devez spécifier dépendent de l'option de consommation que vous utilisez pour ce déploiement. Sélectionnez l'onglet correspondant au modèle de provisionnement de votre option de consommation.
Réservation
Pour créer un MIG zonal ou régional et une demande de redimensionnement :
- Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
- 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
- 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 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 demande de redimensionnement :
- Pour créer un MIG zonal et une demande 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
- 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG régional en envoyant une requête
Spot
Pour créer un MIG zonal ou régional et une demande de redimensionnement :
- Pour créer un MIG zonal et une demande de redimensionnement dans celui-ci, procédez comme suit :
- 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- Créez un MIG zonal en envoyant une requête
- Pour créer un MIG régional et une demande de redimensionnement dans celui-ci :
- 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 demande 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 demande de redimensionnement en spécifiant une liste de noms de VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 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 la même que celle qui contient le profil de votre réseau VPC et doit être une zone où le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.REGION: région dans laquelle vous souhaitez créer le MIG. Cette région doit être la même que celle qui contient le profil de votre réseau VPC et doit contenir une zone où le type de machine que vous avez choisi est disponible. Pour en savoir plus, consultez la section Limites.INSTANCE_TEMPLATE_URL: URL du modèle d'instance que vous souhaitez utiliser pour créer des instances dans le MIG. L'URL peut contenir l'ID ou le nom du modèle d'instance. Spécifiez une des valeurs suivantes :- Pour un modèle d'instance régional :
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - Pour un modèle d'instance global :
INSTANCE_TEMPLATE_ID
- 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 demande de redimensionnement échoue.COUNT: nombre d'instances à ajouter simultanément au MIG.
Créer une demande de redimensionnement en spécifiant une liste de noms de VM
Si votre charge de travail nécessite des noms de VM spécifiques, spécifiez une liste de noms pour créer les VM. Le nombre de noms que vous spécifiez détermine le nombre de VM que le MIG crée simultanément.
Pour créer une demande de redimensionnement avec des noms de VM spécifiques dans un MIG, utilisez l'une des méthodes suivantes :
-
Dans un MIG zonal, envoyez une requête
POSTà l'aide de la mé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 de consommation de réservations