Inferensi batch adalah permintaan asinkron yang meminta inferensi langsung dari resource model tanpa perlu men-deploy model ke endpoint.
Dalam tutorial ini, Anda menggunakan VPN dengan Ketersediaan Tinggi (HA VPN) untuk mengirim permintaan inferensi batch ke model terlatih secara pribadi, antara dua jaringan Virtual Private Cloud yang dapat berfungsi sebagai dasar untuk konektivitas pribadi multi-cloud dan lokal.
Tutorial ini ditujukan bagi administrator jaringan perusahaan, data scientist, dan peneliti yang sudah memahami Vertex AI, Virtual Private Cloud (VPC), konsol Google Cloud , dan Cloud Shell. Pemahaman tentang Vertex AI Workbench akan membantu, tetapi tidak wajib.

Tujuan
- Buat dua jaringan Virtual Private Cloud (VPC), seperti yang ditunjukkan dalam diagram sebelumnya:
- Satu (
vertex-networking-vpc) adalah untuk mengakses Google API untuk inferensi batch. - Lainnya (
onprem-vpc) mewakili jaringan lokal.
- Satu (
- Deploy gateway VPN dengan ketersediaan tinggi (HA), tunnel Cloud VPN, dan
Cloud Router untuk menghubungkan
vertex-networking-vpcdanonprem-vpc. - Buat model inferensi batch Vertex AI dan upload ke bucket Cloud Storage.
- Buat endpoint Private Service Connect (PSC) untuk meneruskan permintaan pribadi ke Vertex AI batch inference REST API.
- Konfigurasi mode pemberitahuan kustom Cloud Router di
vertex-networking-vpcuntuk mengumumkan rute untuk endpoint Private Service Connect keonprem-vpc. - Buat instance VM Compute Engine di
onprem-vpcuntuk merepresentasikan aplikasi klien (on-prem-client) yang mengirim permintaan inferensi batch secara pribadi melalui VPN dengan ketersediaan tinggi (HA).
Biaya
Di dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.
Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, baca bagian Pembersihan.
Sebelum memulai
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Buka Cloud Shell untuk menjalankan perintah yang tercantum dalam tutorial ini. Cloud Shell adalah lingkungan shell interaktif untuk Google Cloud yang dapat Anda gunakan untuk mengelola project dan resource dari browser web.
- Di Cloud Shell, tetapkan project saat ini ke
Google Cloud project ID Anda dan simpan project ID yang sama
ke dalam variabel shell
projectid: Ganti PROJECT_ID dengan project ID Anda. Jika perlu, Anda dapat menemukan project ID di konsol Google Cloud . Untuk mengetahui informasi selengkapnya, lihat Menemukan project ID.projectid="PROJECT_ID" gcloud config set project ${projectid} - Jika Anda bukan pemilik project, minta pemilik project untuk memberi Anda peran Admin IAM Project (roles/resourcemanager.projectIamAdmin). Anda harus memiliki peran ini untuk memberikan peran IAM pada langkah berikutnya.
-
Make sure that you have the following role or roles on the project: roles/compute.instanceAdmin.v1, roles/compute.networkAdmin, roles/compute.securityAdmin, roles/dns.admin, roles/iap.tunnelResourceAccessor, roles/notebooks.admin, roles/iam.serviceAccountAdmin, roles/iam.serviceAccountUser, roles/servicedirectory.editor, roles/serviceusage.serviceUsageAdmin, roles/storage.admin, roles/aiplatform.admin, roles/aiplatform.user, roles/resourcemanager.projectIamAdmin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
Buka IAM - Pilih project.
- Klik Grant access.
-
Di kolom New principals, masukkan ID pengguna Anda. ID pengguna biasanya adalah alamat email untuk Akun Google.
- Di daftar Select a role, pilih peran.
- Untuk memberikan peran tambahan, klik Add another role, lalu tambahkan setiap peran tambahan.
- Klik Simpan.
Enable the DNS, Artifact Registry, IAM, Compute Engine, Notebooks, and Vertex AI APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Membuat jaringan VPC
Di bagian ini, Anda akan membuat dua jaringan VPC: satu untuk mengakses Google API untuk inferensi batch, dan yang lainnya untuk menyimulasikan jaringan lokal. Di setiap dari dua jaringan VPC, Anda akan membuat gateway Cloud Router dan Cloud NAT. Gateway Cloud NAT menyediakan konektivitas keluar untuk instance virtual machine (VM) Compute Engine tanpa alamat IP eksternal.
Buat jaringan VPC
vertex-networking-vpc:gcloud compute networks create vertex-networking-vpc \ --subnet-mode customDi jaringan
vertex-networking-vpc, buat subnet bernamaworkbench-subnet, dengan rentang IPv4 utama10.0.1.0/28:gcloud compute networks subnets create workbench-subnet \ --range=10.0.1.0/28 \ --network=vertex-networking-vpc \ --region=us-central1 \ --enable-private-ip-google-accessBuat jaringan VPC untuk menyimulasikan jaringan lokal (
onprem-vpc):gcloud compute networks create onprem-vpc \ --subnet-mode customDi jaringan
onprem-vpc, buat subnet bernamaonprem-vpc-subnet1, dengan rentang IPv4 utama172.16.10.0/29:gcloud compute networks subnets create onprem-vpc-subnet1 \ --network onprem-vpc \ --range 172.16.10.0/29 \ --region us-central1
Pastikan jaringan VPC dikonfigurasi dengan benar
Di konsol Google Cloud , buka tab Networks in current project di halaman VPC networks.
Dalam daftar jaringan VPC, pastikan kedua jaringan telah dibuat:
vertex-networking-vpcdanonprem-vpc.Klik tab Subnets in current project.
Dalam daftar subnet VPC, pastikan subnet
workbench-subnetdanonprem-vpc-subnet1telah dibuat.
Mengonfigurasi konektivitas hybrid
Di bagian ini, Anda akan membuat dua gateway VPN dengan ketersediaan tinggi (HA) yang terhubung satu sama lain. Salah satunya berada di jaringan VPC
vertex-networking-vpc. Yang lainnya berada di jaringan VPC
onprem-vpc. Setiap gateway berisi
Cloud Router dan sepasang tunnel VPN.
Membuat gateway VPN dengan ketersediaan tinggi (HA)
Di Cloud Shell, buat gateway VPN dengan ketersediaan tinggi (HA) untuk jaringan VPC
vertex-networking-vpc:gcloud compute vpn-gateways create vertex-networking-vpn-gw1 \ --network vertex-networking-vpc \ --region us-central1Buat gateway VPN dengan ketersediaan tinggi (HA) untuk jaringan VPC
onprem-vpc:gcloud compute vpn-gateways create onprem-vpn-gw1 \ --network onprem-vpc \ --region us-central1Di konsol Google Cloud , buka tab Cloud VPN Gateways di halaman VPN.
Pastikan kedua gateway (
vertex-networking-vpn-gw1danonprem-vpn-gw1) telah dibuat dan setiap gateway memiliki dua alamat IP antarmuka.
Membuat Cloud Router dan gateway Cloud NAT
Di setiap dari dua jaringan VPC, Anda membuat dua Cloud Router: satu umum dan satu regional. Di setiap Cloud Router regional, Anda membuat gateway Cloud NAT. Gateway Cloud NAT menyediakan konektivitas keluar untuk instance virtual machine (VM) Compute Engine yang tidak memiliki alamat IP eksternal.
Di Cloud Shell, buat Cloud Router untuk jaringan VPC
vertex-networking-vpc:gcloud compute routers create vertex-networking-vpc-router1 \ --region us-central1\ --network vertex-networking-vpc \ --asn 65001Buat Cloud Router untuk jaringan VPC
onprem-vpc:gcloud compute routers create onprem-vpc-router1 \ --region us-central1\ --network onprem-vpc\ --asn 65002Buat Cloud Router regional untuk jaringan VPC
vertex-networking-vpc:gcloud compute routers create cloud-router-us-central1-vertex-nat \ --network vertex-networking-vpc \ --region us-central1Konfigurasi gateway Cloud NAT di Cloud Router regional:
gcloud compute routers nats create cloud-nat-us-central1 \ --router=cloud-router-us-central1-vertex-nat \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges \ --region us-central1Buat Cloud Router regional untuk jaringan VPC
onprem-vpc:gcloud compute routers create cloud-router-us-central1-onprem-nat \ --network onprem-vpc \ --region us-central1Konfigurasi gateway Cloud NAT di Cloud Router regional:
gcloud compute routers nats create cloud-nat-us-central1-on-prem \ --router=cloud-router-us-central1-onprem-nat \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges \ --region us-central1Di konsol Google Cloud , buka halaman Cloud Routers.
Di daftar Cloud Router, verifikasi bahwa router berikut telah dibuat:
cloud-router-us-central1-onprem-natcloud-router-us-central1-vertex-natonprem-vpc-router1vertex-networking-vpc-router1
Anda mungkin perlu memuat ulang tab browser konsol untuk melihat nilai baru. Google Cloud
Di daftar Cloud Router, klik
cloud-router-us-central1-vertex-nat.Di halaman Router details, pastikan bahwa gateway Cloud NAT telah dibuat.
cloud-nat-us-central1Klik panah kembali untuk kembali ke halaman Cloud Routers.
Dalam daftar router, klik
cloud-router-us-central1-onprem-nat.Di halaman Router details, pastikan gateway
cloud-nat-us-central1-on-premCloud NAT telah dibuat.
Buat tunnel VPN
Di Cloud Shell, di jaringan
vertex-networking-vpc, buat tunnel VPN bernamavertex-networking-vpc-tunnel0:gcloud compute vpn-tunnels create vertex-networking-vpc-tunnel0 \ --peer-gcp-gateway onprem-vpn-gw1 \ --region us-central1 \ --ike-version 2 \ --shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \ --router vertex-networking-vpc-router1 \ --vpn-gateway vertex-networking-vpn-gw1 \ --interface 0Di jaringan
vertex-networking-vpc, buat tunnel VPN yang disebutvertex-networking-vpc-tunnel1:gcloud compute vpn-tunnels create vertex-networking-vpc-tunnel1 \ --peer-gcp-gateway onprem-vpn-gw1 \ --region us-central1 \ --ike-version 2 \ --shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \ --router vertex-networking-vpc-router1 \ --vpn-gateway vertex-networking-vpn-gw1 \ --interface 1Di jaringan
onprem-vpc, buat tunnel VPN yang disebutonprem-vpc-tunnel0:gcloud compute vpn-tunnels create onprem-vpc-tunnel0 \ --peer-gcp-gateway vertex-networking-vpn-gw1 \ --region us-central1\ --ike-version 2 \ --shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \ --router onprem-vpc-router1 \ --vpn-gateway onprem-vpn-gw1 \ --interface 0Di jaringan
onprem-vpc, buat tunnel VPN yang disebutonprem-vpc-tunnel1:gcloud compute vpn-tunnels create onprem-vpc-tunnel1 \ --peer-gcp-gateway vertex-networking-vpn-gw1 \ --region us-central1\ --ike-version 2 \ --shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \ --router onprem-vpc-router1 \ --vpn-gateway onprem-vpn-gw1 \ --interface 1Di konsol Google Cloud , buka halaman VPN.
Dalam daftar tunnel VPN, verifikasi bahwa empat tunnel VPN telah dibuat.
Membuat sesi BGP
Cloud Router menggunakan Border Gateway Protocol (BGP) untuk bertukar rute antara
jaringan VPC Anda (dalam hal ini, vertex-networking-vpc)
dan jaringan lokal Anda (diwakili oleh onprem-vpc). Di Cloud Router,
Anda mengonfigurasi antarmuka dan peer BGP untuk router lokal Anda.
Konfigurasi antarmuka dan peer BGP bersama-sama membentuk sesi BGP.
Di bagian ini, Anda akan membuat dua sesi BGP untuk vertex-networking-vpc dan
dua sesi untuk onprem-vpc.
Setelah Anda mengonfigurasi antarmuka dan peer BGP antara router, router akan otomatis mulai menukar rute.
Membuat sesi BGP untuk vertex-networking-vpc
Di Cloud Shell, di jaringan
vertex-networking-vpc, buat antarmuka BGP untukvertex-networking-vpc-tunnel0:gcloud compute routers add-interface vertex-networking-vpc-router1 \ --interface-name if-tunnel0-to-onprem \ --ip-address 169.254.0.1 \ --mask-length 30 \ --vpn-tunnel vertex-networking-vpc-tunnel0 \ --region us-central1Di jaringan
vertex-networking-vpc, buat peer BGP untukbgp-onprem-tunnel0:gcloud compute routers add-bgp-peer vertex-networking-vpc-router1 \ --peer-name bgp-onprem-tunnel0 \ --interface if-tunnel0-to-onprem \ --peer-ip-address 169.254.0.2 \ --peer-asn 65002 \ --region us-central1Di jaringan
vertex-networking-vpc, buat antarmuka BGP untukvertex-networking-vpc-tunnel1:gcloud compute routers add-interface vertex-networking-vpc-router1 \ --interface-name if-tunnel1-to-onprem \ --ip-address 169.254.1.1 \ --mask-length 30 \ --vpn-tunnel vertex-networking-vpc-tunnel1 \ --region us-central1Di jaringan
vertex-networking-vpc, buat peer BGP untukbgp-onprem-tunnel1:gcloud compute routers add-bgp-peer vertex-networking-vpc-router1 \ --peer-name bgp-onprem-tunnel1 \ --interface if-tunnel1-to-onprem \ --peer-ip-address 169.254.1.2 \ --peer-asn 65002 \ --region us-central1
Membuat sesi BGP untuk onprem-vpc
Di jaringan
onprem-vpc, buat antarmuka BGP untukonprem-vpc-tunnel0:gcloud compute routers add-interface onprem-vpc-router1 \ --interface-name if-tunnel0-to-vertex-networking-vpc \ --ip-address 169.254.0.2 \ --mask-length 30 \ --vpn-tunnel onprem-vpc-tunnel0 \ --region us-central1Di jaringan
onprem-vpc, buat peer BGP untukbgp-vertex-networking-vpc-tunnel0:gcloud compute routers add-bgp-peer onprem-vpc-router1 \ --peer-name bgp-vertex-networking-vpc-tunnel0 \ --interface if-tunnel0-to-vertex-networking-vpc \ --peer-ip-address 169.254.0.1 \ --peer-asn 65001 \ --region us-central1Di jaringan
onprem-vpc, buat antarmuka BGP untukonprem-vpc-tunnel1:gcloud compute routers add-interface onprem-vpc-router1 \ --interface-name if-tunnel1-to-vertex-networking-vpc \ --ip-address 169.254.1.2 \ --mask-length 30 \ --vpn-tunnel onprem-vpc-tunnel1 \ --region us-central1Di jaringan
onprem-vpc, buat peer BGP untukbgp-vertex-networking-vpc-tunnel1:gcloud compute routers add-bgp-peer onprem-vpc-router1 \ --peer-name bgp-vertex-networking-vpc-tunnel1 \ --interface if-tunnel1-to-vertex-networking-vpc \ --peer-ip-address 169.254.1.1 \ --peer-asn 65001 \ --region us-central1
Memvalidasi pembuatan sesi BGP
Di konsol Google Cloud , buka halaman VPN.
Dalam daftar tunnel VPN, pastikan nilai di kolom Status sesi BGP untuk setiap tunnel telah berubah dari Konfigurasi sesi BGP menjadi BGP dibuat. Anda mungkin perlu memuat ulang tab browser konsol untuk melihat nilai baru. Google Cloud
Memvalidasi rute yang dipelajari vertex-networking-vpc
Di konsol Google Cloud , buka halaman VPC networks.
Dalam daftar jaringan VPC, klik
vertex-networking-vpc.Klik tab Routes.
Pilih us-central1 (Iowa) dalam daftar Region, lalu klik Lihat.
Di kolom Rentang IP tujuan, pastikan rentang IP subnet
onprem-vpc-subnet1(172.16.10.0/29) muncul dua kali.
Memvalidasi rute yang dipelajari onprem-vpc
Klik panah kembali untuk kembali ke halaman VPC networks.
Dalam daftar jaringan VPC, klik
onprem-vpc.Klik tab Routes.
Pilih us-central1 (Iowa) dalam daftar Region, lalu klik Lihat.
Di kolom Destination IP range, pastikan rentang IP subnet
workbench-subnet(10.0.1.0/28) muncul dua kali.
Buat endpoint konsumen Private Service Connect
Di Cloud Shell, cadangkan alamat IP endpoint konsumen yang akan digunakan untuk mengakses Google API:
gcloud compute addresses create psc-googleapi-ip \ --global \ --purpose=PRIVATE_SERVICE_CONNECT \ --addresses=192.168.0.1 \ --network=vertex-networking-vpcBuat aturan penerusan untuk menghubungkan endpoint ke Google API dan layanan Google.
gcloud compute forwarding-rules create pscvertex \ --global \ --network=vertex-networking-vpc\ --address=psc-googleapi-ip \ --target-google-apis-bundle=all-apis
Buat rute kustom yang diberitahukan untuk vertex-networking-vpc
Di bagian ini, Anda akan mengonfigurasi mode iklan kustom Cloud Router untuk
Mengiklankan rentang IP kustom untuk
vertex-networking-vpc-router1 (Cloud Router untuk
vertex-networking-vpc) guna mengiklankan alamat IP endpoint PSC ke jaringan
onprem-vpc.
Di konsol Google Cloud , buka halaman Cloud Routers.
Dalam daftar Cloud Router, klik
vertex-networking-vpc-router1.Di halaman detail Router, klik Edit.
Di bagian Advertised routes untuk Routes, pilih Create custom routes.
Centang kotak Beriklan semua subnet yang terlihat oleh Cloud Router untuk terus mengiklankan subnet yang tersedia untuk Cloud Router. Mengaktifkan opsi ini meniru perilaku Cloud Router dalam mode iklan default.
Klik Tambahkan rute kustom.
Untuk Sumber, pilih Rentang IP kustom.
Untuk Rentang alamat IP, masukkan alamat IP berikut:
192.168.0.1Untuk Deskripsi, masukkan teks berikut:
Custom route to advertise Private Service Connect endpoint IP addressKlik Selesai, lalu klik Simpan.
Validasi bahwa onprem-vpc telah mempelajari rute yang diiklankan
Di konsol Google Cloud , buka halaman Routes.
Pada tab Effective routes, lakukan hal berikut:
- Untuk Network, pilih
onprem-vpc. - Untuk Region, pilih
us-central1 (Iowa). - Klik View.
Dalam daftar rute, pastikan ada entri yang namanya diawali dengan
onprem-vpc-router1-bgp-vertex-networking-vpc-tunnel0danonprem-vpc-router1-bgp-vfertex-networking-vpc-tunnel1, dan keduanya memiliki Rentang IP tujuan192.168.0.1.Jika entri ini tidak langsung muncul, tunggu beberapa menit, lalu muat ulang tab browser konsol Google Cloud .
- Untuk Network, pilih
Membuat VM di onprem-vpc yang menggunakan akun layanan yang dikelola pengguna
Di bagian ini, Anda akan membuat instance VM yang menyimulasikan aplikasi klien lokal yang mengirim permintaan inferensi batch. Dengan mengikuti praktik terbaik Compute Engine dan IAM, VM ini menggunakan akun layanan yang dikelola pengguna, bukan akun layanan default Compute Engine.
Buat akun layanan yang dikelola pengguna
Di Cloud Shell, jalankan perintah berikut, ganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}Buat akun layanan bernama
onprem-user-managed-sa:gcloud iam service-accounts create onprem-user-managed-sa \ --display-name="onprem-user-managed-sa-onprem-client"Tetapkan peran Vertex AI User (
roles/aiplatform.user) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:onprem-user-managed-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/aiplatform.user"Tetapkan peran Storage Object Viewer (
storage.objectViewer) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:onprem-user-managed-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/storage.objectViewer"
Buat instance VM on-prem-client
Instance VM yang Anda buat tidak memiliki alamat IP eksternal dan tidak mengizinkan akses langsung melalui internet. Untuk mengaktifkan akses administratif ke VM, Anda menggunakan penerusan TCP Identity-Aware Proxy (IAP).
Di Cloud Shell, buat instance VM
on-prem-client:gcloud compute instances create on-prem-client \ --zone=us-central1-a \ --image-family=debian-11 \ --image-project=debian-cloud \ --subnet=onprem-vpc-subnet1 \ --scopes=https://www.googleapis.com/auth/cloud-platform \ --no-address \ --shielded-secure-boot \ --service-account=onprem-user-managed-sa@$projectid.iam.gserviceaccount.com \ --metadata startup-script="#! /bin/bash sudo apt-get update sudo apt-get install tcpdump dnsutils -y"Buat aturan firewall untuk mengizinkan IAP terhubung ke instance VM Anda:
gcloud compute firewall-rules create ssh-iap-on-prem-vpc \ --network onprem-vpc \ --allow tcp:22 \ --source-ranges=35.235.240.0/20
Memvalidasi akses publik ke Vertex AI API
Di bagian ini, Anda menggunakan utilitas dig untuk melakukan pencarian DNS dari instance VM on-prem-client ke Vertex AI API
(us-central1-aiplatform.googleapis.com). Output dig menunjukkan bahwa akses default hanya menggunakan VIP publik untuk mengakses Vertex AI API.
Di bagian berikutnya, Anda akan mengonfigurasi akses pribadi ke Vertex AI API.
Di Cloud Shell, login ke instance VM
on-prem-clientmenggunakan IAP:gcloud compute ssh on-prem-client \ --zone=us-central1-a \ --tunnel-through-iapDi instance VM
on-prem-client, jalankan perintahdig:dig us-central1-aiplatform.googleapis.comAnda akan melihat output
digyang mirip dengan berikut ini, dengan alamat IP di bagian jawaban adalah alamat IP publik:; <<>> DiG 9.16.44-Debian <<>> us-central1.aiplatfom.googleapis.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42506 ;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;us-central1.aiplatfom.googleapis.com. IN A ;; ANSWER SECTION: us-central1.aiplatfom.googleapis.com. 300 IN A 173.194.192.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.250.152.95 us-central1.aiplatfom.googleapis.com. 300 IN A 172.217.219.95 us-central1.aiplatfom.googleapis.com. 300 IN A 209.85.146.95 us-central1.aiplatfom.googleapis.com. 300 IN A 209.85.147.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.250.125.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.250.136.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.250.148.95 us-central1.aiplatfom.googleapis.com. 300 IN A 209.85.200.95 us-central1.aiplatfom.googleapis.com. 300 IN A 209.85.234.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.251.171.95 us-central1.aiplatfom.googleapis.com. 300 IN A 108.177.112.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.250.128.95 us-central1.aiplatfom.googleapis.com. 300 IN A 142.251.6.95 us-central1.aiplatfom.googleapis.com. 300 IN A 172.217.212.95 us-central1.aiplatfom.googleapis.com. 300 IN A 74.125.124.95 ;; Query time: 8 msec ;; SERVER: 169.254.169.254#53(169.254.169.254) ;; WHEN: Wed Sep 27 04:10:16 UTC 2023 ;; MSG SIZE rcvd: 321
Mengonfigurasi dan memvalidasi akses pribadi ke Vertex AI API
Di bagian ini, Anda akan mengonfigurasi akses pribadi ke Vertex AI API sehingga saat Anda mengirim permintaan inferensi batch, permintaan tersebut akan dialihkan ke endpoint PSC Anda. Endpoint PSC pada gilirannya meneruskan permintaan pribadi ini ke Vertex AI Batch Inference REST API.
Perbarui file /etc/hosts agar mengarah ke endpoint PSC
Pada langkah ini, Anda akan menambahkan baris ke file /etc/hosts yang menyebabkan permintaan
yang dikirim ke endpoint layanan publik (us-central1-aiplatform.googleapis.com)
dialihkan ke endpoint PSC (192.168.0.1).
Di instance VM
on-prem-client, gunakan editor teks sepertivimataunanountuk membuka file/etc/hosts:sudo vim /etc/hostsTambahkan baris berikut ke file:
192.168.0.1 us-central1-aiplatform.googleapis.comBaris ini menetapkan alamat IP endpoint PSC (
192.168.0.1) ke nama domain yang sepenuhnya memenuhi syarat untuk Vertex AI Google API (us-central1-aiplatform.googleapis.com).File yang diedit akan terlihat seperti ini:
127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters 192.168.0.1 us-central1-aiplatform.googleapis.com # Added by you 172.16.10.6 on-prem-client.us-central1-a.c.vertex-genai-400103.internal on-prem-client # Added by Google 169.254.169.254 metadata.google.internal # Added by GoogleSimpan file sebagai berikut:
- Jika Anda menggunakan
vim, tekan tombolEsc, lalu ketik:wquntuk menyimpan file dan keluar. - Jika Anda menggunakan
nano, ketikControl+Odan tekanEnteruntuk menyimpan file, lalu ketikControl+Xuntuk keluar.
- Jika Anda menggunakan
Ping endpoint Vertex AI sebagai berikut:
ping us-central1-aiplatform.googleapis.comPerintah
pingakan menampilkan output berikut.192.168.0.1adalah alamat IP endpoint PSC:PING us-central1-aiplatform.googleapis.com (192.168.0.1) 56(84) bytes of data.Ketik
Control+Cuntuk keluar dariping.Ketik
exituntuk keluar dari instance VMon-prem-client.
Membuat akun layanan yang dikelola pengguna untuk Vertex AI Workbench di vertex-networking-vpc
Di bagian ini, untuk mengontrol akses ke instance Vertex AI Workbench, Anda membuat akun layanan yang dikelola pengguna, lalu menetapkan peran IAM ke akun layanan tersebut. Saat membuat instance, Anda menentukan akun layanan.
Di Cloud Shell, jalankan perintah berikut, ganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}Buat akun layanan bernama
workbench-sa:gcloud iam service-accounts create workbench-sa \ --display-name="workbench-sa"Tetapkan peran IAM Vertex AI User (
roles/aiplatform.user) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:workbench-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/aiplatform.user"Tetapkan peran IAM Pengguna BigQuery (
roles/bigquery.user) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:workbench-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/bigquery.user"Tetapkan peran IAM Storage Admin (
roles/storage.admin) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:workbench-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/storage.admin"Tetapkan peran IAM Logs Viewer (
roles/logging.viewer) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:workbench-sa@$projectid.iam.gserviceaccount.com" \ --role="roles/logging.viewer"
Buat instance Vertex AI Workbench
Di Cloud Shell, buat instance Vertex AI Workbench, dengan menentukan akun layanan
workbench-sa:gcloud workbench instances create workbench-tutorial \ --vm-image-project=deeplearning-platform-release \ --vm-image-family=common-cpu-notebooks \ --machine-type=n1-standard-4 \ --location=us-central1-a \ --subnet-region=us-central1 \ --shielded-secure-boot=True \ --subnet=workbench-subnet \ --disable-public-ip \ --service-account-email=workbench-sa@$projectid.iam.gserviceaccount.comDi konsol Google Cloud , buka tab Instances di halaman Vertex AI Workbench.
Di samping nama instance Vertex AI Workbench Anda (
workbench-tutorial), klik Open JupyterLab.Instance Vertex AI Workbench akan membuka JupyterLab.
Pilih File > New > Notebook.
Dari menu Select Kernel, pilih Python 3 (Local), lalu klik Select.
Saat notebook baru Anda terbuka, ada sel kode default tempat Anda dapat memasukkan kode. Tampilannya seperti
[ ]:diikuti dengan kolom teks. Kolom teks adalah tempat Anda menempelkan kode.Untuk menginstal Vertex AI SDK untuk Python, tempel kode berikut ke dalam sel dan klik Jalankan sel yang dipilih dan lanjutkan:
!pip3 install --upgrade google-cloud-bigquery scikit-learn==1.2Pada langkah ini dan setiap langkah berikutnya, tambahkan sel kode baru (jika perlu) dengan mengklik Insert a cell below, tempelkan kode ke dalam sel, lalu klik Run the selected cells and advance.
Untuk menggunakan paket yang baru diinstal di runtime Jupyter ini, Anda perlu memulai ulang runtime:
# Restart kernel after installs so that your environment can access the new packages import IPython app = IPython.Application.instance() app.kernel.do_shutdown(True)Tetapkan variabel lingkungan berikut di notebook JupyterLab Anda, dengan mengganti PROJECT_ID dengan project ID Anda.
# set project ID and location PROJECT_ID = "PROJECT_ID" REGION = "us-central1"Buat bucket Cloud Storage untuk melakukan staging tugas pelatihan:
BUCKET_NAME = f"{PROJECT_ID}-ml-staging" BUCKET_URI = f"gs://{BUCKET_NAME}" !gcloud storage buckets create {BUCKET_URI} --location={REGION} --project={PROJECT_ID}
Menyiapkan data pelatihan
Di bagian ini, Anda akan menyiapkan data yang akan digunakan untuk melatih model inferensi.
Di notebook JupyterLab, buat klien BigQuery:
from google.cloud import bigquery bq_client = bigquery.Client(project=PROJECT_ID)Ambil data dari set data publik BigQuery
ml_datasets:DATA_SOURCE = "bigquery-public-data.ml_datasets.census_adult_income" # Define the SQL query to fetch the dataset query = f""" SELECT * FROM `{DATA_SOURCE}` LIMIT 20000 """ # Download the dataset to a dataframe df = bq_client.query(query).to_dataframe() df.head()Gunakan library
sklearnuntuk memisahkan data untuk pelatihan dan pengujian:from sklearn.model_selection import train_test_split # Split the dataset X_train, X_test = train_test_split(df, test_size=0.3, random_state=43) # Print the shapes of train and test sets print(X_train.shape, X_test.shape)Ekspor dataframe pelatihan dan pengujian ke file CSV di bucket penyiapan:
X_train.to_csv(f"{BUCKET_URI}/train.csv",index=False, quoting=1, quotechar='"') X_test[[i for i in X_test.columns if i != "income_bracket"]].iloc[:20].to_csv(f"{BUCKET_URI}/test.csv",index=False,quoting=1, quotechar='"')
Menyiapkan aplikasi pelatihan
Di bagian ini, Anda akan membuat dan mem-build aplikasi pelatihan Python serta menyimpannya ke bucket penyiapan.
Di notebook JupyterLab, buat folder baru untuk file aplikasi pelatihan:
!mkdir -p training_package/trainerSekarang Anda akan melihat folder bernama
training_packagedi menu navigasi JupyterLab.Tentukan fitur, target, label, dan langkah-langkah untuk melatih dan mengekspor model ke file:
%%writefile training_package/trainer/task.py from sklearn.ensemble import RandomForestClassifier from sklearn.feature_selection import SelectKBest from sklearn.pipeline import FeatureUnion, Pipeline from sklearn.preprocessing import LabelBinarizer import pandas as pd import argparse import joblib import os TARGET = "income_bracket" # Define the feature columns that you use from the dataset COLUMNS = ( "age", "workclass", "functional_weight", "education", "education_num", "marital_status", "occupation", "relationship", "race", "sex", "capital_gain", "capital_loss", "hours_per_week", "native_country", ) # Categorical columns are columns that have string values and # need to be turned into a numerical value to be used for training CATEGORICAL_COLUMNS = ( "workclass", "education", "marital_status", "occupation", "relationship", "race", "sex", "native_country", ) # load the arguments parser = argparse.ArgumentParser() parser.add_argument('--training-dir', dest='training_dir', default=os.getenv('AIP_MODEL_DIR'), type=str,help='get the staging directory') args = parser.parse_args() # Load the training data X_train = pd.read_csv(os.path.join(args.training_dir,"train.csv")) # Remove the column we are trying to predict ('income-level') from our features list # Convert the Dataframe to a lists of lists train_features = X_train.drop(TARGET, axis=1).to_numpy().tolist() # Create our training labels list, convert the Dataframe to a lists of lists train_labels = X_train[TARGET].to_numpy().tolist() # Since the census data set has categorical features, we need to convert # them to numerical values. We'll use a list of pipelines to convert each # categorical column and then use FeatureUnion to combine them before calling # the RandomForestClassifier. categorical_pipelines = [] # Each categorical column needs to be extracted individually and converted to a numerical value. # To do this, each categorical column will use a pipeline that extracts one feature column via # SelectKBest(k=1) and a LabelBinarizer() to convert the categorical value to a numerical one. # A scores array (created below) will select and extract the feature column. The scores array is # created by iterating over the COLUMNS and checking if it is a CATEGORICAL_COLUMN. for i, col in enumerate(COLUMNS): if col in CATEGORICAL_COLUMNS: # Create a scores array to get the individual categorical column. # Example: # data = [39, 'State-gov', 77516, 'Bachelors', 13, 'Never-married', 'Adm-clerical', # 'Not-in-family', 'White', 'Male', 2174, 0, 40, 'United-States'] # scores = [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # # Returns: [['Sate-gov']] scores = [] # Build the scores array for j in range(len(COLUMNS)): if i == j: # This column is the categorical column we want to extract. scores.append(1) # Set to 1 to select this column else: # Every other column should be ignored. scores.append(0) skb = SelectKBest(k=1) skb.scores_ = scores # Convert the categorical column to a numerical value lbn = LabelBinarizer() r = skb.transform(train_features) lbn.fit(r) # Create the pipeline to extract the categorical feature categorical_pipelines.append( ( "categorical-{}".format(i), Pipeline([("SKB-{}".format(i), skb), ("LBN-{}".format(i), lbn)]), ) ) # Create pipeline to extract the numerical features skb = SelectKBest(k=6) # From COLUMNS use the features that are numerical skb.scores_ = [1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0] categorical_pipelines.append(("numerical", skb)) # Combine all the features using FeatureUnion preprocess = FeatureUnion(categorical_pipelines) # Create the classifier classifier = RandomForestClassifier() # Transform the features and fit them to the classifier classifier.fit(preprocess.transform(train_features), train_labels) # Create the overall model as a single pipeline pipeline = Pipeline([("union", preprocess), ("classifier", classifier)]) # Save the model pipeline joblib.dump(pipeline, os.path.join(args.training_dir,"model.joblib"))Buat file
__init__.pydi setiap subdirektori untuk menjadikannya sebuah paket:!touch training_package/__init__.py !touch training_package/trainer/__init__.pyBuat skrip penyiapan paket Python:
%%writefile training_package/setup.py from setuptools import find_packages from setuptools import setup setup( name='trainer', version='0.1', packages=find_packages(), include_package_data=True, description='Training application package for census income classification.' )Gunakan perintah
sdistuntuk membuat distribusi sumber aplikasi pelatihan:!cd training_package && python setup.py sdist --formats=gztarSalin paket Python ke bucket penyiapan:
!gcloud storage cp training_package/dist/trainer-0.1.tar.gz $BUCKET_URI/Pastikan bucket penyiapan berisi tiga file:
!gcloud storage ls $BUCKET_URIOutput-nya harus:
gs://$BUCKET_NAME/test.csv gs://$BUCKET_NAME/train.csv gs://$BUCKET_NAME/trainer-0.1.tar.gz
Melatih model
Di bagian ini, Anda akan melatih model dengan membuat dan menjalankan tugas pelatihan kustom.
Di notebook JupyterLab, jalankan perintah berikut untuk membuat tugas pelatihan kustom:
!gcloud ai custom-jobs create --display-name=income-classification-training-job \ --project=$PROJECT_ID \ --worker-pool-spec=replica-count=1,machine-type='e2-highmem-2',executor-image-uri='us-docker.pkg.dev/vertex-ai/training/sklearn-cpu.1-0:latest',python-module=trainer.task \ --python-package-uris=$BUCKET_URI/trainer-0.1.tar.gz \ --args="--training-dir","/gcs/$BUCKET_NAME" \ --region=$REGIONOutput-nya akan terlihat seperti berikut. Angka pertama di setiap jalur tugas kustom adalah nomor project (PROJECT_NUMBER). Angka kedua adalah ID tugas kustom (CUSTOM_JOB_ID). Catat angka-angka ini agar Anda dapat menggunakannya pada langkah berikutnya.
Using endpoint [https://us-central1-aiplatform.googleapis.com/] CustomJob [projects/721032480027/locations/us-central1/customJobs/1100328496195960832] is submitted successfully. Your job is still active. You may view the status of your job with the command $ gcloud ai custom-jobs describe projects/721032480027/locations/us-central1/customJobs/1100328496195960832 or continue streaming the logs with the command $ gcloud ai custom-jobs stream-logs projects/721032480027/locations/us-central1/customJobs/1100328496195960832Jalankan tugas pelatihan kustom dan tunjukkan progres dengan melakukan streaming log dari tugas saat dijalankan:
!gcloud ai custom-jobs stream-logs projects/PROJECT_NUMBER/locations/us-central1/customJobs/CUSTOM_JOB_IDGanti nilai berikut:
- PROJECT_NUMBER: nomor project dari output perintah sebelumnya
- CUSTOM_JOB_ID: ID tugas kustom dari output perintah sebelumnya
Tugas pelatihan kustom Anda kini sedang berjalan. Proses ini memerlukan waktu sekitar 10 menit untuk diselesaikan.
Setelah tugas selesai, Anda dapat mengimpor model dari bucket penyiapan ke Vertex AI Model Registry.
Mengimpor model
Tugas pelatihan kustom Anda mengupload model terlatih ke bucket staging. Setelah tugas selesai, Anda dapat mengimpor model dari bucket ke Vertex AI Model Registry.
Di notebook JupyterLab, impor model dengan menjalankan perintah berikut:
!gcloud ai models upload --container-image-uri="us-docker.pkg.dev/vertex-ai/prediction/sklearn-cpu.1-2:latest" \ --display-name=income-classifier-model \ --artifact-uri=$BUCKET_URI \ --project=$PROJECT_ID \ --region=$REGIONBuat daftar model Vertex AI dalam project sebagai berikut:
!gcloud ai models list --region=us-central1Output-nya akan terlihat seperti berikut. Jika dua atau beberapa model tercantum, model pertama dalam daftar adalah model yang terakhir Anda impor.
Catat nilai di kolom MODEL_ID. Anda memerlukannya untuk membuat permintaan inferensi batch.
Using endpoint [https://us-central1-aiplatform.googleapis.com/] MODEL_ID DISPLAY_NAME 1871528219660779520 income-classifier-modelAtau, Anda dapat membuat daftar model di project Anda sebagai berikut:
Di konsol Google Cloud , di bagian Vertex AI, buka halaman Vertex AI Model Registry.
Buka halaman Vertex AI Model Registry
Untuk melihat ID model dan detail lainnya untuk model, klik nama model, lalu klik tab Detail Versi.
Mendapatkan inferensi batch dari model
Sekarang Anda dapat meminta inferensi batch dari model. Permintaan inferensi batch dibuat dari instance VM on-prem-client.
Buat permintaan inferensi batch
Pada langkah ini, Anda menggunakan ssh untuk login ke instance VM on-prem-client.
Di instance VM, Anda membuat file teks bernama request.json yang berisi
payload untuk contoh permintaan curl yang Anda kirim ke model untuk mendapatkan
inferensi batch.
Di Cloud Shell, jalankan perintah berikut, ganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}Login ke instance VM
on-prem-clientmenggunakanssh:gcloud compute ssh on-prem-client \ --project=$projectid \ --zone=us-central1-aDi instance VM
on-prem-client, gunakan editor teks sepertivimataunanountuk membuat file baru bernamarequest.jsonyang berisi teks berikut:{ "displayName": "income-classification-batch-job", "model": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID", "inputConfig": { "instancesFormat": "csv", "gcsSource": { "uris": ["BUCKET_URI/test.csv"] } }, "outputConfig": { "predictionsFormat": "jsonl", "gcsDestination": { "outputUriPrefix": "BUCKET_URI" } }, "dedicatedResources": { "machineSpec": { "machineType": "n1-standard-4", "acceleratorCount": "0" }, "startingReplicaCount": 1, "maxReplicaCount": 2 } }Ganti nilai berikut:
- PROJECT_ID: project ID Anda
- MODEL_ID: ID model untuk model Anda
- BUCKET_URI: URI untuk bucket penyimpanan tempat Anda menyiapkan model
Jalankan perintah berikut untuk mengirim permintaan inferensi batch:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/batchPredictionJobs"Ganti PROJECT_ID dengan project ID Anda.
Anda akan melihat baris berikut dalam respons:
"state": "JOB_STATE_PENDING"Tugas inferensi batch Anda kini berjalan secara asinkron. Proses ini memerlukan waktu sekitar 20 menit.
Di konsol Google Cloud , di bagian Vertex AI, buka halaman Batch predictions.
Saat tugas inferensi batch berjalan, statusnya adalah
Running. Setelah selesai, statusnya akan berubah menjadiFinished.Klik nama tugas inferensi batch Anda (
income-classification-batch-job), lalu klik link Lokasi ekspor di halaman detail untuk melihat file output tugas batch Anda di Cloud Storage.Atau, Anda dapat mengklik ikon Lihat output prediksi di Cloud Storage (di antara kolom Terakhir diperbarui dan menu Tindakan).
Klik link file
prediction.results-00000-of-00002atauprediction.results-00001-of-00002, lalu klik link Authenticated URL untuk membuka file.Output tugas inferensi batch Anda akan terlihat mirip dengan contoh ini:
{"instance": ["27", " Private", "391468", " 11th", "7", " Divorced", " Craft-repair", " Own-child", " White", " Male", "0", "0", "40", " United-States"], "prediction": " <=50K"} {"instance": ["47", " Self-emp-not-inc", "192755", " HS-grad", "9", " Married-civ-spouse", " Machine-op-inspct", " Wife", " White", " Female", "0", "0", "20", " United-States"], "prediction": " <=50K"} {"instance": ["32", " Self-emp-not-inc", "84119", " HS-grad", "9", " Married-civ-spouse", " Craft-repair", " Husband", " White", " Male", "0", "0", "45", " United-States"], "prediction": " <=50K"} {"instance": ["32", " Private", "236543", " 12th", "8", " Divorced", " Protective-serv", " Own-child", " White", " Male", "0", "0", "54", " Mexico"], "prediction": " <=50K"} {"instance": ["60", " Private", "160625", " HS-grad", "9", " Married-civ-spouse", " Prof-specialty", " Husband", " White", " Male", "5013", "0", "40", " United-States"], "prediction": " <=50K"} {"instance": ["34", " Local-gov", "22641", " HS-grad", "9", " Never-married", " Protective-serv", " Not-in-family", " Amer-Indian-Eskimo", " Male", "0", "0", "40", " United-States"], "prediction": " <=50K"} {"instance": ["32", " Private", "178623", " HS-grad", "9", " Never-married", " Other-service", " Not-in-family", " Black", " Female", "0", "0", "40", " ?"], "prediction": " <=50K"} {"instance": ["28", " Private", "54243", " HS-grad", "9", " Divorced", " Transport-moving", " Not-in-family", " White", " Male", "0", "0", "60", " United-States"], "prediction": " <=50K"} {"instance": ["29", " Local-gov", "214385", " 11th", "7", " Divorced", " Other-service", " Unmarried", " Black", " Female", "0", "0", "20", " United-States"], "prediction": " <=50K"} {"instance": ["49", " Self-emp-inc", "213140", " HS-grad", "9", " Married-civ-spouse", " Exec-managerial", " Husband", " White", " Male", "0", "1902", "60", " United-States"], "prediction": " >50K"}
Pembersihan
Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.
Anda dapat menghapus setiap resource di konsol Google Cloud sebagai berikut:
Hapus tugas inferensi batch sebagai berikut:
Di konsol Google Cloud , di bagian Vertex AI, buka halaman Batch predictions.
Di samping nama tugas inferensi batch Anda (
income-classification-batch-job), klik menu Tindakan, lalu pilih Hapus tugas prediksi batch.
Hapus model sebagai berikut:
Di konsol Google Cloud , di bagian Vertex AI, buka halaman Model Registry.
Di samping nama model Anda (
income-classifier-model), klik menu Tindakan, lalu pilih Hapus model.
Hapus instance Vertex AI Workbench sebagai berikut:
Di konsol Google Cloud , di bagian Vertex AI, buka tab Instances di halaman Workbench.
Pilih
workbench-tutorialinstance Vertex AI Workbench dan klik Hapus.
Hapus instance VM Compute Engine sebagai berikut:
Di konsol Google Cloud , buka halaman Compute Engine.
Pilih instance VM
on-prem-client, lalu klik Hapus.
Hapus tunnel VPN sebagai berikut:
Di konsol Google Cloud , buka halaman VPN.
Di halaman VPN, klik tab Cloud VPN Tunnels.
Dalam daftar tunnel VPN, pilih empat tunnel VPN yang Anda buat dalam tutorial ini, lalu klik Hapus.
Hapus gateway VPN dengan ketersediaan tinggi (HA) sebagai berikut:
Di halaman VPN, klik tab Cloud VPN Gateways.
Dalam daftar gateway VPN, klik
onprem-vpn-gw1.Di halaman Detail gateway Cloud VPN, klik Hapus Gateway VPN.
Klik panah kembali jika perlu untuk kembali ke daftar gateway VPN, lalu klik
vertex-networking-vpn-gw1.Di halaman Detail gateway Cloud VPN, klik Hapus Gateway VPN.
Hapus Cloud Router sebagai berikut:
Buka halaman Cloud Routers.
Dalam daftar Cloud Router, pilih empat router yang Anda buat dalam tutorial ini.
Untuk menghapus router, klik Hapus.
Tindakan ini juga akan menghapus dua gateway Cloud NAT yang terhubung ke Cloud Router.
Hapus aturan penerusan
pscvertexuntuk jaringan VPCvertex-networking-vpcsebagai berikut:Buka tab Frontend di halaman Load balancing.
Dalam daftar aturan penerusan, klik
pscvertex.Di halaman Forwarding rule details, klik Delete.
Hapus jaringan VPC sebagai berikut:
Buka halaman VPC networks.
Dalam daftar jaringan VPC, klik
onprem-vpc.Di halaman VPC network details, klik Delete VPC Network.
Menghapus setiap jaringan juga akan menghapus subnetwork, rute, dan aturan firewall-nya.
Dalam daftar jaringan VPC, klik
vertex-networking-vpc.Di halaman VPC network details, klik Delete VPC Network.
Hapus bucket penyimpanan sebagai berikut:
Di konsol Google Cloud , buka halaman Cloud Storage.
Pilih bucket penyimpanan Anda, lalu klik Hapus.
Hapus akun layanan
workbench-sadanonprem-user-managed-sasebagai berikut:Buka halaman Akun layanan.
Pilih akun layanan
onprem-user-managed-sadanworkbench-sa, lalu klik Hapus.
Langkah berikutnya
- Pelajari opsi jaringan perusahaan untuk mengakses endpoint dan layanan Vertex AI
- Pelajari cara kerja Private Service Connect dan alasan Private Service Connect menawarkan manfaat performa yang signifikan.
- Pelajari cara menggunakan Kontrol Layanan VPC untuk membuat perimeter yang aman guna mengizinkan atau menolak akses ke Vertex AI dan Google API lainnya di endpoint inferensi online Anda.
- Pelajari cara dan alasan
menggunakan zona penerusan DNS
daripada memperbarui file
/etc/hostsdalam skala besar dan lingkungan produksi.