Ce document explique comment créer un groupe d'instances géré (MIG) avec des instances de machine virtuelle (VM) auxquelles des GPU sont associés. Il explique comment ajouter simultanément des VM avec GPU dans le groupe à l'aide de demandes de redimensionnement.
L'utilisation d'une requête de redimensionnement améliore l'obtention des VM avec GPU dans un MIG. Dans la requête, spécifiez le nombre de VM avec GPU ainsi que la durée pendant laquelle vous souhaitez exécuter ces VM. Le planificateur de charge de travail dynamique (DWS), mécanisme de planification sous-jacent, planifie les demandes de redimensionnement créées dans Compute Engine en fonction des durées demandées et de la disponibilité des ressources. Lorsque les ressources sont disponibles, le MIG crée automatiquement les VM.
Si votre tâche exécutée sur ces VM se termine avant la durée demandée, vous pouvez supprimer ces VM. Sinon, le MIG supprime automatiquement les VM à la fin de la durée définie.
Vous pouvez également découvrir d'autres scénarios de base pour la création d'un MIG.
Avant de commencer
- Pour vous assurer que vous disposez d'un quota de GPU suffisant pour les ressources que vous demandez, vérifiez votre quota de GPU.
- Pour comprendre la consommation de quota, consultez la section VM GPU et quotas d'allocation préemptive.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Créez un modèle d'instance, qui est nécessaire pour créer un MIG. Le MIG crée chaque VM du groupe en fonction du modèle d'instance. Dans le modèle, spécifiez la configuration des VM avec GPU et les configurations supplémentaires requises pour utiliser des requêtes de redimensionnement.
Pour en savoir plus sur les modèles d'instances, consultez la section À propos des modèles d'instances.
Créez un MIG et une requête de redimensionnement pour ajouter toutes les VM avec GPU à la fois.
Accédez à la page Modèles d'instance.
Cliquez sur Créer un modèle d'instance.
Dans le champ Nom, saisissez un nom pour le modèle d'instance.
Dans la section Configuration de la machine, procédez comme suit :
- Cliquez sur l'onglet GPU.
- Dans la liste Type de GPU, sélectionnez le type de GPU.
- Dans la liste Nombre de GPU, sélectionnez le nombre de GPU.
- Dans le menu Type de machine, sélectionnez un type de machine.
Pour modifier le type ou l'image de disque de démarrage par défaut, cliquez sur Modifier dans la section Disque de démarrage. Suivez ensuite les instructions pour modifier le disque de démarrage.
Développez la section Options avancées et procédez comme suit :
- Développez la section Gestion.
- Dans la liste Réservations, sélectionnez Ne pas utiliser.
Cliquez sur Créer.
INSTANCE_TEMPLATE_NAME
: nom du modèle d'instance.MACHINE_TYPE
: type de machine compatible avec les GPU. Si vous spécifiez un type de machine N1, incluez l'option--accelerator
pour spécifier le nombre et le type de GPU à associer à vos VM.PROJECT_ID
: ID du projet dans lequel vous souhaitez créer le MIG.INSTANCE_TEMPLATE_NAME
: nom du modèle d'instance.MACHINE_TYPE
: type de machine compatible avec les GPU. Si vous spécifiez un type de machine N1, incluez l'optionguestAccelerators
pour spécifier le nombre et le type de GPU à associer à vos VM.Accédez à la page Groupes d'instances.
Cliquez sur Créer un groupe d'instances.
Renseignez les champs suivants:
- Nom : saisissez un nom pour le groupe.
- Modèle d'instance: sélectionnez le modèle d'instance que vous avez configuré dans la section précédente.
- Dans la section Emplacement :
- Sélectionnez Zone unique.
- Dans les listes Région et Zone, sélectionnez l'emplacement où vous souhaitez créer le groupe.
Le champ Nombre d'instances sera disponible à la modification une fois que vous aurez supprimé la configuration d'autoscaling et désactivé les réparations dans les étapes suivantes.
Supprimez la configuration d'autoscaling comme suit:
- Dans la section Autoscaling, cliquez sur la liste Mode d'autoscaling, puis sur Supprimer la configuration d'autoscaling.
- Dans la boîte de dialogue Supprimer la configuration d'autoscaling ?, cliquez sur Supprimer.
Désactivez les réparations dans le MIG comme suit:
Dans la section Cycle de vie de l'instance de VM, définissez le champ Action par défaut en cas d'échec sur Aucune action.
Spécifiez le nombre de VM avec GPU et la durée d'exécution pour créer une requête de redimensionnement:
Dans le champ Nombre d'instances, saisissez le nombre de VM avec GPU que vous souhaitez créer simultanément.
Cochez la case Utiliser la requête de redimensionnement pour créer plusieurs VM à la fois. Les champs permettant de saisir la durée de l'exécution s'affichent.
Dans le champ Durée d'exécution demandée et dans la liste Unité, spécifiez la durée d'exécution des VM avec GPU. La durée doit être comprise entre 1 heure et 7 jours.
Cliquez sur Créer.
Créez un MIG zonal à l'aide de la commande
instance-groups managed create
.gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --template=INSTANCE_TEMPLATE_NAME \ --size=0 \ --zone=ZONE \ --default-action-on-vm-failure=do_nothing
Dans le MIG, créez une demande de redimensionnement à l'aide de la commande
instance-groups managed resize-requests create
. Spécifiez le nombre de VM avec GPU souhaité et la durée d'exécution de ces VM.gcloud compute instance-groups managed resize-requests create INSTANCE_GROUP_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --requested-run-duration=RUN_DURATION\ --zone=ZONE
INSTANCE_GROUP_NAME
: nom du MIG.INSTANCE_TEMPLATE_NAME
: nom du modèle d'instance pour les VM avec GPU.ZONE
: une des zones disponibles pour Compute Engine.RESIZE_REQUEST_NAME
: nom de la requête de redimensionnement.COUNT
: nombre de VM à ajouter simultanément dans le groupe.RUN_DURATION
: durée d'exécution des VM demandées. La valeur doit être formatée en nombre de jours, d'heures, de minutes ou de secondes, suivis respectivement ded
,h
,m
ets
. Par exemple, spécifiez30m
pour 30 minutes ou1d2h3m4s
pour 1 jour, 2 heures, 3 minutes et 4 secondes. Cette valeur doit être comprise entre 10 minutes et 7 jours.Créez un MIG zonal en envoyant une requête
POST
à la méthodeinstanceGroupManagers.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" } ], "name": "INSTANCE_GROUP_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } }
Dans le MIG, créez une demande de redimensionnement en envoyant une requête
POST
à la méthodeinstanceGroupManagerResizeRequests.insert
. Dans le corps de la requête, spécifiez le nombre de VM avec GPU que vous souhaitez créer simultanément et la durée pendant laquelle vous souhaitez exécuter ces VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT, "requestedRunDuration": { "seconds": "RUN_DURATION" } }
PROJECT_ID
: ID du projet dans lequel vous souhaitez créer le MIG.INSTANCE_GROUP_NAME
: nom du MIG.INSTANCE_TEMPLATE_NAME
: nom du modèle d'instance pour les VM avec GPU.ZONE
: une des zones disponibles pour Compute Engine.RESIZE_REQUEST_NAME
: nom de la requête de redimensionnement.COUNT
: nombre de VM à ajouter simultanément dans le groupe.RUN_DURATION
: durée, en secondes, pendant laquelle vous souhaitez que les VM demandées s'exécutent avant que le MIG ne les supprime automatiquement. La valeur doit être comprise entre600
, soit 600 secondes (10 minutes), et604800
, soit 604 800 secondes (7 jours).Découvrez le fonctionnement des requêtes de redimensionnement dans un groupe d'instances géré.
Découvrez comment créer un MIG régional compatible avec les requêtes de redimensionnement (version Preview).
Découvrez comment afficher, annuler ou supprimer des demandes de redimensionnement dans un MIG.
Découvrez comment afficher des informations sur les MIG et les VM gérées.
- Découvrez comment afficher l'utilisation réelle et prévue de vos VM et GPU.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Limites
Consultez les limites liées à la création d'une demande de redimensionnement dans un MIG.
Créer un MIG et ajouter des VM avec GPU en même temps
Pour créer un MIG et ajouter des VM avec GPU en même temps dans le groupe, procédez comme suit :
Créer un modèle d'instance
Créez un modèle d'instance comme décrit dans cette section, puis utilisez-le pour créer un MIG.
Console
gcloud
Créez un modèle d'instance à l'aide de la commande
instance-templates create
.La commande suivante crée un modèle d'instance global basé sur une image Deep Learning VM.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --image-project=deeplearning-platform-release \ --image-family=common-cu121 \ --maintenance-policy=TERMINATE \ --reservation-affinity=none
Remplacez les éléments suivants :
REST
Créez un modèle d'instance en envoyant une requête
POST
à la méthodeinstanceTemplates.insert
.La requête suivante crée un modèle d'instance global basé sur une image Deep Learning VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "mode": "READ_WRITE", "type": "PERSISTENT", "initializeParams": { "sourceImage": "projects/deeplearning-platform-release/global/images/family/common-cu121" } } ], "networkInterfaces": [ { "accessConfigs": [ { "name": "external-IP", "type": "ONE_TO_ONE_NAT" } ], "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, "scheduling": { "onHostMaintenance": "TERMINATE" } } }
Remplacez les éléments suivants :
Créer un MIG et ajouter des VM avec GPU en même temps
Créez un MIG comme décrit dans cette section. Pour utiliser une requête de redimensionnement dans le MIG, vous ne devez pas configurer l'autoscaling et devez désactiver les réparations.
Console
gcloud
Remplacez les éléments suivants :
REST
Remplacez les éléments suivants :
La requête de redimensionnement que vous créez reste à l'état
ACCEPTED
jusqu'à ce que le MIG crée toutes les VM avec GPU demandées. Une fois toutes les VM avec GPU créées dans le groupe, l'état de la requête passe àSUCCEEDED
.Étape suivante
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/12/22 (UTC).
-