공유 VPC 네트워크에 TPU 연결
VPC 호스트 프로젝트 구성
서비스 프로젝트의 TPU 서비스 계정에 호스트 프로젝트의 리소스를 관리할 수 있는 권한을 부여해야 합니다.
'TPU 공유 VPC 에이전트'(roles/tpu.xpnAgent
) 역할을 사용하여 이 작업을 수행합니다. 이 역할 결합을 부여하려면 다음 gcloud
명령어를 실행합니다.
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
공유 VPC 네트워크에 연결된 TPU VM 만들기
먼저 영역에서 사용할 수 있는 가속기 유형 및 버전 결정
gcloud compute tpus accelerator-types list --zone zone
gcloud compute tpus versions list --zone zone
TPU를 만들 때 공유 VPC 네트워크에 TPU VM을 연결합니다.
--network
태그를 사용하여 공유 VPC를 지정합니다.
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
gcloud describe
명령어를 사용하여 TPU VM이 공유 VPC에 연결되어 있는지 확인할 수 있습니다.
$ gcloud compute tpus tpu-vm describe tpu-name --zone zone
응답에는 TPU VM이 연결된 네트워크가 포함됩니다.
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
TPU VM 삭제
TPU VM을 사용한 후에는 삭제해야 합니다.
gcloud compute tpus tpu-vm delete tpu-name --zone zone