Anda dapat mengonfigurasi tugas AI Platform Training untuk melakukan peering dengan Virtual Private Cloud (VPC). Dengan begitu, tugas pelatihan Anda dapat mengakses alamat IP pribadi di dalam jaringan Google Cloud atau lokal Anda. Menggunakan IP pribadi untuk terhubung ke tugas pelatihan akan memberikan lebih banyak keamanan jaringan dan latensi jaringan yang lebih rendah daripada menggunakan IP publik.
Panduan ini menunjukkan cara mengonfigurasi IP pribadi dengan AI Platform Training menggunakan Peering Jaringan VPC untuk melakukan peering jaringan Anda dengan tugas AI Platform Training. Panduan ini direkomendasikan bagi administrator jaringan yang sudah memahami konsep jaringan Google Cloud.
Ringkasan
Panduan ini mencakup tugas-tugas berikut:
- Konfigurasi akses layanan pribadi untuk VPC. Tindakan ini akan membuat koneksi peering antara VPC Anda dan jaringan VPC bersama Google.
- Pertimbangkan rentang IP yang perlu Anda cadangkan untuk Pelatihan AI Platform.
- Jika ada, ekspor rute kustom agar Pelatihan AI Platform dapat mengimpornya.
- Memverifikasi status koneksi peering Anda.
- Kirim tugas pelatihan di jaringan Anda.
- Memeriksa tugas pelatihan aktif di satu jaringan sebelum mengirimkan tugas di jaringan lain.
- Menguji apakah tugas pelatihan dapat mengakses IP pribadi di jaringan Anda.
Sebelum memulai
- Pilih VPC yang ingin Anda lakukan peering dengan tugas AI Platform Training.
- Pilih atau buat project Google Cloud untuk menjalankan tugas pelatihan dengan AI Platform Training.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API, AI Platform Training & Prediction, and the Service Networking APIs.
- Anda juga dapat menggunakan VPC Bersama. Jika menggunakan VPC Bersama, Anda biasanya menjalankan tugas pelatihan di project Google Cloud yang terpisah dari project host VPC Anda. Aktifkan Compute Engine API dan Service Networking API di kedua project. Pelajari cara menyediakan VPC Bersama.
- Instal gcloud CLI jika Anda ingin menjalankan contoh command line
gcloud
dalam panduan ini.
Izin
Jika Anda bukan pemilik atau editor project, pastikan Anda memiliki peran Compute Network Admin, yang mencakup izin yang diperlukan untuk mengelola resource jaringan.
Untuk menjalankan tugas di AI Platform Training, Anda memerlukan izin yang disertakan dalam peran Admin AI Platform Training atau Developer AI Platform Training. Pelajari lebih lanjut peran IAM AI Platform Training.
Peering dengan jaringan lokal
Untuk Peering Jaringan VPC dengan jaringan lokal, ada langkah-langkah tambahan:
- Hubungkan jaringan lokal ke VPC Anda. Anda dapat menggunakan tunnel VPN atau Interconnect.
- Siapkan rute kustom dari VPC ke jaringan lokal Anda.
- Ekspor rute kustom Anda agar AI Platform Training dapat mengimpornya.
Menyiapkan akses layanan pribadi untuk VPC Anda
Saat menyiapkan akses layanan pribadi, Anda membuat koneksi pribadi antara jaringan Anda dan jaringan milik Google atau layanan pihak ketiga (produsen layanan). Dalam hal ini, AI Platform Training adalah produsen layanan. Untuk menyiapkan akses layanan pribadi, Anda mencadangkan rentang IP untuk produsen layanan, lalu membuat koneksi peering dengan AI Platform Training.
Jika Anda sudah memiliki VPC dengan akses layanan pribadi terkonfigurasi, dan ingin menggunakan VPC tersebut untuk melakukan peering dengan tugas pelatihan, lanjutkan ke mengekspor rute kustom.
- Tetapkan variabel lingkungan untuk project ID, nama region, nama
rentang yang dicadangkan, dan nama jaringan Anda.
- Jika Anda menggunakan VPC Bersama, gunakan project ID dari project host VPC Anda. Jika tidak, gunakan project ID dari project Google Cloud yang Anda gunakan untuk menjalankan tugas pelatihan.
- Pilih region yang memenuhi syarat untuk digunakan dengan Pelatihan AI Platform.
- Aktifkan API yang diperlukan. Jika Anda menggunakan VPC Bersama, pastikan untuk mengaktifkan API di project host VPC dan project Google Cloud yang Anda gunakan untuk menjalankan tugas pelatihan.
- Tetapkan rentang yang dicadangkan menggunakan
gcloud compute addresses create
. Buat koneksi peering antara project host VPC Anda dan Jaringan Layanan Google, menggunakan
gcloud services vpc-peerings connect
.PROJECT_ID=YOUR_PROJECT_ID gcloud config set project $PROJECT_ID REGION=YOUR_REGION # This is for display only; you can name the range anything. PEERING_RANGE_NAME=google-reserved-range NETWORK=YOUR_NETWORK_NAME # NOTE: `prefix-length=16` means a CIDR block with mask /16 will be # reserved for use by Google services, such as AI Platform Training. gcloud compute addresses create $PEERING_RANGE_NAME \ --global \ --prefix-length=16 \ --description="peering range for Google service" \ --network=$NETWORK \ --purpose=VPC_PEERING # Create the VPC connection. gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=$NETWORK \ --ranges=$PEERING_RANGE_NAME \ --project=$PROJECT_ID
Pelajari akses layanan pribadi lebih lanjut.
Mencadangkan rentang IP untuk AI Platform Training
Saat Anda mencadangkan rentang IP untuk produsen layanan, rentang tersebut dapat digunakan oleh Pelatihan AI Platform serta layanan lainnya. Oleh karena itu, jika ingin menghubungkan layanan lain ke rentang yang dicadangkan yang sama, Anda juga harus memastikan bahwa rentang tersebut cukup besar untuk menghindari kehabisan IP.
Anda dapat memperkirakan jumlah alamat yang digunakan setiap tugas pelatihan secara konservatif sebagai berikut:
nextPow2(32 * NUMBER_OF_POOLS * max(POOL_SIZE))
Tabel berikut menunjukkan jumlah maksimum tugas pelatihan paralel yang dapat Anda jalankan dengan rentang yang dicadangkan dari /16
hingga /19
, dengan asumsi rentang tersebut digunakan hampir secara eksklusif oleh AI Platform Training.
Konfigurasi mesin untuk tugas pelatihan | Rentang yang dicadangkan | Jumlah maksimum tugas paralel | |
---|---|---|---|
Hingga 8 node. Misalnya: 6 pekerja, 1 master, dan 1 server parameter. |
/16 | 63 | |
/17 | 31 | ||
/18 | 15 | ||
/19 | 7 | ||
Hingga 16 node. Misalnya: 14 pekerja, 1 master, dan 1 server parameter. |
/16 | 31 | |
/17 | 15 | ||
/18 | 7 | ||
/19 | 3 | ||
Hingga 32 node. Misalnya: 30 pekerja, 1 master, dan 1 server parameter. |
/16 | 15 | |
/17 | 7 | ||
/18 | 3 | ||
/19 | 1 |
Pelajari lebih lanjut cara menentukan jenis mesin untuk tugas pelatihan.
Ekspor rute kustom
Jika menggunakan rute kustom, Anda harus mengekspornya agar AI Platform Training dapat mengimpornya. Jika Anda tidak menggunakan rute kustom, lanjutkan ke bagian mengirim tugas pelatihan.
Untuk mengekspor rute kustom, perbarui koneksi peering di VPC Anda. Mengekspor rute kustom akan mengirimkan semua rute statis dan dinamis yang memenuhi syarat yang berada di jaringan VPC Anda, seperti rute ke jaringan lokal, ke jaringan produsen layanan (AI Platform Training dalam kasus ini). Tindakan ini akan membentuk koneksi yang diperlukan dan memungkinkan tugas pelatihan mengirim traffic kembali ke jaringan lokal Anda.
Pelajari koneksi pribadi dengan jaringan lokal lebih lanjut.
Konsol
- Buka halaman Peering Jaringan VPC di konsol Google Cloud.
Buka halaman Peering Jaringan VPC - Pilih koneksi peering yang akan diperbarui.
- Klik Edit.
- Pilih Export custom routes.
gcloud
Temukan nama koneksi peering yang akan diupdate. Jika Anda memiliki beberapa koneksi peering, hapus flag
--format
.gcloud services vpc-peerings list \ --network=$NETWORK \ --service=servicenetworking.googleapis.com \ --project=$PROJECT_ID \ --format "value(peering)"
Perbarui koneksi peering untuk mengekspor rute kustom.
gcloud compute networks peerings update PEERING-NAME \ --network=$NETWORK \ --export-custom-routes \ --project=$PROJECT_ID
Memeriksa status koneksi peering
Untuk melihat apakah koneksi peering aktif, Anda dapat mencantumkannya menggunakan
gcloud compute networks peerings list --network $NETWORK
Anda akan melihat bahwa status peering yang baru saja dibuat adalah ACTIVE
.
Pelajari lebih lanjut koneksi peering aktif.
Mengirim tugas pelatihan
Saat mengirimkan tugas pelatihan, Anda harus menentukan nama jaringan yang dapat diakses oleh AI Platform Training.
Jika Anda mengirimkan tugas pelatihan tanpa nama jaringan, tugas pelatihan akan berjalan secara default tanpa koneksi peering, dan tanpa akses ke IP pribadi dalam project Anda.
Buat config.yaml untuk menentukan jaringan. Jika Anda menggunakan VPC Bersama, gunakan nomor project host VPC Anda.
Pastikan nama jaringan diformat dengan benar:
PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)") cat << EOF > config.yaml trainingInput: scaleTier: BASIC network: projects/$PROJECT_NUMBER/global/networks/$NETWORK EOF
Membuat aplikasi pelatihan untuk dikirim ke Pelatihan AI Platform.
Tentukan parameter lain untuk tugas pelatihan Anda. Pelajari lebih lanjut parameter yang diperlukan untuk mengirimkan tugas pelatihan.
TRAINER_PACKAGE_PATH="PATH_TO_YOUR_TRAINING_APPLICATION" now=$(date +"%Y%m%d_%H%M%S") JOB_NAME="YOUR_JOB_NAME_$now" MAIN_TRAINER_MODULE="trainer.task" JOB_DIR="gs://PATH_TO_OUTPUT_DIRECTORY" REGION="us-east1" RUNTIME_VERSION="2.11" PYTHON_VERSION="3.7"
Kirim tugas, dengan meneruskan file config.yaml Anda:
gcloud ai-platform jobs submit training $JOB_NAME \ --module-name $MAIN_TRAINER_MODULE \ --job-dir $JOB_DIR \ --region $REGION \ --runtime-version $RUNTIME_VERSION \ --python-version $PYTHON_VERSION \ --package-path $TRAINER_PACKAGE_PATH \ --config config.yaml
Menjalankan tugas di jaringan yang berbeda
Anda tidak dapat mengirimkan tugas pelatihan ke jaringan baru saat masih ada tugas pelatihan aktif di jaringan lain. Sebelum beralih ke jaringan lain, Anda harus menunggu semua tugas pelatihan yang dikirimkan selesai, atau membatalkannya. Misalnya, jika Anda menyiapkan jaringan untuk pengujian, dan mengirimkan tugas pelatihan di jaringan pengujian tersebut, Anda harus menelusuri tugas aktif di jaringan pengujian, dan memastikan tugas tersebut sudah selesai atau dibatalkan sebelum mengirimkan tugas pelatihan di jaringan lain untuk produksi.
Mencantumkan tugas pelatihan yang masih aktif di jaringan:
PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)")
NETWORK_FULL_NAME="projects/$PROJECT_NUMBER/global/networks/$NETWORK"
gcloud ai-platform jobs list \
--filter "(state=queued OR state=running) AND (trainingInput.network=$NETWORK_FULL_NAME)"
Output Anda mungkin terlihat seperti ini:
JOB_ID STATUS CREATED
job_20200502_151443 QUEUED 2020-05-02T15:14:47
Jika ada tugas yang tercantum, Anda dapat menunggu hingga tugas tersebut selesai, atau menggunakan
gcloud ai-platform jobs cancel
untuk membatalkan setiap tugas.
Menguji akses tugas pelatihan
Untuk menguji apakah tugas pelatihan dapat mengakses endpoint di jaringan, Anda perlu menyiapkan endpoint di jaringan, lalu mengirimkan tugas pelatihan yang mengaksesnya. Pelajari lebih lanjut dengan membaca panduan untuk menguji koneksi peering.
Pemecahan masalah
Bagian ini berisi daftar beberapa masalah umum dalam mengonfigurasi Peering Jaringan VPC dengan Pelatihan Platform AI.
Saat mengirimkan tugas pelatihan, gunakan nama jaringan lengkap:
"projects/YOUR_PROJECT_NUMBER/global/networks/YOUR_NETWORK_NAME"
Jangan gunakan TPU dalam tugas pelatihan yang di-peering dengan jaringan Anda. TPU tidak didukung dengan Peering Jaringan VPC di AI Platform Training.
Pastikan tidak ada tugas pelatihan aktif di jaringan sebelum mengirimkan tugas pelatihan di jaringan lain.
Pastikan Anda telah mengalokasikan rentang IP yang cukup untuk semua produsen layanan yang terhubung ke jaringan Anda, termasuk AI Platform Training.
Untuk mengetahui informasi pemecahan masalah tambahan, lihat panduan pemecahan masalah Peering Jaringan VPC.
Langkah berikutnya
- Pelajari lebih lanjut Peering Jaringan VPC.
- Lihat arsitektur referensi dan praktik terbaik untuk desain VPC.
- Menguji koneksi peering