Private Service Connect memungkinkan penggunaan layanan secara pribadi di seluruh jaringan VPC yang menjadi bagian dari grup, tim, project, atau organisasi yang berbeda. Anda dapat memublikasikan dan menggunakan layanan menggunakan alamat IP yang Anda tentukan dan yang bersifat internal untuk jaringan VPC Anda, serta untuk endpoint Vector Search guna melakukan penelusuran kesamaan vektor.
Private Service Connect sebaiknya diaktifkan di endpoint Vector Search untuk kasus penggunaan yang:
- Memerlukan latensi rendah dan koneksi aman ke backend penyaluran Vector Search.
- Memiliki ruang IP terbatas untuk pemesanan peering VPC eksklusif.
- Perlu mengakses backend penyaluran dari beberapa jaringan VPC pengguna.
Untuk mempelajari cara menyiapkan Private Service Connect lebih lanjut, lihat Ringkasan Private Service Connect dari dokumentasi Virtual Private Cloud (VPC).
Membuat endpoint indeks
Untuk membuat endpoint dengan Private Service Connect yang diaktifkan, Anda harus menentukannya saat membuat endpoint. Hal ini mirip seperti membuat endpoint lain di Vertex AI.
PROJECT=<your-service-project>
VPC_PROJECT=<your-vpc-project>
REGION=us-central1
VERTEX_ENDPOINT=$REGION-aiplatform.googleapis.com
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer `gcloud auth print-access-token`" \
https://$VERTEX_ENDPOINT/v1/projects/$PROJECT/locations/$REGION/indexEndpoints \
-d '{displayName: "<your-index-endpoint-name>", privateServiceConnectConfig:
{ enablePrivateServiceConnect: true, projectAllowlist: ["'$VPC_PROJECT'", "'$PROJECT'"] }}'
Men-deploy indeks
Setelah indeks siap, pada langkah ini, Anda akan men-deploy indeks ke endpoint yang dibuat dengan Private Service Connect yang diaktifkan.
{
gcloud
Contoh ini menggunakan perintahgcloud ai index-endpoints deploy-index
.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- INDEX_ENDPOINT_ID: ID endpoint indeks.
- DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
- DEPLOYED_INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks yang di-deploy.
- INDEX_ID: ID indeks.
- LOCATION: Region tempat Anda menggunakan Vertex AI.
- PROJECT_ID: ID project Google Cloud Anda.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID \ --deployed-index-id=DEPLOYED_INDEX_ID \ --display-name=DEPLOYED_INDEX_ENDPOINT_NAME \ --index=INDEX_ID \ --region=LOCATION \ --project=PROJECT_ID
Windows (PowerShell)
gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID ` --deployed-index-id=DEPLOYED_INDEX_ID ` --display-name=DEPLOYED_INDEX_ENDPOINT_NAME ` --index=INDEX_ID ` --region=LOCATION ` --project=PROJECT_ID
Windows (cmd.exe)
gcloud ai index-endpoints deploy-index INDEX_ENDPOINT_ID ^ --deployed-index-id=DEPLOYED_INDEX_ID ^ --display-name=DEPLOYED_INDEX_ENDPOINT_NAME ^ --index=INDEX_ID ^ --region=LOCATION ^ --project=PROJECT_ID
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- INDEX_ENDPOINT_ID: ID endpoint indeks.
- DEPLOYED_INDEX_ID: String yang ditentukan pengguna untuk mengidentifikasi indeks yang di-deploy secara unik. Nama ini harus diawali dengan huruf dan hanya berisi huruf, angka, atau garis bawah. Lihat DeployedIndex.id untuk panduan format.
- DEPLOYED_INDEX_ENDPOINT_NAME: Nama tampilan endpoint indeks yang di-deploy.
- INDEX_ID: ID indeks.
- LOCATION: Region tempat Anda menggunakan Vertex AI.
- PROJECT_ID: ID project Google Cloud Anda.
- PROJECT_NUMBER: Nomor project yang dibuat secara otomatis untuk project Anda.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID:deployIndex
Meminta isi JSON:
{ "deployedIndex": { "id": "DEPLOYED_INDEX_ID", "index": "projects/PROJECT_ID/locations/LOCATION/indexes/INDEX_ID", "displayName": "DEPLOYED_INDEX_ENDPOINT_NAME" } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON yang mirip seperti berikut:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/indexEndpoints/INDEX_ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployIndexOperationMetadata", "genericMetadata": { "createTime": "2022-10-19T17:53:16.502088Z", "updateTime": "2022-10-19T17:53:16.502088Z" }, "deployedIndexId": "DEPLOYED_INDEX_ID" } }
Konsol
Gunakan petunjuk ini untuk men-deploy indeks Anda.
- Di bagian Vertex AI pada Konsol Google Cloud, buka bagian Deploy dan Gunakan. Pilih Cari Vektor
- Daftar indeks aktif Anda akan ditampilkan.
- Pilih nama indeks yang ingin Anda deploy. Halaman detail indeks akan terbuka.
- Dari halaman detail indeks, klik Deploy ke endpoint. Panel deployment indeks akan terbuka.
- Masukkan nama tampilan - nama ini berfungsi sebagai ID dan tidak dapat diperbarui.
- Dari drop-down Endpoint, pilih endpoint tempat Anda ingin men-deploy indeks ini. Catatan: Endpoint tidak tersedia jika indeks sudah di-deploy ke endpoint tersebut.
- Opsional: Di kolom Jenis mesin, pilih memori standar atau memori tinggi.
- Opsional. Pilih Aktifkan penskalaan otomatis untuk mengubah ukuran jumlah node secara otomatis berdasarkan permintaan workload Anda. Jumlah default replika adalah 2 jika penskalaan otomatis dinonaktifkan.
- Klik Deploy untuk men-deploy indeks ke endpoint. Catatan: Perlu waktu sekitar 30 menit untuk di-deploy.
Membuat aturan penerusan di project VPC
Setelah deployment indeks selesai, endpoint indeks akan menampilkan URI lampiran layanan, bukan alamat IP. Anda perlu membuat aturan penerusan dalam project VPC yang menargetkan lampiran layanan. Untuk membuat aturan penerusan, gunakan contoh berikut:
gcloud compute addresses create ${ADDRESS_NAME:?} \
--region=${REGION:?} \
--subnet=${SUBNET_NAME:?} \
--project=${VPC_PROJECT:?}
SERVICE_ATTACHMENT_URI=`gcloud ai index-endpoints describe {INDEX_ENDPOINT_ID}
--format="value(deployedIndexes.privateEndpoints.serviceAttachment)"`
gcloud compute forwarding-rules create ${ENDPOINT_NAME:?} \
--network=${NETWORK_NAME:?} \
--address=${ADDRESS_NAME:?} \
--target-service-attachment=${SERVICE_ATTACHMENT_URI:?} \
--project=${VPC_PROJECT:?} \
--region=${REGION:?}
(Opsional) Membuat data DNS untuk alamat IP
Jika ingin menghubungkan dan memuat tanpa mengingat alamat IP yang sebenarnya, Anda dapat membuat data DNS. Langkah ini opsional.
DNS_NAME_SUFFIX=matchingengine.vertexai.goog. # Don't forget the "." in the end.
DNS_NAME=${INDEX_ENDPOINT_ID:?}.${REGION:?}.${DNS_NAME_SUFFIX:?}
gcloud dns managed-zones create ${DNS_ZONE_NAME:?} \
--dns-name=${DNS_NAME_SUFFIX:?} \
--visibility=private \
--project=${VPC_PROJECT:?} \
--region=${REGION:?}
gcloud dns record-sets create ${DNS_NAME:?} \
--rrdatas=${IP_ADDRESS:?} \
--type=A --ttl=60 \
--zone=${DNS_ZONE_NAME:?} \
--project=${VPC_PROJECT:?} \
--region=${REGION:?}
Mengirim kueri ke endpoint indeks
Setelah membuat endpoint dengan Private Service Connect dan membuat indeks, Anda dapat mulai menjalankan kueri.
Untuk membuat kueri indeks Anda, lihat Indeks kueri guna mendapatkan nearest neighbor.
Langkah selanjutnya
- Mempelajari cara Mengupdate dan membuat kembali indeks
- Mempelajari cara Memantau endpoint indeks