Ce document explique comment créer un groupe d'instances géré (MIG) qui forme des tranches TPU à hôte unique. Une tranche de TPU à hôte unique correspond à une instance de machine virtuelle (VM) TPU.
Vous pouvez également créer une tranche TPU à hôte unique en tant qu'instance TPU autonome. Pour en savoir plus, consultez Créer une instance de VM TPU.
Avant de commencer
- Consultez les limites pour la création de MIG avec des instances TPU.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification permet 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 :
-
Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
gcloud initSi vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
- Définissez une région et une zone par défaut.
-
Prérequis
Avant de créer une tranche TPU à hôte unique, vous devez effectuer les opérations suivantes :
Choisissez la version de TPU : sélectionnez la version de TPU adaptée à votre charge de travail. Pour obtenir la liste des versions de TPU par type de charge de travail, consultez Versions de TPU recommandées par type de charge de travail.
Vérifiez la disponibilité des TPU dans la région de votre choix : les TPU sont disponibles dans des régions Google Cloud spécifiques. Pour utiliser une version de TPU, assurez-vous qu'elle est disponible dans la région de votre choix. Pour obtenir la liste des emplacements des TPU, consultez Disponibilité des TPU.
Assurez-vous que votre projet dispose d'un quota de TPU suffisant : si vous créez une tranche TPU à hôte unique avec des VM à la demande ou Spot, vous devez disposer d'un quota de TPU suffisant dans la région que vous souhaitez utiliser. La création d'une tranche TPU à hôte unique qui consomme une réservation TPU ne nécessite aucun quota de TPU, car le quota est utilisé lors de la création de la réservation. Pour obtenir la liste des noms de quotas de TPU, consultez Quotas de TPU. Pour savoir comment afficher le quota, consultez Afficher et gérer les quotas.
Choisissez une option de consommation de TPU : sélectionnez l'option de consommation qui correspond le mieux à votre charge de travail, à sa durée et à vos besoins en termes de coûts. Pour obtenir la liste des options de consommation disponibles par version de TPU, consultez Options de consommation de TPU.
Choisissez une topologie : sélectionnez une topologie compatible avec la version de TPU sélectionnée. Pour obtenir la liste des topologies disponibles pour chaque version de TPU, consultez Topologie de TPU.
Créer un MIG avec plusieurs tranches TPU à hôte unique
Pour créer plusieurs VM TPU indépendantes dans un MIG :
- Créer un modèle d'instance.
- Créez le MIG.
Créer un modèle d'instance
Les configurations de modèle d'instance varient en fonction de l'option de consommation que vous utilisez : à la demande, Spot, réservations ou démarrage flexible. Pour en savoir plus sur les options de consommation, consultez À propos des modèles de provisionnement de VM.
Créer un modèle d'instance pour une VM TPU à la demande
La commande suivante crée un modèle d'instance qui utilise l'option de consommation à la demande :
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
Remplacez les espaces réservés suivants :
INSTANCE_TEMPLATE_NAME: nom de votre modèle d'instance.MACHINE_TYPE: type de machine pour la VM TPU (par exemple,ct6e-standard-8t).IMAGE_FAMILY: famille d'images d'OS pour la VM TPU. Si vous souhaitez installer une version spécifique de l'OS, utilisez l'option--image. Pour en savoir plus sur les images d'OS, consultez Images d'OS.IMAGE_PROJECT: projet contenant l'image de l'OS. Pour les images TPU, il s'agit deubuntu-os-accelerator-images.
Créer un modèle d'instance pour une VM Spot TPU
La commande suivante crée un modèle d'instance qui utilise l'option de consommation Spot :
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=STOP \
--provisioning-model=SPOT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
Remplacez les espaces réservés suivants :
INSTANCE_TEMPLATE_NAME: nom de votre modèle d'instance.MACHINE_TYPE: type de machine pour la VM TPU (par exemple,ct6e-standard-8t).IMAGE_FAMILY: famille d'images d'OS pour la VM TPU. Si vous souhaitez installer une version spécifique de l'OS, utilisez l'option--image. Pour en savoir plus sur les images d'OS, consultez Images d'OS.IMAGE_PROJECT: projet contenant l'image de l'OS. Pour les images TPU, il s'agit deubuntu-os-accelerator-images.
Créer un modèle d'instance pour une VM liée à une réservation de TPU
La commande suivante crée un modèle d'instance qui utilise l'option de consommation lié à une réservation :
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=DELETE \
--reservation-affinity=specific \
--provisioning-model=reservation-bound \
--reservation=RESERVATION_NAME \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
Remplacez les espaces réservés suivants :
INSTANCE_TEMPLATE_NAME: nom de votre modèle d'instance.MACHINE_TYPE: type de machine pour la VM TPU (par exemple,ct6e-standard-8t).RESERVATION_NAME: nom d'une réservation spécifique que vous souhaitez consommer.IMAGE_FAMILY: famille d'images d'OS pour la VM TPU. Si vous souhaitez installer une version spécifique de l'OS, utilisez l'option--image. Pour en savoir plus sur les images d'OS, consultez Images d'OS.IMAGE_PROJECT: projet contenant l'image de l'OS. Pour les images TPU, il s'agit deubuntu-os-accelerator-images.
Créer un modèle d'instance pour une VM TPU à démarrage flexible
La commande suivante crée un modèle d'instance qui utilise l'option de consommation Démarrage flexible :
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=DELETE \
--provisioning-model=FLEX_START \
--max-run-duration=DURATION \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
Remplacez les espaces réservés suivants :
INSTANCE_TEMPLATE_NAME: nom de votre modèle d'instance.MACHINE_TYPE: type de machine pour la VM TPU (par exemple,ct6e-standard-8t).DURATION: durée d'exécution maximale de la VM TPU (par exemple,1h).IMAGE_FAMILY: famille d'images d'OS pour la VM TPU. Si vous souhaitez installer une version spécifique de l'OS, utilisez l'option--image. Pour en savoir plus sur les images d'OS, consultez Images d'OS.IMAGE_PROJECT: projet contenant l'image de l'OS. Pour les images TPU, il s'agit deubuntu-os-accelerator-images.
Créer un MIG
Créez un MIG zonal ou régional à l'aide de la commande gcloud compute instance-groups managed create comme suit :
Pour créer un MIG zonal contenant une tranche de TPU à hôte unique, utilisez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --size=MIG_SIZE \ --template=INSTANCE_TEMPLATE_URL \ --zone=ZONEPour créer un MIG régional contenant une tranche TPU à hôte unique, utilisez la commande suivante :
gcloud compute instance-groups managed create MIG_NAME \ --size=MIG_SIZE \ --template=INSTANCE_TEMPLATE_URL \ --region=REGION \ --target-distribution-shape=ANY_SINGLE_ZONE \ --instance-redistribution-type=none
Remplacez les espaces réservés suivants :
MIG_NAME: nom de votre MIG.MIG_SIZE: nombre de VM dans 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 :
ZONE: zone dans laquelle vous souhaitez provisionner votre MIG.REGION: Région dans laquelle vous souhaitez provisionner votre MIG.
Créer des VM avec des noms personnalisés dans un MIG
Vous pouvez créer des VM dans un MIG en spécifiant des noms personnalisés pour chacune d'elles. Cela est utile pour le débogage et pour s'assurer que les instances sont créées dans un ordre spécifique.
gcloud
Créez une VM avec un nom personnalisé à l'aide de la commande create-instance et spécifiez l'option --instance. Pour créer plusieurs VM, répétez la commande pour chaque VM. Sinon, utilisez la méthode de l'API REST pour spécifier plusieurs VM dans une seule requête.
Pour un MIG zonal, utilisez la commande suivante :
gcloud compute instance-groups managed create-instance MIG_NAME \ --zone=ZONE \ --instance=INSTANCE_NAMEPour un MIG régional, utilisez la commande suivante :
gcloud compute instance-groups managed create-instance MIG_NAME \ --region=REGION \ --instance=INSTANCE_NAME
Remplacez les espaces réservés suivants :
REST
Créez des VM avec des noms personnalisés à l'aide de l'une des méthodes d'API REST suivantes :
Pour un MIG zonal, utilisez
instanceGroupManagers.createInstances.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/createInstances { "instances": [ { "name": "INSTANCE_NAME_1" }, { "name": "INSTANCE_NAME_2" }, ... ] }Pour un MIG régional, utilisez
regionInstanceGroupManagers.createInstances.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/createInstances { "instances": [ { "name": "INSTANCE_NAME_1" }, { "name": "INSTANCE_NAME_2" }, ... ] }
Remplacez les espaces réservés suivants :
Étapes suivantes
- Créer une tranche multihôte
- Se connecter à une instance de TPU
- Afficher les propriétés d'un MIG
- Afficher l'état d'une tranche de TPU
- Surveiller les TPU
- Supprimer un MIG