Mengonfigurasi jaringan dan akses ke instance TPU
Halaman ini menjelaskan cara menyiapkan konfigurasi jaringan dan akses kustom untuk instance TPU, termasuk:
- Menentukan jaringan dan subnetwork kustom
- Menentukan alamat IP eksternal dan internal
- Mengaktifkan akses SSH ke TPU
- Melampirkan akun layanan kustom ke TPU
- Mengaktifkan metode SSH kustom
- Menggunakan Kontrol Layanan VPC
Prasyarat
Sebelum menjalankan prosedur ini, Anda harus menginstal Google Cloud CLI, membuat project Google Cloud , dan mengaktifkan Compute Engine API. Untuk mengetahui petunjuknya, lihat Menyiapkan project Google Cloud untuk TPU.
Menentukan jaringan dan subnetwork kustom
Saat membuat instance atau template instance TPU VM, Anda dapat secara opsional menentukan
jaringan dan subnetwork yang akan digunakan untuk TPU. Jika Anda tidak menentukan jaringan, TPU akan berada di jaringan default. Subnetwork harus berada di region yang sama dengan zona tempat TPU berjalan.
Buat jaringan dan subnetwork dengan mengikuti petunjuk untuk membuat jaringan VPC.
Buat VM TPU, dengan menentukan jaringan dan subnetwork kustom:
Untuk menentukan jaringan dan subnetwork, sertakan flag jaringan yang ditunjukkan dalam contoh berikut saat Anda menjalankan perintah
gcloud compute instances create:gcloud compute instances create TPU_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --zone=ZONE \ --maintenance-policy=TERMINATE \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --stack-type=STACK_TYPE \ --private-network-ip=INTERNAL_IPV4_ADDRESS \ --address=EXTERNAL_IPV4_ADDRESSGanti placeholder berikut:
- TPU_NAME: Nama untuk VM TPU.
- MACHINE_TYPE: Jenis mesin
untuk VM TPU (misalnya,
ct6e-standard-8t). - IMAGE_FAMILY: Kelompok image OS
untuk VM TPU. Jika Anda ingin menginstal versi OS tertentu, gunakan
flag
--image. Untuk mengetahui informasi selengkapnya tentang image OS, lihat Image OS. - IMAGE_PROJECT: Project yang berisi image
OS. Untuk image TPU, ini adalah
ubuntu-os-accelerator-images. - ZONE: Zona untuk
TPU VM (misalnya,
us-central1-b). - NETWORK_NAME: Opsional: nama jaringan. Jika menentukan jaringan, Anda harus menentukan subnet dan subnet tersebut harus berasal dari jaringan yang sama. Jika Anda tidak menentukan jaringan, Compute Engine akan menyimpulkan jaringan dari subnet yang telah ditentukan.
SUBNET_NAME: Nama subnet yang akan digunakan dengan instance.
Untuk melihat daftar subnet di dalam jaringan, gunakan perintah
gcloud compute networks subnets list.STACK_TYPE: Opsional: jenis stack jaringan untuk antarmuka jaringan.
STACK_TYPEharus salah satu dari:IPV4_ONLY,IPV4_IPV6, atauIPV6_ONLY(Pratinjau). Nilai defaultnya adalahIPV4_ONLY.INTERNAL_IPV4_ADDRESS: Opsional: alamat IPv4 internal yang Anda inginkan untuk digunakan instance komputasi di subnet target. Hilangkan tanda ini jika Anda tidak memerlukan alamat IP tertentu.
Untuk menentukan alamat IPv6 internal, gunakan flag
--internal-ipv6-address.EXTERNAL_IPV4_ADDRESS: Opsional: alamat IPv4 eksternal statis yang akan digunakan dengan antarmuka jaringan. Ganti EXTERNAL_IPV4_ADDRESS dengan salah satu dari berikut ini:
- Alamat IPv4 yang valid dari subnet yang ditentukan. Anda harus sudah mencadangkan alamat IPv4 eksternal sebelumnya.
''(string kosong) untuk menggunakan alamat IP eksternal sementara.
Jika Anda tidak ingin VM memiliki alamat IP eksternal, ganti tanda
--addressdengan tanda--no-address.Untuk menentukan alamat IPv6 eksternal, gunakan flag
--external-ipv6-addresssebagai gantinya.
Memahami alamat IP eksternal dan internal
Saat Anda membuat instance VM TPU, instance tersebut selalu memiliki alamat IP internal.
Jika Anda membuat instance TPU menggunakan gcloud CLI, alamat IP eksternal akan dibuat secara default. Jika Anda membuatnya melalui
Compute Engine REST API (compute.googleapis.com), alamat IP eksternal tidak ditetapkan secara default. Anda dapat mengubah perilaku default dalam kedua kasus tersebut.
Berikut adalah beberapa alasan untuk membatasi VM TPU Anda agar hanya menggunakan alamat IP internal:
- Peningkatan keamanan: Alamat IP internal hanya dapat diakses oleh resource dalam jaringan VPC yang sama, yang dapat meningkatkan keamanan dengan membatasi akses eksternal ke VM TPU. Hal ini sangat penting saat bekerja dengan data sensitif atau saat Anda ingin membatasi akses ke VM TPU bagi pengguna atau sistem tertentu dalam jaringan Anda.
- Penghematan biaya: Dengan menggunakan alamat IP internal, Anda dapat menghindari biaya yang terkait dengan alamat IP eksternal, yang bisa signifikan untuk sejumlah besar VM TPU.
- Peningkatan performa jaringan: Alamat IP internal dapat menghasilkan performa jaringan yang lebih baik karena traffic tetap berada dalam jaringan Google, sehingga menghindari overhead perutean melalui internet publik. Hal ini sangat relevan untuk workload machine learning skala besar yang memerlukan komunikasi bandwidth tinggi antar-VM TPU.
Membuat instance VM TPU tanpa alamat IP eksternal
Jika Anda ingin membuat instance VM TPU
tanpa alamat IP eksternal, gunakan flag --no-address saat menjalankan
perintah gcloud compute instances create:
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--maintenance-policy=TERMINATE \
--network=NETWORK_NAME \
--subnet=SUBNET_NAME \
--stack-type=STACK_TYPE \
--private-network-ip=INTERNAL_IPV4_ADDRESS \
--no-address
Ganti placeholder berikut:
- TPU_NAME: Nama untuk VM TPU.
- MACHINE_TYPE: Jenis mesin
untuk VM TPU (misalnya,
ct6e-standard-8t). - IMAGE_FAMILY: Kelompok image OS
untuk VM TPU. Jika Anda ingin menginstal versi OS tertentu, gunakan flag
--image. Untuk mengetahui informasi selengkapnya tentang image OS, lihat Image OS. - IMAGE_PROJECT: Project yang berisi image OS.
Untuk image TPU, ini adalah
ubuntu-os-accelerator-images. - ZONE: Zona
untuk VM TPU (misalnya
us-central1-b). - NETWORK_NAME: Opsional: nama jaringan. Jika menentukan jaringan, Anda harus menentukan subnet dan subnet tersebut harus berasal dari jaringan yang sama. Jika Anda tidak menentukan jaringan, Compute Engine akan menyimpulkan jaringan dari subnet yang telah ditentukan.
SUBNET_NAME: Nama subnet yang akan digunakan dengan instance.
Untuk melihat daftar subnet di dalam jaringan, gunakan perintah
gcloud compute networks subnets list.STACK_TYPE: Opsional: jenis stack jaringan untuk antarmuka jaringan.
STACK_TYPEharus salah satu dari:IPV4_ONLY,IPV4_IPV6, atauIPV6_ONLY(Pratinjau). Nilai defaultnya adalahIPV4_ONLY.INTERNAL_IPV4_ADDRESS: Opsional: alamat IPv4 internal yang Anda inginkan untuk digunakan instance komputasi di subnet target. Hilangkan tanda ini jika Anda tidak memerlukan alamat IP tertentu.
Untuk menentukan alamat IPv6 internal, gunakan flag
--internal-ipv6-addresssebagai gantinya.
Membuat instance VM TPU dengan alamat IP eksternal
Saat Anda membuat instance VM TPU menggunakan gcloud CLI, instance tersebut akan mendapatkan alamat IP eksternal sementara secara default.
Untuk membuat VM TPU dengan alamat IP eksternal saat menggunakan REST API, buat permintaan POST ke metode instances.insert dan sertakan kolom accessConfigs dalam array networkInterfaces di isi permintaan. Jika
isi permintaan tidak menentukan kolom accessConfigs, instance tidak akan memiliki akses internet eksternal.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType":"zones/ZONE/machineTypes/MACHINE_TYPE",
"name":"TPU_NAME",
"disks":[
{
"initializeParams":{
"sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"boot":true
}
],
"networkInterfaces":[
{
"network":"global/networks/NETWORK_NAME",
"subnetwork":"regions/REGION/subnetworks/SUBNET_NAME",
"stackType":"STACK_TYPE",
"accessConfigs":[
{
"name": "external-nat",
"type": "ONE_TO_ONE_NAT"
}
]
}
],
"scheduling": {
"onHostMaintenance": "TERMINATE"
}
}
Ganti placeholder berikut:
- PROJECT_ID: ID project tempat Anda ingin membuat VM TPU.
- ZONE: Zona untuk TPU
VM (misalnya,
us-central1-b). - MACHINE_TYPE: Jenis mesin
untuk VM TPU (misalnya,
ct6e-standard-8t). - TPU_NAME: Nama untuk VM TPU.
- IMAGE_PROJECT: Project yang berisi image
OS. Untuk image TPU, ini adalah
ubuntu-os-accelerator-images. IMAGE_FAMILY: Kelompok image OS untuk VM TPU. Jika Anda ingin menginstal versi OS tertentu, ganti seluruh nilai
"sourceImage"dengan nama versi image dalam format berikut:projects/IMAGE_PROJECT/global/images/IMAGE_NAME.Untuk mengetahui informasi selengkapnya tentang image OS, lihat Image OS.
NETWORK_NAME: Opsional: nama jaringan. Jika menentukan jaringan, Anda harus menentukan subnet dan subnet tersebut harus berasal dari jaringan yang sama. Jika Anda tidak menentukan jaringan, Compute Engine akan menyimpulkan jaringan dari subnet yang telah ditentukan.
REGION: Region subnetwork.
SUBNET_NAME: Nama subnet yang akan digunakan dengan instance.
Untuk melihat daftar subnet di dalam jaringan, gunakan perintah
gcloud compute networks subnets list.STACK_TYPE: Opsional: jenis stack untuk antarmuka jaringan.
STACK_TYPEharus salah satu dari:IPV4_ONLY,IPV4_IPV6, atauIPV6_ONLY(Pratinjau). Nilai defaultnya adalahIPV4_ONLY.
Jika telah mencadangkan alamat IP eksternal statis, Anda dapat menetapkannya ke instance pada waktu pembuatan menggunakan flag --address dengan alamat IP statis atau flag --network-interface untuk
menetapkan konfigurasi jaringan yang mendetail. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi alamat IP eksternal statis.
Mengaktifkan akses SSH ke instance VM TPU
Untuk mengaktifkan akses SSH ke instance VM TPU:
- Instance TPU harus dapat dijangkau melalui alamat IP eksternal atau
Akses Google Pribadi.
- Jika Anda membuat instance TPU menggunakan gcloud CLI, instance akan mendapatkan alamat IP eksternal sementara secara default. Jika membuat instance TPU menggunakan REST API, Anda harus menentukan bahwa instance tersebut harus memiliki alamat IP eksternal. Untuk mengetahui informasi selengkapnya, lihat Membuat instance VM TPU dengan alamat IP eksternal.
- Jika instance TPU Anda tidak memiliki alamat IP eksternal, Anda dapat mengonfigurasi Akses Google Pribadi. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan Akses Google Pribadi.
- Jaringan yang digunakan instance TPU harus mengizinkan traffic SSH. Jaringan default otomatis mengizinkan traffic SSH. Jika menggunakan jaringan kustom atau mengubah setelan jaringan default, Anda harus mengaktifkan SSH secara eksplisit di jaringan.
Mengaktifkan Akses Google Pribadi
TPU yang tidak memiliki alamat IP eksternal dapat menggunakan Akses Google Pribadi untuk mengakses Google API dan layanan Google. Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan Akses Google Pribadi, lihat Mengonfigurasi Akses Google Pribadi.
Setelah Anda mengonfigurasi Akses Google Pribadi, hubungkan ke VM menggunakan SSH.
Mengaktifkan traffic SSH di jaringan
Jaringan default mengizinkan akses SSH ke semua VM TPU. Jika Anda menggunakan jaringan kustom atau mengubah setelan jaringan default, Anda harus mengaktifkan akses SSH secara eksplisit dengan menambahkan aturan firewall:
gcloud compute firewall-rules create \ --network=NETWORK allow-ssh \ --allow=tcp:22
Melampirkan akun layanan kustom
Setiap VM TPU memiliki akun layanan terkait yang digunakannya untuk membuat permintaan API atas nama Anda. VM TPU menggunakan akun layanan ini untuk memanggil API Compute Engine dan mengakses Cloud Storage serta layanan lainnya. Secara default, TPU VM Anda menggunakan akun layanan Compute Engine default.
Untuk mengetahui informasi selengkapnya tentang akun layanan, lihat Akun layanan.
Untuk menentukan akun layanan kustom saat membuat instance VM TPU, gunakan perintah gcloud compute instances create dan berikan email akun layanan serta cakupan akses cloud-platform ke instance VM:
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--maintenance-policy=TERMINATE \
--service-account=SERVICE_ACCOUNT_EMAIL \
--scopes=https://www.googleapis.com/auth/cloud-platform
Ganti kode berikut:
- TPU_NAME: Nama untuk VM TPU.
- MACHINE_TYPE: Jenis mesin
untuk VM TPU (misalnya,
ct6e-standard-8t). - IMAGE_FAMILY: Kelompok image OS
untuk VM TPU. Jika Anda ingin menginstal versi OS tertentu, gunakan
flag
--image. Untuk mengetahui informasi selengkapnya tentang image OS, lihat Image OS. - IMAGE_PROJECT: Project yang berisi image
OS. Untuk image TPU, ini adalah
ubuntu-os-accelerator-images. - ZONE: Zona untuk VM TPU
(misalnya
us-central1-b). - SERVICE_ACCOUNT_EMAIL: Alamat email untuk
akun layanan yang Anda buat. Contoh:
my-sa-123@my-project-123.iam.gserviceaccount.com. Untuk melihat alamat email, lihat Mencantumkan akun layanan.
Untuk menggunakan akun layanan di project yang berbeda dari tempat Anda membuat VM TPU, ikuti petunjuk dari Menggunakan akun layanan lintas project.
Mengintegrasikan dengan Kontrol Layanan VPC
Gunakan Kontrol Layanan VPC untuk menentukan perimeter keamanan di sekitar resource TPU Anda dan mengontrol pergerakan data di seluruh batas perimeter. Untuk mempelajari lebih lanjut, lihat Ringkasan Kontrol Layanan VPC. Untuk mempelajari batasan penggunaan TPU dengan Kontrol Layanan VPC, lihat produk yang didukung dan batasan.