Merutekan traffic Gemini Enterprise melalui Agent Gateway

Halaman ini menjelaskan cara merutekan traffic Gemini Enterprise melalui Agent Gateway. Agent Gateway adalah komponen jaringan dan keamanan pusat dari ekosistem Gemini Enterprise Agent Platform. Agent Gateway menyediakan konektivitas yang aman dan diatur untuk semua interaksi agen, baik yang terjadi antara pengguna dan agen, agen dan alat, atau di antara agen itu sendiri.

Sebelum memulai

  • Pastikan Anda memahami konsep Gemini Enterprise.
  • Pelajari tentang Agent Gateway. Perhatikan bahwa Agent Gateway hanya mendukung Gemini Enterprise dalam mode Agent-to-Anywhere (egress). Traffic masuk tidak didukung.
  • Men-deploy aplikasi Gemini Enterprise (juga disebut sebagai mesin). Prosedur di halaman ini mengasumsikan bahwa Anda sudah men-deploy aplikasi. Untuk mengetahui detailnya, lihat Membuat aplikasi.

Merencanakan pemetaan lokasi dan Registry Agen Anda

Sebelum men-deploy Gateway Agen, pilih region tempat Anda men-deploy gateway dan Registry Agen tempat Anda mendaftarkan resource. Perhatikan persyaratan berikut:

  • Pemetaan lokasi: Deploy Agent Gateway di region tertentu yang sesuai dengan lokasi aplikasi Gemini Enterprise Anda untuk memastikan pemilihan rute yang tepat.

  • Pemetaan registry: Kaitkan Agent Gateway Anda dengan instance Agent Registry regional dalam project dan region yang sama dengan gateway. Lihat Merencanakan deployment Gateway Agen Anda untuk mendapatkan panduan selengkapnya tentang pola deployment.

Tabel: Lokasi aplikasi Gemini Enterprise dan pemetaan Agent Registry
Lokasi aplikasi Gemini Enterprise Region Agent Gateway yang diperlukan Instance Agent Registry yang diperlukan untuk Agent Gateway
global us-central1 us-central1 (//agentregistry.googleapis.com/projects/PROJECT_ID/locations/us-central1)
us us-central1 us-central1 (//agentregistry.googleapis.com/projects/PROJECT_ID/locations/us-central1)
eu europe-west1 europe-west1 (//agentregistry.googleapis.com/projects/PROJECT_ID/locations/europe-west1)

Merutekan traffic Gemini Enterprise melalui Agent Gateway

Untuk merutekan traffic Gemini Enterprise melalui Agent Gateway, lakukan langkah-langkah berikut:

  1. Buat resource Agent Gateway dan pastikan Anda mematuhi region dan registry yang Anda pilih di bagian sebelumnya. Untuk mengetahui petunjuknya, lihat Menyiapkan Gateway Agen.

    Verifikasi konfigurasi gateway Anda. Gunakan Network Services API untuk mengambil konfigurasi Agent Gateway Anda dan memeriksa setelannya.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://networkservices.googleapis.com/v1/projects/PROJECT_ID/locations/AGENT_GATEWAY_REGION/agentGateways/AGENT_GATEWAY_NAME"
    

    Berikut adalah contoh output untuk gateway yang dikonfigurasi dengan benar:

    {
      "name": "projects/my-ge-project/locations/us-central1/agentGateways/my-egress-gateway",
      "description": "A full configuration for Agent Gateway for Gemini Enterprise egress",
      "googleManaged": {
        "governedAccessPath": "AGENT_TO_ANYWHERE"
      },
      "protocols": [
        "MCP"
      ],
      "registries": [
        "//agentregistry.googleapis.com/projects/my-ge-project/locations/us-central1"
      ]
    }
    
  2. Ikat gateway ke aplikasi Gemini Enterprise Anda menggunakan API UpdateEngine. Perhatikan bahwa menyelesaikan langkah ini akan langsung mengarahkan semua traffic agen yang ada melalui Agent Gateway yang ditentukan.

    Konsol

    1. Di konsol Google Cloud , buka halaman Gemini Enterprise.

      Gemini Enterprise

    2. Klik nama aplikasi yang ingin Anda kaitkan dengan Gateway Agen.

    3. Klik Keamanan.

    4. Di tab Configuration, di bagian Agent Gateway configuration, masukkan nama resource lengkap untuk gateway. Gunakan format: projects/PROJECT_ID/locations/LOCATION/agentGateways/AGENT_GATEWAY_NAME.

    5. Klik Simpan.

    REST

    1. Gunakan permintaan berikut untuk mengupdate aplikasi Anda.

      curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -H "X-Goog-User-Project: PROJECT_ID" \
      -d '{
        "agentGatewaySetting": {
          "defaultEgressAgentGateway": {
            "name": "projects/PROJECT_ID/locations/AGENT_GATEWAY_REGION/agentGateways/AGENT_GATEWAY_NAME"
          }
        }
      }' \
      "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/GE_APP_LOCATION/collections/default_collection/engines/GE_APP_ID?updateMask=agentGatewaySetting.defaultEgressAgentGateway.name"

      Ganti kode berikut:

      • PROJECT_ID: project ID.
      • AGENT_GATEWAY_REGION: region Gateway Agen.
      • AGENT_GATEWAY_NAME: nama Agent Gateway.
      • ENDPOINT_LOCATION: awalan multi-region untuk endpoint API yang cocok dengan GE_APP_LOCATION. Tentukan global, us, atau eu. Misalnya, aplikasi eu menggunakan eu-discoveryengine.googleapis.com. Untuk aplikasi global, discoveryengine.googleapis.com tanpa awalan juga didukung.
      • PROJECT_NUMBER: nomor project.
      • GE_APP_LOCATION: lokasi aplikasi Gemini Enterprise. Tentukan global, us, atau eu.
      • GE_APP_ID: ID aplikasi Gemini Enterprise.
    2. Untuk memverifikasi konfigurasi aplikasi, gunakan perintah berikut untuk mengambil konfigurasi Anda dan memeriksa setelannya:

      curl -s -X GET \
      -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "X-Goog-User-Project: PROJECT_ID" \
      -H "Content-Type: application/json" \
      "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/GE_APP_LOCATION/collections/default_collection/engines/GE_APP_ID" \
      | jq '{name: .name, displayName: .displayName, agentGatewaySetting: .agentGatewaySetting}'
      

      Ganti kode berikut:

      • PROJECT_ID: project ID.
      • ENDPOINT_LOCATION: awalan multi-region untuk endpoint API yang cocok dengan GE_APP_LOCATION. Tentukan global, us, atau eu.
      • PROJECT_NUMBER: nomor project.
      • GE_APP_LOCATION: lokasi aplikasi Gemini Enterprise. Tentukan global, us, atau eu.
      • GE_APP_ID: ID aplikasi Gemini Enterprise.

      Berikut adalah contoh output untuk aplikasi yang dikonfigurasi dengan benar:

      {
      "name": "projects/PROJECT_NUMBER/locations/GE_APP_LOCATION/collections/default_collection/engines/GE_APP_ID",
      "displayName": "GE_APP_ID",
      "agentGatewaySetting": {
        "defaultEgressAgentGateway": {
          "name": "projects/PROJECT_ID/locations/AGENT_GATEWAY_REGION/agentGateways/AGENT_GATEWAY_NAME"
        }
      }
      }
      
  3. Meskipun tata kelola egress kini diaktifkan untuk aplikasi Gemini Enterprise Anda, aplikasi Anda tidak otomatis mengetahui resource eksternal mana di Agent Registry yang dapat berinteraksi dengannya.

    Anda harus mengimpor agen, endpoint, dan server MCP yang dipilih secara eksplisit ke aplikasi Gemini Enterprise Anda. Resource yang diimpor harus direferensikan menggunakan nama resource berbasis registry yang tepat. Untuk mengetahui petunjuknya, lihat panduan berikut:

  4. Untuk memastikan egress berfungsi dengan benar, lakukan langkah-langkah berikut:

    1. Buka aplikasi web Gemini Enterprise.
    2. Kirimkan kueri yang dirancang untuk memicu alat eksternal (misalnya, "Beri saya daftar masalah terbaru dari GitHub").
    3. Pantau eksekusi untuk memastikan respons berhasil diambil. Di balik layar, agen Gemini Enterprise mengemas permintaan, merutekannya melalui Agent Gateway Anda (yang menerapkan kebijakan otorisasi yang dikonfigurasi), dan mengambil respons dari tujuan.

Membatasi binding Gemini Enterprise ke Agent Gateway yang disetujui

Anda dapat membuat batasan kebijakan organisasi kustom untuk membatasi apakah aplikasi Gemini Enterprise dapat mengikat ke salah satu atau semua Agent Gateway.

Membuat batasan kebijakan organisasi kustom

Contoh ini membuat batasan kustom yang memblokir semua binding antara aplikasi Gemini Enterprise dan Gateway Agen.

Agent-to-Anywhere

  1. Untuk menentukan batasan kustom untuk mode Agent-to-Anywhere (egress), buat file bernama constraint-agent-gateway-egress.yaml.

    Contoh berikut menunjukkan cara menerapkan isolasi jaringan yang ketat dengan tidak mengizinkan binding apa pun. Kolom condition menentukan bahwa operasi ditolak jika resource Agent Gateway ditentukan (kolom ada dan tidak kosong).

    name: organizations/ORGANIZATION_ID/customConstraints/custom.disallowGeminiEnterpriseAgentGatewayBinding
    resource_types:

    • discoveryengine.googleapis.com/Engine condition: >- has(resource.agentGatewaySetting.defaultEgressAgentGateway.name) && resource.agentGatewaySetting.defaultEgressAgentGateway.name != '' actionType: DENY displayName: "Disallow all Agent Gateway Bindings for Discovery Engines" description: "To enforce strict network isolation, Discovery Engines are not permitted to bind to any Agent Gateway."
  2. Ganti kode berikut:

    • ORGANIZATION_ID: ID organisasi Anda.
    • PROJECT_ID: project ID Anda.
    • REGION: region tempat gateway dibuat.
    • AGENT_GATEWAY_NAME: nama gateway Anda.
  3. Terapkan batasan kustom.

    gcloud org-policies set-custom-constraint EGRESS_CONSTRAINT_PATH
    

    Ganti EGRESS_CONSTRAINT_PATH dengan jalur lengkap ke file batasan kustom yang dibuat di langkah sebelumnya.

  4. Buat kebijakan organisasi untuk menerapkan batasan. Untuk menentukan kebijakan organisasi, buat file YAML kebijakan bernama policy-agent-gateway-egress.yaml. Dalam contoh ini, kami menerapkan batasan ini di level project, tetapi Anda juga dapat menetapkannya di level organisasi atau folder.

    name: projects/PROJECT_ID/policies/custom.disallowGeminiEnterpriseAgentGatewayBinding
    spec:
    rules:

    • enforce: true
  5. Ganti PROJECT_ID dengan project ID Anda.

  6. Terapkan kebijakan organisasi.

    gcloud org-policies set-policy EGRESS_POLICY_PATH
    

    Ganti EGRESS_POLICY_PATH dengan jalur lengkap ke file YAML kebijakan organisasi yang dibuat di langkah sebelumnya. Kebijakan ini memerlukan waktu hingga 15 menit untuk diterapkan.

Untuk mengetahui informasi selengkapnya tentang cara menggunakan batasan kebijakan organisasi kustom, lihat Membuat batasan kustom.

Langkah berikutnya

Codelab

Pelajari cara mengelola workload agentic dengan Agent Gateway di Gemini Enterprise Agent Platform.

Panduan

Pelajari cara mendelegasikan otorisasi untuk Agent Gateway ke IAP, Model Armor, atau layanan otorisasi kustom Anda sendiri.

Panduan

Pelajari cara memantau Agent Gateway.

Pemecahan masalah

Pelajari cara memecahkan masalah konektivitas Agent Gateway.