Host lokal dapat menjangkau AI Generatif di Vertex AI baik melalui internet publik atau secara pribadi melalui arsitektur jaringan hybrid yang menggunakan Private Service Connect (PSC) melalui Cloud VPN atau Cloud Interconnect. Kedua opsi menawarkan enkripsi SSL/TLS. Namun, opsi pribadi menawarkan performa yang jauh lebih baik dan oleh karena itu direkomendasikan untuk aplikasi penting.
Dalam tutorial ini, Anda akan menggunakan VPN dengan Ketersediaan Tinggi (HA VPN) untuk mengakses AI Generatif di Vertex AI secara publik, melalui Cloud NAT; dan secara pribadi, di antara dua jaringan Virtual Private Cloud (VPC) yang dapat berfungsi sebagai dasar untuk konektivitas pribadi multi-cloud dan lokal.
Tutorial ini ditujukan bagi administrator jaringan, data scientist, dan peneliti perusahaan yang sudah memahami Vertex AI, VPC, konsol, dan Cloud Shell. Google Cloud Memahami AI Generatif di Vertex AI akan membantu, tetapi tidak wajib.
Tujuan
- Buat dua jaringan VPC, seperti yang ditunjukkan dalam diagram sebelumnya:
- Satu (
onprem-vpc
) mewakili jaringan lokal. - Yang lainnya (
vertex-networking-vpc
) adalah untuk mengakses REST API untuk AI Generatif di Vertex AI.
- Satu (
- Deploy gateway VPN dengan ketersediaan tinggi (HA), tunnel Cloud VPN, dan
Cloud Router untuk menghubungkan
vertex-networking-vpc
danonprem-vpc
. - Buat endpoint Private Service Connect (PSC) untuk meneruskan permintaan ke GenAI REST API.
- Konfigurasi rute kustom yang diberitahukan Cloud Router di
vertex-networking-vpc
untuk mengumumkan rute untuk endpoint Private Service Connect keonprem-vpc
. - Buat instance VM Compute Engine di
onprem-vpc
untuk merepresentasikan aplikasi klien yang mengirim permintaan ke GenAI REST API melalui HA VPN.
Biaya
Dalam 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, lihat 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
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Jika Anda bukan pemilik project, pemilik project harus memberi
Anda peran IAM
roles/resourcemanager.projectIamAdmin
. Anda harus memiliki peran ini untuk memberikan peran dan izin IAM kepada diri sendiri dan kepada akun layanan. - 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}
-
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/iam.serviceAccountCreator, roles/iam.serviceAccountUser, roles/iam.serviceAccountDeleter, roles/resourcemanager.projectIamAdmin, roles/servicedirectory.editor, roles/servicemanagement.quotaAdmin, roles/aiplatform.user
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. Biasanya berupa alamat email untuk Akun Google.
- Di daftar Select a role, pilih peran.
- Untuk memberikan peran tambahan, klik Tambahkan peran lain, lalu tambahkan setiap peran tambahan.
- Klik Simpan.
Enable the DNS, IAM, Compute Engine, Service Usage, 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.enable
permission. Learn how to grant roles. -
Buat dua jaringan VPC: vertex-networking-vpc
dan onprem-vpc
Di bagian ini, Anda akan membuat dua jaringan VPC: satu untuk menjadi jaringan utama untuk mengakses API AI generatif Vertex AI (juga dikenal sebagai GenAI), dan yang lainnya untuk menyimulasikan jaringan lokal.
Membuat jaringan VPC
Buat jaringan VPC untuk mengakses GenAI API (
vertex-networking-vpc
):gcloud compute networks create vertex-networking-vpc --subnet-mode custom
Buat jaringan VPC untuk menyimulasikan jaringan lokal (
onprem-vpc
):gcloud compute networks create onprem-vpc --subnet-mode custom
Di jaringan
onprem-vpc
, buat subnet bernamaonprem-vpc-subnet1
, dengan rentang IPv4 utama172.16.10.0/24
:gcloud compute networks subnets create onprem-vpc-subnet1 \ --range 172.16.10.0/24 \ --network onprem-vpc \ --region us-central1
Di konsol Google Cloud , buka tab Networks in current project di halaman VPC network.
Dalam daftar jaringan VPC, pastikan kedua jaringan telah dibuat:
vertex-networking-vpc
danonprem-vpc
.Di halaman VPC network, klik tab Subnets in current project.
Dalam daftar subnet VPC, pastikan subnet
onprem-vpc-subnet1
telah dibuat di jaringanonprem-vpc
.
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-central1
Buat gateway VPN dengan ketersediaan tinggi (HA) untuk jaringan VPC
onprem-vpc
VPC:gcloud compute vpn-gateways create onprem-vpn-gw1 \ --network onprem-vpc \ --region us-central1
Di konsol Google Cloud , buka tab Cloud VPN Gateways di halaman VPN.
Dalam daftar gateway VPN, pastikan kedua gateway (
vertex-networking-vpn-gw1
danonprem-vpn-gw1
) telah dibuat dan masing-masing memiliki dua alamat IP.
Membuat Cloud Router
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 65001
Buat Cloud Router untuk jaringan VPC
onprem-vpc
:gcloud compute routers create onprem-vpc-router1 \ --region us-central1\ --network onprem-vpc\ --asn 65002
Tambahkan gateway Cloud NAT ke onprem-vpc
jaringan VPC
Pada langkah ini, Anda akan menambahkan gateway Cloud NAT ke
Cloud Router untuk jaringan VPC onprem-vpc
.
Gateway Cloud NAT menyediakan konektivitas keluar untuk instance virtual machine (VM) Compute Engine yang tidak memiliki alamat IP eksternal.
Di Cloud Shell, tambahkan gateway Cloud NAT ke Cloud Router
onprem-vpc-router1
:gcloud compute routers nats create us-central-cloudnat-onprem \ --router=onprem-vpc-router1 \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges \ --region us-central1
Di konsol Google Cloud , buka halaman Cloud Router.
Dalam daftar Cloud Router, pastikan
vertex-networking-vpc-router1
danonprem-vpc-router1
telah dibuat. Anda mungkin perlu memuat ulang tab browser konsol untuk melihat nilai baru. Google CloudDi daftar Cloud Router, klik
onprem-vpc-router1
.Di halaman Router details, pastikan
us-central-cloudnat-onprem
gateway Cloud NAT telah dibuat.
Buat tunnel VPN
Di jaringan
vertex-networking-vpc
, buat tunnel VPN yang disebutvertex-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 0
Di 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 1
Di 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 0
Di 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 1
Di 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-central1
Di 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-central1
Di 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-central1
Di 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-central1
Di 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-central1
Di 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-central1
Di 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
Buat endpoint Private Service Connect (PSC)
Di bagian ini, Anda akan membuat endpoint Private Service Connect (PSC) untuk Google API yang akan digunakan instance VM di jaringan onprem-vpc
untuk mengakses GenAI API dari jaringan onprem-vpc
Anda.
Endpoint Private Service Connect (PSC) adalah alamat IP
internal di jaringan onprem-vpc
yang dapat diakses langsung oleh klien
di jaringan tersebut. Endpoint ini dibuat dengan men-deploy aturan penerusan
yang mengarahkan traffic jaringan yang cocok dengan alamat IP endpoint PSC
ke paket Google API: khususnya, paket
all-apis.
Alamat IP endpoint PSC (192.168.0.1
) akan diiklankan dari
Cloud Router vertex-networking-vpc-router
sebagai rute yang diiklankan kustom
ke jaringan onprem-vpc
pada langkah selanjutnya.
Cadangkan alamat IP internal global untuk ditetapkan ke endpoint:
gcloud compute addresses create psc-googleapi-ip \ --global \ --purpose=PRIVATE_SERVICE_CONNECT \ --addresses=192.168.0.1 \ --network=vertex-networking-vpc
Buat endpoint, beserta aturan penerusan yang 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 daftar endpoint PSC yang dikonfigurasi dan verifikasi bahwa endpoint
pscvertex
telah dibuat:gcloud compute forwarding-rules list \ --filter target="(all-apis OR vpc-sc)" --global
Dapatkan detail endpoint PSC yang dikonfigurasi dan verifikasi bahwa alamat IP-nya adalah
192.168.0.1
:gcloud compute forwarding-rules describe \ pscvertex --global
Buat pemberitahuan rute kustom untuk vertex-networking-vpc
Di bagian ini, Anda akan membuat
rute yang diiklankan 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 Router.
Di 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.1
Untuk Deskripsi, masukkan teks berikut:
Custom route to advertise Private Service Connect endpoint IP address
Klik 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-tunnel0
danonprem-vpc-router1-bgp-vfertex-networking-vpc-tunnel1
, dan keduanya memiliki Rentang IP tujuan192.168.0.1/32
. (192.168.0.1
adalah alamat IP endpoint PSC.)Jika entri ini tidak langsung muncul, tunggu beberapa menit, lalu muat ulang tab browser konsol Google Cloud .
- Untuk Network, pilih
Mengonfigurasi instance VM di jaringan lokal
Di bagian ini, Anda akan membuat instance VM Compute Engine di jaringan VPC onprem-vpc
. Instance VM ini
mensimulasikan klien lokal yang terhubung ke endpoint PSC dan
mengakses GenAI API.
Buat akun layanan yang dikelola pengguna
Dalam tutorial ini, Anda akan membuat akun layanan yang dikelola pengguna dengan mengikuti praktik terbaik Compute Engine dan IAM.
Di Cloud Shell, jalankan perintah berikut, dengan mengganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}
Buat akun layanan:
gcloud iam service-accounts create user-managed-sa
Tetapkan peran IAM Vertex AI User (
roles/aiplatform.user
) ke akun layanan:gcloud projects add-iam-policy-binding $projectid \ --member="serviceAccount:user-managed-sa@$projectid." \ --role="roles/aiplatform.user"
Buat instance VM on-prem-client
Pada langkah ini, Anda membuat instance VM, yang menggunakan
alamat IP Private Service Connect (192.168.0.1
) untuk mengakses Google
API melalui VPN dengan ketersediaan tinggi (HA).
Untuk mengizinkan Identity-Aware Proxy (IAP) terhubung ke instance VM Anda, buat aturan firewall yang:
- Berlaku untuk semua instance VM yang ingin Anda buat dapat diakses melalui IAP. (Dalam hal ini, hanya ada
on-prem-client
.) - Mengizinkan traffic TCP melalui port 22 dari rentang IP
35.235.240.0/20
. Rentang ini berisi semua alamat IP yang digunakan IAP untuk penerusan TCP.
Buat instance VM
on-prem-client
. Perintah berikut juga menginstal pakettcpdump
dandnsutils
, yang berisi utilitastcpdump
dandig
yang akan Anda gunakan nanti untuk memvalidasi permintaan API: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=user-managed-sa@$projectid. \ --metadata startup-script="#! /bin/bash sudo apt-get update sudo apt-get install tcpdump dnsutils -y"
Buat aturan firewall IAP bernama
ssh-iap-on-prem-vpc
: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 internet publik ke AI Generatif di Vertex AI
Di bagian ini, Anda akan login ke instance VM on-prem-client
menggunakan
Identity-Aware Proxy, lalu memvalidasi konektivitas publik
ke Vertex AI API (termasuk GenAI) dengan menjalankan perintah dig
terhadap domain Vertex AI publik (us-central1-aiplatform.googleapis.com
).
Di Cloud Shell (Tab Satu), jalankan perintah berikut, dengan mengganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}
Login ke instance VM
on-prem-client
menggunakan IAP:gcloud compute ssh on-prem-client --project=$projectid --zone=us-central1-a --tunnel-through-iap
Jalankan perintah
dig
:dig us-central1-aiplatform.googleapis.com
Anda akan melihat output
dig
yang 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 AI Generatif di Vertex AI
Di bagian ini, Anda mengonfigurasi akses pribadi ke AI Generatif di Vertex AI sehingga saat Anda mengirim permintaan ke endpoint layanan publik (us-central1-aiplatform.googleapis.com
), permintaan tersebut akan dialihkan ke endpoint PSC Anda. Endpoint PSC pada gilirannya meneruskan permintaan ke
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
(Tab Satu), gunakan editor teks sepertivim
ataunano
untuk membuka file/etc/hosts
:sudo vim /etc/hosts
Tambahkan baris berikut ke file:
192.168.0.1 us-central1-aiplatform.googleapis.com
Baris 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 Google
Simpan file sebagai berikut:
- Jika Anda menggunakan
vim
, tekan tombolEsc
, lalu ketik:wq
untuk menyimpan file dan keluar. - Jika Anda menggunakan
nano
, ketikControl+O
dan tekanEnter
untuk menyimpan file, lalu ketikControl+X
untuk keluar.
- Jika Anda menggunakan
Ping endpoint Vertex AI sebagai berikut:
ping us-central1-aiplatform.googleapis.com
Perintah
ping
akan menampilkan output berikut.192.168.0.1
adalah alamat IP endpoint PSC:PING us-central1-aiplatform.googleapis.com (192.168.0.1) 56(84) bytes of data.
Ketik
Control+C
untuk keluar dariping
.Jalankan perintah
tcpdump
berikut untuk memvalidasi resolusi DNS dan jalur data IP saat Anda mengirim permintaan prediksi online ke endpoint:sudo tcpdump -i any port 53 -n or host 192.168.0.1
Buat permintaan pribadi
Pada langkah ini, Anda akan membuat file teks bernama request.json
yang berisi
payload untuk contoh permintaan curl
yang Anda kirim ke GenAI REST API.
Untuk mengetahui informasi selengkapnya tentang contoh permintaan, lihat
Contoh permintaan.
Dengan tetap menjalankan perintah
tcpdump
di Tab Satu, buka sesi Cloud Shell baru (Tab Dua) dengan mengklik open a new tab di Cloud Shell.Di sesi Cloud Shell baru (Tab Dua), jalankan perintah berikut, dengan mengganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}
Login ke instance VM
on-prem-client
menggunakan IAP:gcloud compute ssh on-prem-client --project=$projectid --zone=us-central1-a --tunnel-through-iap
Jalankan perintah berikut, dengan mengganti PROJECT_ID dengan project ID Anda:
projectid=PROJECT_ID gcloud config set project ${projectid}
Gunakan editor teks seperti
vim
ataunano
untuk membuat file baru bernamarequest.json
yang berisi teks berikut:{ "instances": [ { "prompt": "Give me ten interview questions for the role of program manager."} ], "parameters": { "temperature": 0.2, "maxOutputTokens": 256, "topK": 40, "topP": 0.95 } }
Jalankan perintah berikut untuk mengirim permintaan ke endpoint PSC, yang meneruskan permintaan ke GenAI API. Saat menerima respons, endpoint akan meneruskannya kembali ke VM
on-prem-client
: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/$projectid/locations/us-central1/publishers/google/models/text-bison:predict"
Anda akan melihat respons yang mirip dengan contoh berikut:
{ "predictions": [ { "content": " 1. **What is your experience in managing programs?**\n2. **What are your strengths and weaknesses as a program manager?**\n3. **What is your approach to managing a program?**\n4. **How do you handle risks and challenges in a program?**\n5. **How do you communicate with stakeholders in a program?**\n6. **How do you measure the success of a program?**\n7. **What is your experience in working with cross-functional teams?**\n8. **What is your experience in managing budgets and resources?**\n9. **What is your experience in managing change in a program?**\n10. **What are your career goals as a program manager?**", "citationMetadata": { "citations": [] }, "safetyAttributes": { "categories": [ "Finance", "Health" ], "blocked": false, "scores": [ 0.6, 0.1 ] } } ], "metadata": { "tokenMetadata": { "outputTokenCount": { "totalBillableCharacters": 505, "totalTokens": 153 }, "inputTokenCount": { "totalBillableCharacters": 54, "totalTokens": 12 } } } }
Di Tab Satu, pastikan alamat IP endpoint PSC (
192.168.0.1
) digunakan untuk mengakses Vertex AI API dari instance VMon-prem-client
(subnet172.16.10.0/28
).Dari terminal
tcpdump
di Tab Cloud Shell Satu, Anda dapat melihat bahwa pencarian DNS keus-central1-aiplatform.googleapis.com
tidak diperlukan, karena baris yang Anda tambahkan ke file/etc/hosts
lebih diutamakan, dan alamat IP endpoint PSC (192.168.0.1
) digunakan di jalur data.Anda akan melihat output
tcpdump
yang mirip dengan berikut ini:23:48:49.938797 ens4 Out IP 172.16.10.9.38578 > 192.168.0.1.443: Flags [P.], seq 2054:2093, ack 6264, win 501, options [nop,nop,TS val 2943864305 ecr 2340789954], length 39 23:48:49.938947 ens4 Out IP 172.16.10.9.38578 > 192.168.0.1.443: Flags [P.], seq 2093:2117, ack 6264, win 501, options [nop,nop,TS val 2943864305 ecr 2340789954], length 24 23:48:49.939839 ens4 Out IP 172.16.10.9.38578 > 192.168.0.1.443: Flags [F.], seq 2117, ack 6264, win 501, options [nop,nop,TS val 2943864306 ecr 2340789954], length 0 23:48:49.940292 ens4 In IP 192.168.0.1.443 > 172.16.10.9.38578: Flags [.], ack 2117, win 272, options [nop,nop,TS val 2340789958 ecr 2943864305], length 0 23:48:49.940437 ens4 In IP 192.168.0.1.443 > 172.16.10.9.38578: Flags [F.], seq 6264, ack 2117, win 272, options [nop,nop,TS val 2340789958 ecr 2943864305], length 0 23:48:49.940442 ens4 Out IP 172.16.10.9.38578 > 192.168.0.1.443: Flags [.], ack 6265, win 501, options [nop,nop,TS val 2943864307 ecr 2340789958], length 0 23:48:49.941193 ens4 In IP 192.168.0.1.443 > 172.16.10.9.38578: Flags [.], ack 2118, win 272, options [nop,nop,TS val 2340789959 ecr 2943864306], length 0
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 dalam project dengan menjalankan perintah berikut di Cloud Shell:
projectid=PROJECT_ID
gcloud config set project ${projectid}
gcloud compute firewall-rules delete ssh-iap-on-prem-vpc --quiet
gcloud compute instances delete on-prem-client --zone=us-central1-a --quiet
gcloud iam service-accounts delete user-managed-sa@$projectid. --quiet
gcloud compute forwarding-rules delete pscvertex --global --quiet
gcloud compute addresses delete psc-googleapi-ip --global --quiet
gcloud compute vpn-tunnels delete vertex-networking-vpc-tunnel0 vertex-networking-vpc-tunnel1 onprem-vpc-tunnel0 onprem-vpc-tunnel1 --region=us-central1 --quiet
gcloud compute routers nats delete us-central-cloudnat-onprem --router=onprem-vpc-router1 --region=us-central1 --quiet
gcloud compute routers delete vertex-networking-vpc-router1 onprem-vpc-router1 --region=us-central1 --quiet
gcloud compute vpn-gateways delete vertex-networking-vpn-gw1 onprem-vpn-gw1 --region=us-central1 --quiet
gcloud compute networks subnets delete onprem-vpc-subnet1 --region=us-central1 --quiet
gcloud compute networks delete onprem-vpc --quiet
gcloud compute networks delete vertex-networking-vpc --quiet
Langkah berikutnya
- Pelajari opsi jaringan perusahaan untuk mengakses endpoint dan layanan Vertex AI
- Pelajari cara Mengakses layanan yang dipublikasikan melalui endpoint.
- Pelajari cara kerja Private Service Connect dan alasan Private Service Connect menawarkan manfaat performa yang signifikan.
- Pelajari lebih lanjut Tentang mengakses Google API melalui endpoint.
- Pelajari cara dan alasan
menggunakan zona penerusan DNS
daripada memperbarui file
/etc/hosts
dalam skala besar dan lingkungan produksi. - Pelajari lebih lanjut rute yang diberitahukan khusus.