Menggunakan akun layanan lintas project

Dokumen ini menjelaskan cara menggunakan akun layanan lintas project saat membuat VM TPU. Akun layanan lintas project adalah akun layanan yang berada di project yang berbeda dengan VM TPU.

Petunjuk ini tidak mencakup pertimbangan untuk VPC Bersama atau Kontrol Layanan VPC. Konfigurasi atau izin tambahan mungkin diperlukan untuk mendukung penggunaannya. Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengubah jaringan VPC Bersama dan Ringkasan Kontrol Layanan VPC.

Sebelum memulai

Menetapkan izin IAM

  1. Berikan peran Service Account User ke akun pengguna Anda agar dapat melampirkan akun layanan ke instance VM.

    gcloud iam service-accounts add-iam-policy-binding \
      SERVICE_ACCOUNT_EMAIL \
      --project=SERVICE_PROJECT_ID \
      --member=user:USER_EMAIL \
      --role=roles/iam.serviceAccountUser
    

    Ganti placeholder berikut:

    • SERVICE_ACCOUNT_EMAIL: Alamat email akun layanan.
    • SERVICE_PROJECT_ID: ID project yang berisi akun layanan.
    • USER_EMAIL: Alamat email akun pengguna.
  2. Jika workload Anda berjalan di container Docker, berikan akses Agen Layanan Compute Engine ke server metadata.

    gcloud iam service-accounts add-iam-policy-binding \
      SERVICE_ACCOUNT_EMAIL \
      --project=SERVICE_PROJECT_ID \
      --role=roles/iam.serviceAccountTokenCreator \
      --member=serviceAccount:service-TPU_PROJECT_ID@compute-system.iam.gserviceaccount.com
    

    Ganti placeholder berikut:

    • SERVICE_ACCOUNT_EMAIL: Alamat email akun layanan.
    • SERVICE_PROJECT_ID: ID project yang berisi akun layanan.
    • TPU_PROJECT_ID: ID project yang berisi VM TPU.

Buat VM TPU di project TPU

Buat VM TPU di project TPU menggunakan akun layanan di project layanan.

  gcloud compute instances create TPU_NAME \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --service-account=SERVICE_ACCOUNT_EMAIL \
    --project=TPU_PROJECT_ID \
    --zone=ZONE \
    --maintenance-policy=TERMINATE

Ganti placeholder berikut:

  • TPU_NAME: Nama VM TPU.
  • MACHINE_TYPE: Jenis mesin.
  • IMAGE_FAMILY: Kelompok image OS untuk VM TPU. Untuk menginstal versi OS tertentu, gunakan flag --image.
  • IMAGE_PROJECT: Project yang berisi image OS. Untuk image TPU, ini adalah ubuntu-os-accelerator-images.
  • SERVICE_ACCOUNT_EMAIL: Alamat email akun layanan.
  • TPU_PROJECT_ID: ID project yang berisi VM TPU.
  • ZONE: Zona VM TPU.