Mengonfigurasi jaringan dan akses ke Cloud TPU

Halaman ini menjelaskan cara menyiapkan konfigurasi akses dan jaringan kustom untuk Cloud TPU Anda, termasuk:

  • Menentukan jaringan dan subnetwork kustom
  • Menentukan alamat IP internal
  • Mengaktifkan akses SSH ke TPU
  • Melampirkan akun layanan kustom ke TPU
  • Mengaktifkan metode SSH kustom

Prasyarat

Sebelum menjalankan prosedur ini, Anda harus menginstal Google Cloud CLI, membuat project Google Cloud, dan mengaktifkan Cloud TPU API. Untuk mengetahui petunjuknya, lihat Menyiapkan lingkungan Cloud TPU.

Menentukan jaringan dan subnetwork kustom

Secara opsional, Anda dapat menentukan jaringan dan subnetwork yang akan digunakan untuk TPU. Jika jaringan tidak ditentukan, TPU akan berada di jaringan default. Subnet harus berada di region yang sama dengan zona tempat TPU berjalan.

  1. Buat jaringan yang cocok dengan salah satu format valid berikut:

    • https://www.googleapis.com/compute/{version}/projects/{proj-id}/global/networks/{network}
    • compute/{version}/projects/{proj-id}/global/networks/{network}
    • compute/{version}/projects/{proj-##}/global/networks/{network}
    • projects/{proj-id}/global/networks/{network}
    • projects/{proj-##}/global/networks/{network}
    • global/networks/{network}
    • {network}

    Untuk informasi selengkapnya, lihat Membuat dan mengelola jaringan VPC.

  2. Buat subnetwork yang cocok dengan salah satu format valid berikut:

    • https://www.googleapis.com/compute/{version}/projects/{proj-id}/regions/{region}/subnetworks/{subnetwork}
    • compute/{version}/projects/{proj-id}/regions/{region}/subnetworks/{subnetwork}
    • compute/{version}/projects/{proj-##}/regions/{region}/subnetworks/{subnetwork}
    • projects/{proj-id}/regions/{region}/subnetworks/{subnetwork}
    • projects/{proj-##}/regions/{region}/subnetworks/{subnetwork}
    • regions/{region}/subnetworks/{subnetwork}
    • {subnetwork}

    Untuk informasi selengkapnya, lihat Membuat dan mengelola jaringan VPC.

  3. Buat TPU, dengan menentukan jaringan dan subnetwork kustom:

    gcloud

    Untuk menentukan jaringan dan subjaringan menggunakan CLI gcloud, tambahkan flag --network dan --subnetwork ke permintaan pembuatan Anda:

        $ gcloud compute tpus tpu-vm create TPU_NAME \
            --zone=us-central2-b \
            --accelerator-type=v4-8 \
            --version=TPU_SOFTWARE_VERSION
            --network=NETWORK
            --subnetwork=SUBNETWORK

    curl

    Untuk menentukan jaringan dan subnetwork dalam panggilan curl, tambahkan kolom network dan subnetwork ke isi permintaan:

        $ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: 'v4-8', \
            runtime_version:'tpu-vm-tf-2.18.0-pjrt', \
            network_config: {network: 'NETWORK', subnetwork: 'SUBNETWORK', enable_external_ips: true}, \
            shielded_instance_config: { enable_secure_boot: true }}" \
            https://tpu.googleapis.com/v2/projects/PROJECT_ID/locations/us-central2-b/nodes?node_id=TPU_NAME

Mengaktifkan alamat IP internal

Saat Anda membuat TPU, alamat IP eksternal akan dibuat secara default untuk setiap VM TPU.

Jika Anda ingin membuat alamat IP internal untuk VM TPU, gunakan flag --internal-ips saat membuat TPU.

gcloud

Jika Anda menggunakan resource yang diantrekan:

gcloud compute tpus queued-resources create your-queued-resource-id \
  --node-id your-node-id \
  --project your-project \
  --zone us-central2-b \
  --accelerator-type v4-8 \
  --runtime-version tpu_software_version \
  --internal-ips

Jika Anda menggunakan Create Node API:

$ gcloud compute tpus tpu-vm create TPU_NAME \
    --zone=us-central2-b \
    --accelerator-type=v4-8 \
    --version=tpu_software_version \
    --internal-ips

curl

Tetapkan kolom enable_external_ips ke false dalam isi permintaan:

$ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: 'v4-8', \
    runtime_version:'tpu-vm-tf-2.18.0-pjrt', \
    network_config: {enable_external_ips: false}, \
    shielded_instance_config: { enable_secure_boot: true }}" \
    https://tpu.googleapis.com/v2/projects/PROJECT_ID/locations/us-central2-b/nodes?node_id=TPU_NAME

Mengaktifkan metode SSH kustom

Untuk terhubung ke TPU menggunakan SSH, Anda harus mengaktifkan alamat IP eksternal untuk TPU, atau mengaktifkan Akses Google Pribadi untuk subnet tempat VM TPU terhubung.

Mengaktifkan Akses Google Pribadi

TPU yang tidak memiliki alamat IP eksternal dapat menggunakan Akses Google Pribadi untuk mengakses Google API dan layanan Google. Untuk informasi selengkapnya tentang cara mengaktifkan Akses Google Pribadi, lihat Mengonfigurasi Akses Google Pribadi.

Setelah Anda mengonfigurasi Akses Google Pribadi, hubungkan ke VM menggunakan SSH.

Melampirkan akun layanan kustom

Setiap VM TPU memiliki akun layanan terkait yang digunakan untuk membuat permintaan API atas nama Anda. VM TPU menggunakan akun layanan ini untuk memanggil Cloud TPU API dan mengakses Cloud Storage serta layanan lainnya. Secara default, VM TPU Anda menggunakan akun layanan Compute Engine default.

Akun layanan harus ditentukan dalam project Google Cloud yang sama dengan tempat Anda membuat VM TPU. Akun layanan kustom yang digunakan untuk VM TPU harus memiliki peran TPU Viewer untuk memanggil Cloud TPU API. Jika kode yang berjalan di VM TPU Anda memanggil layanan Google Cloud lainnya, kode tersebut harus memiliki peran yang diperlukan untuk mengakses layanan tersebut.

Untuk informasi selengkapnya tentang akun layanan, lihat Akun layanan.

Gunakan perintah berikut untuk menentukan akun layanan kustom.

gcloud

Gunakan flag --service-account saat membuat TPU:

$ gcloud compute tpus tpu-vm create TPU_NAME \
    --zone=us-central2-b \
    --accelerator-type=TPU_TYPE \
    --version=tpu-vm-tf-2.18.0-pjrt \
    --service-account=SERVICE_ACCOUNT

curl

Tetapkan kolom service_account dalam isi permintaan:

$ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: 'v4-8', \
    runtime_version:'tpu-vm-tf-2.18.0-pjrt', \
    network_config: {enable_external_ips: true}, \
    shielded_instance_config: { enable_secure_boot: true }}" \
    service_account: {email: 'SERVICE_ACCOUNT'} \
    https://tpu.googleapis.com/v2/projects/PROJECT_ID/locations/us-central2-b/nodes?node_id=TPU_NAME

Mengaktifkan metode SSH kustom

Jaringan default mengizinkan akses SSH ke semua VM TPU. Jika menggunakan jaringan selain default atau mengubah setelan jaringan default, Anda harus mengaktifkan akses SSH secara eksplisit dengan menambahkan aturan firewall:

$ gcloud compute tpus tpu-vm compute firewall-rules create \
    --network=NETWORK allow-ssh \
    --allow=tcp:22