Men-deploy Model Garden di endpoint PSC

1. Pengantar

Manfaatkan Private Service Connect untuk membuat akses pribadi yang aman bagi model yang di-deploy dari Vertex AI Model Garden. Daripada mengekspos endpoint publik, metode ini memungkinkan Anda men-deploy model ke endpoint Vertex AI pribadi yang hanya dapat diakses dalam Virtual Private Cloud (VPC) Anda.

Private Service Connect membuat endpoint dengan alamat IP internal di dalam VPC Anda, yang terhubung langsung ke layanan Vertex AI yang dikelola Google yang menghosting model Anda. Hal ini memungkinkan aplikasi di VPC dan lingkungan lokal Anda (melalui Cloud VPN atau Interconnect) mengirim permintaan inferensi menggunakan IP pribadi. Semua traffic jaringan tetap berada di jaringan Google, yang meningkatkan keamanan, mengurangi latensi, dan mengisolasi endpoint penayangan model Anda sepenuhnya dari internet publik.

4a78228d4197997c.png

Yang akan Anda build

Dalam tutorial ini, Anda akan mendownload Gemma 3 dari Model Garden, yang dihosting di Inferensi Online Vertex AI sebagai endpoint pribadi yang dapat diakses melalui Private Service Connect. Penyiapan end-to-end Anda akan mencakup:

  1. Model Model Garden: Anda akan memilih Gemma 3 dari Model Garden Vertex AI dan men-deploy-nya ke endpoint Private Service Connect.
  2. Private Service Connect: Anda akan mengonfigurasi endpoint konsumen di Virtual Private Cloud (VPC) yang terdiri dari alamat IP internal dalam jaringan Anda sendiri.
  3. Koneksi Aman ke Vertex AI: Endpoint PSC akan menargetkan Lampiran Layanan yang dibuat secara otomatis oleh Vertex AI untuk deployment model pribadi Anda. Hal ini akan membuat koneksi pribadi, sehingga traffic antara VPC Anda dan endpoint penayangan model tidak melintasi internet publik.
  4. Konfigurasi Klien dalam VPC Anda: Anda akan menyiapkan klien (misalnya, VM Compute Engine) dalam VPC Anda untuk mengirim permintaan inferensi ke model yang di-deploy menggunakan alamat IP internal endpoint PSC.

Pada akhirnya, Anda akan memiliki contoh fungsional model Model Garden yang ditayangkan secara pribadi, yang hanya dapat diakses dari dalam jaringan VPC yang Anda tetapkan.

Yang akan Anda pelajari

Dalam tutorial ini, Anda akan mempelajari cara men-deploy model dari Vertex AI Model Garden dan membuatnya dapat diakses dengan aman dari Virtual Private Cloud (VPC) menggunakan Private Service Connect (PSC). Metode ini memungkinkan aplikasi Anda dalam VPC (konsumen) terhubung secara pribadi ke endpoint model Vertex AI (layanan produsen) tanpa melintasi internet publik.

Secara khusus, Anda akan mempelajari:

  1. Memahami PSC untuk Vertex AI: Cara PSC memungkinkan koneksi pribadi dan aman dari konsumen ke produsen. VPC Anda dapat mengakses model Model Garden yang di-deploy menggunakan alamat IP internal.
  2. Men-deploy Model dengan Akses Pribadi: Cara mengonfigurasi Endpoint Vertex AI untuk model Model Garden agar menggunakan PSC, sehingga menjadikannya endpoint pribadi.
  3. Peran Lampiran Layanan: Saat Anda men-deploy model ke Endpoint Vertex AI pribadi, Google Cloud akan otomatis membuat Lampiran Layanan di project tenant yang dikelola Google. Lampiran Layanan ini mengekspos layanan penyajian model ke jaringan konsumen.
  4. Membuat Endpoint PSC di VPC Anda:
  • Cara mendapatkan URI Lampiran Layanan unik dari detail Endpoint Vertex AI yang di-deploy.
  • Cara mencadangkan alamat IP internal dalam subnet yang dipilih di VPC Anda.
  • Cara membuat Aturan Penerusan di VPC yang berfungsi sebagai Endpoint PSC, yang menargetkan Lampiran Layanan Vertex AI. Endpoint ini membuat model dapat diakses melalui IP internal yang dicadangkan.
  1. Membangun Konektivitas Pribadi: Cara Endpoint PSC di VPC Anda terhubung ke Lampiran Layanan, yang menjembatani jaringan Anda dengan layanan Vertex AI secara aman.
  2. Mengirim Permintaan Inferensi Secara Pribadi: Cara mengirim permintaan prediksi dari resource (seperti VM Compute Engine) dalam VPC Anda ke alamat IP internal Endpoint PSC.
  3. Validasi: Langkah-langkah untuk menguji dan mengonfirmasi bahwa Anda dapat berhasil mengirim permintaan inferensi dari VPC ke model Model Garden yang di-deploy melalui koneksi pribadi.

Dengan menyelesaikannya, Anda akan dapat menghosting model dari Model Garden yang hanya dapat dijangkau dari infrastruktur jaringan pribadi Anda.

Yang Anda butuhkan

Project Google Cloud

Izin IAM

2. Sebelum memulai

Memperbarui project untuk mendukung tutorial

Tutorial ini menggunakan $variables untuk membantu penerapan konfigurasi gcloud di Cloud Shell.

Di dalam Cloud Shell, lakukan hal berikut:

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
projectid=[YOUR-PROJECT-ID]
echo $projectid

Pengaktifan API

Di dalam Cloud Shell, lakukan hal berikut:

gcloud services enable "compute.googleapis.com"
gcloud services enable "aiplatform.googleapis.com"
gcloud services enable "serviceusage.googleapis.com"

3. Deploy Model

Ikuti langkah-langkah di bawah untuk men-deploy model Anda dari Model Garden

Di Konsol Google Cloud, Buka Model Garden, lalu telusuri dan pilih Gemma 3

10c7ce35cfc571dc.png

Klik Opsi deployment, lalu pilih Vertex AI

ed9280fcc5f4c3fa.png

Di panel Deploy di Vertex AI, pilih Lanjutan. Region dan Spesifikasi mesin yang telah diisi otomatis dipilih berdasarkan kapasitas yang tersedia. Anda dapat mengubah nilai ini, meskipun codelab disesuaikan untuk us-central1.

3f7e4cefdc06488a.png

Di panel Deploy on Vertex AI, pastikan Endpoint Access dikonfigurasi sebagai Private Service Connect, lalu pilih Project Anda.

d0f0d9bc49205fb3.png

Biarkan semua opsi lainnya tetap dalam nilai defaultnya, lalu pilih Deploy di bagian bawah & Periksa notifikasi Anda untuk mengetahui status deployment.

9bd3b10256b7b2cc.png

Di Model Garden, pilih region, us-central1, yang menyediakan model dan endpoint Gemma 3. Deployment model memerlukan waktu sekitar 5 menit.

e998ee6288a8a7a.png

Dalam 30 menit, endpoint akan bertransisi ke "Aktif" setelah selesai

9dcc7c56dbe0e88a.png

Dapatkan dan catat ID Endpoint dengan memilih endpoint.

6e3e2feef82fadd5.png

Buka Cloud Shell dan lakukan langkah-langkah berikut untuk mendapatkan URI Lampiran Layanan Private Service Connect. String URI ini digunakan oleh konsumen saat men-deploy endpoint konsumen PSC.

Di dalam Cloud Shell, perbarui ID Endpoint, lalu jalankan perintah berikut.

gcloud ai endpoints describe [Endpoint ID] --region=us-central1  | grep -i serviceAttachment:

Berikut contohnya:

user@cloudshell:$ gcloud ai endpoints describe 2124795225560842240 --region=us-central1 | grep -i serviceAttachment:

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
    serviceAttachment: projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d

Salin konten setelah serviceAttachment ke dalam variabel bernama "Service_attachment". Anda akan memerlukannya nanti saat membuat koneksi PSC.

user@cloudshell:$ Service_attachment=projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d

4. Penyiapan Konsumen

Buat VPC Konsumen

Di dalam Cloud Shell, lakukan hal berikut:

gcloud compute networks create consumer-vpc --project=$projectid --subnet-mode=custom

Buat subnet VM konsumen

Di dalam Cloud Shell, lakukan hal berikut:

gcloud compute networks subnets create consumer-vm-subnet --project=$projectid --range=192.168.1.0/24 --network=consumer-vpc --region=us-central1 --enable-private-ip-google-access

Buat subnet Endpoint PSC

gcloud compute networks subnets create pscendpoint-subnet --project=$projectid --range=10.10.10.0/28 --network=consumer-vpc --region=us-central1

5. Aktifkan IAP

Untuk mengizinkan IAP terhubung ke instance VM Anda, buat aturan firewall yang:

  • Berlaku untuk semua instance VM yang ingin Anda akses menggunakan IAP.
  • Mengizinkan traffic masuk dari rentang IP 35.235.240.0/20. Rentang ini berisi semua alamat IP yang digunakan IAP untuk penerusan TCP.

Di dalam Cloud Shell, buat aturan firewall IAP.

gcloud compute firewall-rules create ssh-iap-consumer \
    --network consumer-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

6. Membuat instance VM konsumen

Di dalam Cloud Shell, buat instance VM konsumen, consumer-vm.

gcloud compute instances create consumer-vm \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --shielded-secure-boot \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=consumer-vm-subnet 

7. Endpoint Private Service Connect

Konsumen membuat endpoint konsumen (aturan penerusan) dengan alamat IP internal dalam VPC-nya. Endpoint PSC ini menargetkan lampiran layanan produsen. Klien dalam jaringan VPC konsumen atau jaringan hybrid dapat mengirim traffic ke alamat IP internal ini untuk menjangkau layanan produsen.

Cadangkan alamat IP untuk endpoint konsumen.

Di dalam Cloud Shell, buat aturan penerusan.

gcloud compute addresses create psc-address \
    --project=$projectid \
    --region=us-central1 \
    --subnet=pscendpoint-subnet \
    --addresses=10.10.10.6

Verifikasi bahwa alamat IP dicadangkan

Di dalam Cloud Shell, cantumkan Alamat IP yang dicadangkan.

gcloud compute addresses list 

Anda akan melihat alamat IP 10.10.10.6 dicadangkan.

edb5661bea25cd14.png

Buat endpoint konsumen dengan menentukan URI lampiran layanan, target-service-attachment, yang Anda ambil di langkah sebelumnya, bagian Deploy Model.

Di dalam Cloud Shell, deskripsikan lampiran jaringan.

 gcloud compute forwarding-rules create psc-consumer-ep \
    --network=consumer-vpc \
    --address=psc-address \
    --region=us-central1 \
    --target-service-attachment=$Service_attachment \
    --project=$projectid

Pastikan lampiran layanan menerima endpoint

gcloud compute forwarding-rules describe psc-consumer-ep \
    --project=$projectid \
    --region=us-central1 \

Dalam respons, verifikasi bahwa status "ACCEPTED" muncul di kolom pscConnectionStatus

6c66347ede9d4c7d.png

8. Pengujian dari VM Konsumen

Di Cloud Shell, lakukan langkah-langkah berikut untuk memberikan akses ke VM Konsumen agar dapat mengakses Vertex Model Garden API

SSH ke VM Konsumen

f0984d9e60530cb2.png

Lakukan autentikasi ulang dengan Kredensial Default Aplikasi dan tentukan cakupan Vertex AI.

gcloud auth application-default login
--scopes=https://www.googleapis.com/auth/cloud-platform 

Gunakan tabel di bawah ini untuk membuat perintah CURLl, sesuaikan berdasarkan lingkungan Anda

Atribut

Nilai

Protokol

HTTP

Lokasi

us-central1

Endpoint Prediksi Online

2133539641536544768

ID Project

test4-473419

Model

gemma-3-12b-it

IP Endpoint Private Service Connect

10.10.10.6

Pesan

[{"role": "user","content": "Mana yang lebih berat, 1 pon bulu atau batu?"}]

Perbarui dan jalankan perintah curl berdasarkan detail lingkungan Anda:

curl -k -v -X POST   -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"   -H "Content-Type: application/json"   http://[PSC-IP]/v1/projects/[Project-ID]/locations/us-central1/endpoints/[Predictions Endpoint]/chat/completions   -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'

Contoh:

curl -k -v -X POST   -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"   -H "Content-Type: application/json"   http://10.10.10.6/v1/projects/test4-473419/locations/us-central1/endpoints/2133539641536544768/chat/completions   -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'

HASIL AKHIR - BERHASIL!!!

Hasil yang akan Anda lihat adalah prediksi dari Gemma 3 di bagian bawah output, yang menunjukkan bahwa Anda dapat mengakses endpoint API secara pribadi melalui endpoint PSC

 Connection #0 to host 10.10.10.6 left intact
{"id":"chatcmpl-9e941821-65b3-44e4-876c-37d81baf62e0","object":"chat.completion","created":1759009221,"model":"google/gemma-3-12b-it","choices":[{"index":0,"message":{"role":"assistant","reasoning_content":null,"content":"This is a classic trick question! They weigh the same. One pound is one pound, regardless of the material. 😊\n\n\n\n","tool_calls":[]},"logprobs":null,"finish_reason":"stop","stop_reason":106}],"usage":{"prompt_tokens":20,"total_tokens":46,"completion_tokens":26,"prompt_tokens_details":null},"prompt_logprobs":null

9. Pembersihan

Dari Cloud Shell, hapus komponen tutorial.

gcloud ai endpoints undeploy-model ENDPOINT_ID --deployed-model-id=DEPLOYED_MODEL_ID --region=us-central1 --quiet

gcloud ai endpoints delete $ENDPOINT_ID --project=$projectid --region=us-central1 --quiet

gcloud ai models delete $MODEL_ID --project=$projectid --region=us-central1 --quiet

gcloud compute instances delete consumer-vm --zone=us-central1-a --quiet

gcloud compute forwarding-rules delete psc-consumer-ep --region=us-central1 --project=$projectid --quiet

gcloud compute addresses delete psc-address --region=us-central1 --project=$projectid --quiet

gcloud compute networks subnets delete pscendpoint-subnet consumer-vm-subnet --region=us-central1 --quiet

gcloud compute firewall-rules delete ssh-iap-consumer --project=$projectid

gcloud compute networks delete consumer-vpc --project=$projectid --quiet

gcloud projects delete $projectid --quiet

10. Selamat

Selamat, Anda telah berhasil mengonfigurasi dan memvalidasi akses pribadi ke Gemma 3 API yang dihosting di Vertex AI Prediction menggunakan Endpoint Private Service Connect.

Anda membuat infrastruktur konsumen, termasuk mencadangkan alamat IP internal dan mengonfigurasi Endpoint Private Service Connect (aturan penerusan) dalam VPC Anda. Endpoint ini terhubung dengan aman ke layanan Vertex AI dengan menargetkan lampiran layanan yang terkait dengan model Gemma 3 yang di-deploy. Penyiapan ini memungkinkan aplikasi Anda dalam VPC atau jaringan yang terhubung berinteraksi dengan Gemma 3 API secara pribadi dan aman, menggunakan alamat IP internal, tanpa mengharuskan traffic melintasi internet publik.

Bacaan lebih lanjut & Video

Dokumen referensi