Connetti una TPU a una rete VPC condiviso

Questa guida spiega come configurare le Cloud TPU che utilizzano una rete VPC condivisa gestita centralmente . Questo documento presuppone che tu conosca i VPC e che tu abbia creato un VPC condiviso. Per saperne di più su come creare e gestire le reti VPC condiviso, consulta Crea e modifica le VPC condiviso condivise.

Configura un progetto host VPC

Devi concedere al service account TPU nel tuo progetto di servizio le autorizzazioni per gestire le risorse nel progetto host. Per farlo, utilizza il ruolo "Agente VPC condiviso TPU" (roles/tpu.xpnAgent). Esegui i seguenti comandi gcloud per concedere questo binding di ruolo.

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

Crea una VM TPU connessa a una rete VPC condivisa

Per prima cosa, determina i tipi e le versioni di acceleratori disponibili nella zona

gcloud compute tpus accelerator-types list --zone zone
gcloud compute tpus versions list --zone zone

Collega una VM TPU a una rete VPC condiviso quando crei la TPU. Specifica il VPC condiviso utilizzando il tag --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

Puoi verificare che la VM TPU sia connessa al VPC condiviso utilizzando il comando gcloud describe:

$ gcloud compute tpus tpu-vm describe tpu-name --zone zone

La risposta include la rete a cui è collegata la VM 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

Elimina la VM TPU

Al termine dell'utilizzo della VM TPU, assicurati di eliminarla.

gcloud compute tpus tpu-vm delete tpu-name --zone zone