Panduan ini menjelaskan cara menguji apakah tugas pelatihan dapat mengakses IP pribadi di jaringan Anda. Pertama, Anda perlu membuat koneksi pribadi antara jaringan VPC dan AI Platform Training,
Ringkasan
Penyiapan pengujian ini memiliki dua bagian:
- Siapkan endpoint di jaringan Anda.
- Kirim tugas pelatihan pengujian untuk mengakses endpoint tersebut.
Menyiapkan endpoint
Untuk menyiapkan endpoint, siapkan server lokal di instance VM di jaringan Anda.
- Buat instance Compute Engine di jaringan VPC Anda.
- Periksa aturan firewall Anda untuk memastikan aturan tersebut tidak membatasi traffic masuk dari jaringan AI Platform Training. Jika demikian, tambahkan aturan untuk memastikan jaringan AI Platform Training dapat mengakses rentang IP yang Anda cadangkan untuk AI Platform Training (dan produsen layanan lainnya).
Temukan alamat IP pribadi VM Anda:
- Buka halaman Instance VM
- Buka halaman VM instance details untuk instance Anda, lalu temukan IP internal yang tercantum di halaman.
Tetapkan nama instance Anda, lalu jalankan perintah
gcloud
berikut:INSTANCE_NAME="your-instance-name" gcloud compute instances describe $INSTANCE_NAME \ --format="value(networkInterfaces.networkIP)"
Gunakan SSH untuk terhubung ke VM dan instal Node JS.
Salin kode Node JS contoh dan isi alamat IP pribadi Anda:
const http = require('http'); // Fill in the value of your vm's private IP const hostname = 'your_private_ip'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World ' + req.url + '\n'); }); server.listen(port, hostname, () => { console.log('Server running at http://${hostname}:${port}/'); }); ```
Jalankan server Anda:
nodejs hw.js
Keluar dari SSH VM untuk mengirimkan tugas pelatihan Anda.
Mengirim tugas pelatihan pengujian
Alih-alih melatih model, tugas pelatihan ini mengakses endpoint Anda untuk memverifikasi bahwa AI Platform Training dapat mengakses IP pribadi di jaringan Anda.
- Salin contoh aplikasi pelatihan Python untuk dikirim ke Pelatihan AI Platform.
Perbarui kode untuk menyertakan alamat IP pribadi Anda:
import logging import os import sys def main(): # Fill in the value of your vm's private IP hostname = "your_private_ip" response = os.system("curl http://" + hostname + ":3000/you_can_write_your_name_here") if response == 0: print(hostname, "is up!") logging.info("%s is up; Peering successful!", hostname) sys.exit(0) else: logging.error("%s is down; Peering failed!", hostname) sys.exit(1) if __name__ == "__main__": logging.getLogger().setLevel(logging.INFO) main()
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)") NETWORK=your-network-name cat << EOF > config.yaml trainingInput: scaleTier: BASIC network: projects/$PROJECT_NUMBER/global/networks/$NETWORK EOF
Kirim tugas ke Pelatihan AI Platform:
BUCKET_NAME=your_bucket_name JOB_ID='test_vpc_peering_job' gcloud ai-platform jobs submit training $JOB_ID \ --module-name trainingcode.test_peering \ --stream-logs \ --runtime-version 1.15 \ --job-dir gs://$BUCKET_NAME/$JOB_ID \ --region us-central1 \ --package-path trainingcode/ \ --config config.yaml
Tugas Anda akan berhasil dan mencetak "Peering berhasil" — hal ini memvalidasi koneksi peering Anda dengan AI Platform Training.