Conectar una TPU a una red de VPC compartida
En esta guía se explica cómo configurar las TPUs de Cloud que usan una red de VPC compartida gestionada de forma centralizada. En este documento se da por hecho que conoces las VPCs y que has creado una VPC compartida. Para obtener más información sobre cómo crear y gestionar redes de VPC compartidas, consulta el artículo Crear y modificar redes de VPC compartidas.
Configurar un proyecto host de VPC
Debes conceder a la cuenta de servicio de TPU de tu proyecto de servicio permisos para gestionar recursos en el proyecto host.
Para ello, usa el rol "Agente de VPC compartida de TPU" (roles/tpu.xpnAgent). Ejecuta los siguientes comandos gcloud para conceder este enlace de rol.
gcloud projects add-iam-policy-binding host-project-id \ --member=serviceAccount:service-your-service-project-number@gcp-sa-tpu.iam.gserviceaccount.com \ --role=roles/tpu.xpnAgent
Crear una VM de TPU conectada a una red de VPC compartida
Primero, determina qué tipos y versiones de acelerador están disponibles en la zona.
gcloud compute tpus accelerator-types list --zone zone
gcloud compute tpus versions list --zone zone
Cuando creas tu TPU, conectas una VM de TPU a una red de VPC compartida.
Especifica tu VPC compartida con la etiqueta --network:
gcloud compute tpus tpu-vm create tpu-name \ --zone zone \ --accelerator-type accelerator-type \ --network projects/host-project-id/global/networks/host-network \ --version tpu-image-version \ --project your-service-project-id
Puedes verificar que tu VM de TPU está conectada a tu VPC compartida con el comando gcloud describe:
$ gcloud compute tpus tpu-vm describe tpu-name --zone zone
La respuesta incluye la red a la que está conectada tu VM de TPU:
acceleratorType: v3-8
apiVersion: V2
cidrBlock: 10.128.0.0/20
createTime: '2022-06-17T21:32:13.859274143Z'
health: HEALTHY
id: '0000000000000000000'
name: projects/my-project/locations/us-central1-b/nodes/my-tpu
networkConfig:
enableExternalIps: true
network: projects/my-project/global/networks/default
subnetwork: projects/my-project/regions/us-central1/subnetworks/default
networkEndpoints:
- accessConfig:
externalIp: 000.000.000.000
ipAddress: 10.128.0.104
port: 8470
runtimeVersion: tpu-vm-tf-2.8.0
schedulingConfig: {}
serviceAccount:
email: 00000000000-compute@developer.gserviceaccount.com
scope:
- https://www.googleapis.com/auth/devstorage.read_write
- https://www.googleapis.com/auth/logging.write
- https://www.googleapis.com/auth/service.management
- https://www.googleapis.com/auth/servicecontrol
- https://www.googleapis.com/auth/cloud-platform
- https://www.googleapis.com/auth/pubsub
shieldedInstanceConfig: {}
state: READY
Eliminar la VM de TPU
Cuando hayas terminado de usar la VM de TPU, asegúrate de eliminarla.
gcloud compute tpus tpu-vm delete tpu-name --zone zone