Questo documento ti guida nel processo di configurazione della connettività VPC durante il deployment di un Agent Gateway in modo che possa comunicare privatamente con una rete VPC nella tua organizzazione.
La configurazione della connettività VPC ti consente di:
- Forza il traffico in uscita VPC: instrada il traffico proveniente dai tuoi agenti tramite il collegamento di rete Private Service Connect alla tua rete VPC utilizzando la modalità
PRIVATE_RANGES_ONLYoALL_TRAFFIC. - Intervallo di indirizzi IP di origine statico: il traffico in uscita utilizza l'intervallo di indirizzi IP privati della subnet del collegamento di rete Private Service Connect come indirizzo IP di origine. Questo intervallo IP di origine statico ti consente di configurare le policy del firewall per la tua rete VPC in modo da gestire il traffico proveniente dal gateway.
- Risoluzione DNS personalizzata: risolvi i nomi di dominio privati interni e i nomi di dominio esterni direttamente dai tuoi agenti utilizzando il peering DNS di Cloud DNS.
- Sicurezza del perimetro: proteggi le comunicazioni degli agenti utilizzando i perimetri di servizio dei Controlli di servizio VPC.
- Convalida dei certificati privati o autofirmati: connettiti alle destinazioni che utilizzano CA private o certificati autofirmati.
Per configurare la connettività VPC, devi creare un modello di connettività di Agent Gateway (AgentConnectivityTemplate) in cui definisci e gestisci le impostazioni di rete in uscita per le tue istanze di Agent Gateway.
Come funziona la connettività VPC
Quando esegui il deployment di un Agent Gateway con un modello di connettività, il gateway utilizza un'interfaccia Private Service Connect per instradare il traffico degli agenti in uscita verso la rete VPC designata.
Modalità traffico in uscita VPC
Puoi configurare il modo in cui il gateway instrada il traffico attraverso il collegamento di rete utilizzando l'impostazione vpcEgress nel modello di connettività.
Traffico verso intervalli di indirizzi IP privati (
PRIVATE_RANGES_ONLY): instrada il traffico destinato solo a intervalli di indirizzi IP privati nella tua rete VPC. Il traffico in uscita viene instradato alla rete VPC solo se l'indirizzo IP di destinazione rientra in uno dei seguenti intervalli:- RFC 1918:
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16 - RFC 6598:
100.64.0.0/10 - Classe E:
240.0.0.0/4 private.googleapis.com:199.36.153.8/30restricted.googleapis.com:199.36.153.4/30- Endpoint PSC per le API di Google: se esegui il deployment di un endpoint Private Service Connect personalizzato per le API di Google utilizzando un indirizzo IP privato interno nella tua rete VPC, il traffico verso questo endpoint viene instradato attraverso la tua rete VPC. Assicurati che il peering DNS di Cloud DNS sia configurato nel template di connettività in modo che Agent Gateway risolva correttamente i domini delle API di Google nell'indirizzo IP dell'endpoint PSC interno.
Le richieste alle API di Google pubbliche standard vengono gestite automaticamente utilizzando l'accesso privato Google e il traffico verso internet viene instradato direttamente tramite Agent Gateway anziché tramite la tua rete VPC.
- RFC 1918:
Traffico verso tutti gli intervalli di indirizzi IP (
ALL_TRAFFIC): instrada tutto il traffico in uscita proveniente dai tuoi agenti attraverso la tua rete VPC, inclusi internet pubblico, API SaaS esterne e indirizzi non RFC 1918.- Routing e sicurezza: poiché questa impostazione instrada tutto il traffico in uscita nel VPC, sei responsabile della gestione del routing e della sicurezza. Assicurati che la tua rete VPC abbia una route predefinita (
0.0.0.0/0) per inoltrare questo traffico ai gateway in uscita o alle appliance di sicurezza (come i firewall di hop successivo o le interfacce Cloud Interconnect). - Traffico in uscita verso internet pubblico: l'Agent Gateway invia il traffico in uscita alla tua rete VPC, da cui esce verso internet pubblico tramite un gateway Cloud NAT sulla subnet del collegamento di rete Private Service Connect. Se assegni indirizzi IP esterni statici al gateway Cloud NAT, i servizi remoti possono inserire nella lista consentita il traffico in uscita degli agenti in base a questi indirizzi IP di origine.
- Controlli di servizio VPC: la modalità in uscita deve essere impostata su
ALL_TRAFFICper supportare i perimetri di servizio dei Controlli di servizio VPC.
- Routing e sicurezza: poiché questa impostazione instrada tutto il traffico in uscita nel VPC, sei responsabile della gestione del routing e della sicurezza. Assicurati che la tua rete VPC abbia una route predefinita (
Risoluzione DNS e routing del traffico
Per impostazione predefinita, Agent Gateway risolve i nomi di dominio utilizzando il DNS ricorsivo pubblico. Se i tuoi agenti devono accedere a workload interni, strumenti privati o API di Google ospitate su nomi di dominio privati nella tua rete VPC (come corp.internal. o endpoint PSC), puoi configurare il peering Cloud DNS per inoltrare le query DNS alle zone gestite di Cloud DNS private della tua rete.
La tabella seguente riassume i requisiti di peering Cloud DNS e il comportamento di routing del traffico per diverse destinazioni quando la connettività VPC è configurata in modalità ALL_TRAFFIC:
| Destinazione traffico | È richiesto il peering Cloud DNS? | Risoluzione DNS | Percorso in uscita |
|---|---|---|---|
| Servizi con IP privato (RFC 1918 / interno) |
Sì (ad esempio corp.internal.) |
Risolve utilizzando il peering Cloud DNS con la zona gestita Cloud DNS privata della rete VPC di destinazione. | Il traffico entra nella rete VPC tramite il collegamento di rete per connettersi ai workload interni. |
| Nomi host pubblici con IP privati (DNS split horizon) |
No | Risolve utilizzando il DNS ricorsivo pubblico standard nel proxy gateway senza richiedere il peering DNS di Cloud DNS. | Il traffico entra nella rete VPC tramite il collegamento di rete per connettersi ai workload interni. |
| Internet pubblico e API SaaS (domini esterni) |
No | Risolve utilizzando il DNS ricorsivo pubblico standard nel proxy gateway senza richiedere il peering DNS di Cloud DNS. | Il traffico entra nella rete VPC tramite il collegamento di rete ed esce verso la rete internet pubblica utilizzando Cloud NAT configurato sulla subnet. |
| APIGoogle Cloud (standard, senza Controlli di servizio VPC) |
No | Risolve utilizzando il DNS ricorsivo pubblico standard nel proxy gateway senza richiedere il peering DNS di Cloud DNS. | Il traffico entra nella rete VPC tramite il collegamento di rete e viene instradato privatamente utilizzando l'accesso privato Google abilitato sulla subnet, senza utilizzare Cloud NAT o il peering DNS. |
| APIGoogle Cloud (con i Controlli di servizio VPC) |
Sì (per googleapis.com.) |
Risolve nell'intervallo di API di Google limitato (199.36.153.4/30) o negli endpoint Private Service Connect interni utilizzando una zona Cloud DNS privata. |
Il traffico entra nella rete VPC tramite il collegamento di rete per applicare le regole di sicurezza del perimetro dei Controlli di servizio VPC1. |
1 Se le richieste non vanno a buon fine con violazioni dei Controlli di servizio VPC come NETWORK_NOT_IN_SAME_SERVICE_PERIMETER o SECURITY_POLICY_VIOLATED su compute.googleapis.com o dns.googleapis.com che fanno riferimento al progetto host, verifica che il progetto host si trovi nello stesso perimetro del progetto gateway.
Requisiti per i certificati TLS
Quando esegue il routing del traffico in uscita tramite HTTPS, Agent Gateway convalida la catena di certificati TLS del server di destinazione durante il TLS handshake. I requisiti dei certificati per le connessioni HTTPS dipendono dal fatto che gli endpoint di destinazione utilizzino autorità di certificazione (CA) attendibili pubblicamente o CA private/autofirmate.
CA pubbliche: per impostazione predefinita, Agent Gateway considera attendibili i certificati emessi da autorità di certificazione (CA) attendibili pubblicamente che soddisfano i requisiti standard dei certificati server (incluso un nome alternativo del soggetto (SAN) corrispondente al nome host di destinazione).
CA private e certificati autofirmati: se la destinazione target (agenti, strumenti o server MCP nella tua rete VPC) utilizza una CA privata o una PKI interna, puoi configurare trust anchor personalizzati utilizzando l'impostazione
tlsConfignel template di connettività.Facendo riferimento a una risorsa Certificate Manager
TrustConfig, puoi configurare Agent Gateway in modo che consideri attendibili solo CA private specifiche o combinare CA root private con CA attendibili pubblicamente (PUBLICLY_TRUSTED_ROOTS). In questo modo, viene stabilita l'attendibilità sia per gli endpoint pubblici sia per quelli privati.Se i tuoi agenti si connettono alle API Google Cloud (
*.googleapis.com) o ad altri endpoint HTTPS pubblici, devi impostareadditionalRootssuPUBLICLY_TRUSTED_ROOTS. Senza questa impostazione, Agent Gateway non considera attendibili i certificati firmati da Google pergoogleapis.com.Tieni presente le seguenti limitazioni quando utilizzi
tlsConfig:- Quando utilizzi
trustConfigper instradare il traffico verso destinazioni che utilizzano CA private, devi ruotare i file PEM manualmente. La rotazione automatica dei file PEM tramite gestori di secret, come Secret Manager diGoogle Cloud, non è supportata. - Il campo
trustConfigè immutabile una volta configurato in un template di connettività e Agent Gateway non rileva automaticamente le modifiche apportate atlsConfig(ad esempio l'aggiornamento diadditionalRoots) in un template di connettività collegato. Per istruzioni sull'aggiornamento delle impostazioni TLS, consulta Aggiornamento delle impostazioni VPC in uscita.
- Quando utilizzi
Se Agent Gateway non riesce a convalidare la catena di certificati, la connessione non va a buon fine.
Ruoli e autorizzazioni richiesti
Per configurare la connettività VPC per Agent Gateway, assicurati che l'identità utilizzata per il provisioning e l'agente di servizio del gateway dispongano dei ruoli richiesti.
Deployment di progetti autonomi
In un progetto autonomo in cui il gateway, il collegamento di rete e la rete VPC risiedono nello stesso progetto, si applicano le autorizzazioni standard di Agent Gateway. Per maggiori dettagli, consulta Autorizzazioni richieste.
Deployment VPC condiviso o tra progetti
In un deployment VPC condiviso, puoi eseguire il provisioning dell'Agent Gateway in un progetto di servizio o nel progetto host. Se esegui il provisioning del gateway nel progetto host (dove si trovano anche la rete VPC condiviso, la subnet e il collegamento di rete), si applicano le autorizzazioni del progetto autonomo.
Se esegui il provisioning di Agent Gateway in un progetto di servizio mentre la rete VPC di destinazione, il collegamento di rete o le zone DNS private si trovano nel progetto host (TARGET_VPC_PROJECT_ID), le identità nel progetto di servizio non dispongono automaticamente delle autorizzazioni per convalidare, collegare o eseguire il peering con le risorse di networking e DNS nel progetto host. Concedi i seguenti ruoli nel progetto host oltre alle autorizzazioni standard di Agent Gateway:
| Entità o identità | Concedi sul progetto | Ruolo IAM richiesto | Finalità |
|---|---|---|---|
| Identità di provisioning1 (Account utente o account di servizio di deployment) |
Progetto host (TARGET_VPC_PROJECT_ID) |
|
Consente la convalida del backend della rete VPC di destinazione, delle subnet, del collegamento di rete e delle zone DNS private durante la creazione o l'aggiornamento del gateway. |
| Creatore di collegamento di rete (Amministratore che crea il collegamento PSC) |
Progetto host (TARGET_VPC_PROJECT_ID) |
|
Consente di utilizzare una subnet VPC condiviso nel progetto host per creare un collegamento di rete Private Service Connect. |
| Collegamento di rete nel progetto di servizio (consigliato) | |||
| Agent Gateway Service Agent2 | Progetto host (TARGET_VPC_PROJECT_ID) |
|
Consente all'agente di servizio Agent Gateway di utilizzare la subnet del progetto host per il collegamento di rete, di connettere l'interfaccia Private Service Connect per instradare il traffico in uscita e di eseguire il peering con le zone Cloud DNS private nel progetto host. |
| Collegamento di rete nel progetto host | |||
| Agent Gateway Service Agent2 | Progetto host (TARGET_VPC_PROJECT_ID) |
|
Consente all'agente di servizio Agent Gateway di aggiornare il collegamento di rete del progetto host per consentire la connessione dal progetto tenant Agent Gateway, instradare il traffico in uscita ed eseguire il peering con le zone Cloud DNS private nel progetto host. |
1 Per l'identità di provisioning, sono sufficienti anche i ruoli di base a livello di progetto, come Visualizzatore (roles/viewer) o Editor (roles/editor) nel progetto host.
2 L'agente di servizio Agent Gateway è formattato come:
service-AGENT_GATEWAY_PROJECT_NUMBER@gcp-sa-agentgateway.iam.gserviceaccount.com, dove
AGENT_GATEWAY_PROJECT_NUMBER è il numero
del progetto in cui esegui il provisioning di Agent Gateway. Per i deployment di VPC condiviso, questo progetto può essere un progetto di servizio o il progetto host.
Se colleghi più progetti di servizio Agent Runtime a un progetto host Agent Gateway, devi anche concedere l'accesso tra progetti nel progetto gateway a ogni agente di servizio Agent Runtime. Per i deployment su larga scala, consulta Scala i progetti di servizio Agent Runtime con un gruppo Google.
Configura la connettività VPC
Per eseguire il deployment di un Agent Gateway con un template di connettività, completa i passaggi descritti nelle sezioni seguenti.
Crea un collegamento di rete Private Service Connect
Crea un collegamento di rete Private Service Connect nella rete VPC di destinazione.
Assicurati che il collegamento di rete soddisfi i seguenti requisiti:
- Preferenza di connessione: configura il collegamento di rete in modo da
accettare automaticamente le connessioni
(
--connection-preference=ACCEPT_AUTOMATIC). - Requisito della stessa rete VPC: la subnet del collegamento di rete e la rete di destinazione configurata per il peering DNS (
targetNetwork) devono trovarsi esattamente nella stessa rete VPC. Se la subnet del collegamento di rete appartiene a una rete diversa da quella di destinazione del peering DNS, la convalida della configurazione non va a buon fine. - Requisiti delle subnet: tieni presente i seguenti requisiti per la subnet del collegamento di rete:
- Intervallo di subnet: la subnet del collegamento di rete supporta tutti gli intervalli validi.
- Dimensioni della subnet: Agent Gateway richiede una subnet minima
/28per il collegamento di rete. Una subnet/28fornisce 12 indirizzi IP utilizzabili, sufficienti per una singola istanza di Agent Gateway. Se prevedi di connettere più gateway allo stesso collegamento di rete o alla stessa subnet, utilizza una subnet più grande (ad esempio/26o/24) per evitare l'esaurimento degli indirizzi IP. - Requisito per l'accesso privato Google: devi abilitare l'accesso privato Google (
private_ip_google_access = true) sulla subnet che ospita il collegamento di rete.
- Deployment VPC condiviso: per i deployment VPC condiviso, consulta Topologie di deployment VPC condiviso.
Prendi nota dell'URI completo della risorsa del collegamento di rete (ad esempio, projects/NETWORK_ATTACHMENT_PROJECT_NUMBER/regions/NETWORK_ATTACHMENT_REGION/networkAttachments/NETWORK_ATTACHMENT_NAME). Ti servirà quando creerai la risorsa del template di connettività in un passaggio successivo.
(Facoltativo) Configura il peering DNS
Il peering DNS consente ad Agent Gateway di risolvere i nomi DNS utilizzando i record di una zona Cloud DNS privata gestita nella tua rete VPC.
Il peering DNS è richiesto solo quando gli agenti devono risolvere nomi di dominio interni privati (come corp.internal.) o applicare i Controlli di servizio VPC per le API di Google (googleapis.com.). Non è richiesto per i domini internet pubblici o per le API di Google standard senza Controlli di servizio VPC.
Agent Gateway supporta il peering DNS transitivo solo fino a un singolo hop transitivo, il che significa un massimo di tre reti VPC. Ad esempio, vpc-net-a (la rete tenant di Agent Gateway) può eseguire il peering con vpc-net-b (rete collegata), che a sua volta esegue il peering con vpc-net-c (rete remota) per risolvere le query DNS nella catena.
Per configurare il peering DNS, segui questi passaggi:
Configura la zona DNS privata nella rete VPC di destinazione. Per aggiungere record DNS alla tua zona DNS privata, consulta Aggiungi un set di record di risorse.
Raccogli le seguenti informazioni per configurare il template di connettività per abilitare il peering:
URI della rete di destinazione (
targetNetwork): prendi nota dell'URI completo della risorsa della rete VPC di destinazione nel seguente formato:projects/TARGET_VPC_PROJECT_ID/global/networks/TARGET_VPC_NETWORK_NAME. La rete di destinazione è sempre la rete VPC che contiene la subnet a cui fa riferimento il collegamento di rete. Se la rete di destinazione è una rete VPC condivisa, assicurati di utilizzare l'ID progetto host del VPC condiviso corrispondente.Nomi di dominio: uno o più suffissi di dominio per il peering DNS. Ogni dominio deve terminare con un punto finale (
.) (ad esempio,corp.internal.ogoogleapis.com.).Per ulteriori indicazioni su come configurare il campo
domains, consulta Pattern di dominio di peering DNS. Per i deployment tra progetti, come il VPC condiviso, consulta Requisiti per le zone DNS e il peering tra progetti.
(Facoltativo) Configura la configurazione di attendibilità TLS
Se la destinazione di destinazione utilizza una CA privata o un certificato autofirmato, devi creare una risorsa TrustConfig in Certificate Manager.
La risorsa TrustConfig definisce i trust anchor e i certificati che Agent Gateway utilizza per convalidare le connessioni TLS.
Prepara i file dei certificati in formato PEM:
- Archivio di attendibilità: certificati CA radice o intermedi in formato PEM. Agent Gateway considera attendibile qualsiasi certificato del server la cui catena di attendibilità rimanda a uno di questi certificati CA. L'archivio di attendibilità deve contenere almeno un certificato CA radice o intermedio.
- Certificati inclusi nella lista consentita (facoltativo): certificati server in formato PEM che vuoi considerare esplicitamente attendibili, ad esempio un certificato autofirmato.
Esegui il comando seguente per creare la risorsa
TrustConfig.TrustConfigdeve essere creato nello stesso progetto e nella stessa regione dell'Agent Gateway e del template di connettività.gcloud certificate-manager trust-configs create TRUST_CONFIG_NAME \ --location=LOCATION \ --trust-store="trust-anchors=ROOT_CERT_FILE" \ --allowlisted-certificates=ALLOWLISTED_CERT_FILESostituisci quanto segue:
TRUST_CONFIG_NAME: un nome per la risorsaTrustConfig.LOCATION: la regione per la configurazione di attendibilità (ad esempioeurope-west1). Deve essere la stessa regione dell'Agent Gateway e del template di connettività.ROOT_CERT_FILE: il percorso del certificato CA radice o intermedio con codifica PEM.ALLOWLISTED_CERT_FILE: (facoltativo) il percorso di un certificato con codifica PEM che vuoi considerare attendibile in modo esplicito. Se non utilizzi certificati inclusi nella lista consentita, ometti questo flag.
Per ulteriori informazioni sulla gestione delle configurazioni di attendibilità, consulta Crea e gestisci le configurazioni di attendibilità.
Esegui il deployment di Agent Gateway
Crea il file di configurazione del template di connettività:
Crea un file YAML denominato
agw-connectivity-template.yaml:name: projects/AGENT_GATEWAY_PROJECT_NUMBER/locations/LOCATION/agentConnectivityTemplates/CONNECTIVITY_TEMPLATE_NAME accessPath: AGENT_TO_ANYWHERE deploymentModel: CENTRALIZED egressNetworkConfig: networkAttachment: projects/NETWORK_ATTACHMENT_PROJECT_NUMBER/regions/NETWORK_ATTACHMENT_REGION/networkAttachments/NETWORK_ATTACHMENT_NAME dnsPeeringConfig: domains: - DOMAIN_NAME targetNetwork: projects/TARGET_VPC_PROJECT_ID/global/networks/TARGET_VPC_NETWORK_NAME vpcEgress: VPC_EGRESS_MODE tlsConfig: trustConfig: projects/AGENT_GATEWAY_PROJECT_NUMBER/locations/LOCATION/trustConfigs/TRUST_CONFIG_NAME additionalRoots: ADDITIONAL_ROOTS_OPTIONSostituisci quanto segue:
AGENT_GATEWAY_PROJECT_NUMBER: il numero di progetto del progetto Google Cloud in cui esegui il provisioning dell'Agent Gateway. Per recuperare il numero del progetto, esegui:gcloud projects describe PROJECT_ID --format="value(projectNumber)".LOCATION: la regione del template di connettività (ad esempioeurope-west1).CONNECTIVITY_TEMPLATE_NAME: il nome della risorsa del template di connettività.accessPath: Il percorso di accesso governato per il modello di connettività. Imposta suAGENT_TO_ANYWHERE(i template di connettività sono supportati solo per i gateway in uscita).deploymentModel: il modello di deployment del gateway. Impostalo suCENTRALIZED.networkAttachment: l'URI completo della risorsa del collegamento di rete Private Service Connect:NETWORK_ATTACHMENT_PROJECT_NUMBER: il numero del progetto in cui hai creato il collegamento di rete. Questo progetto potrebbe essere lo stesso del progetto Agent Gateway o un progetto diverso se esegui il provisioning di Agent Gateway in un progetto di servizio VPC condiviso e crei il collegamento di rete nel progetto host del VPC condiviso.NETWORK_ATTACHMENT_REGION: la regione che contiene il collegamento di rete.NETWORK_ATTACHMENT_NAME: il nome del collegamento di rete.
DOMAIN_NAME: (facoltativo) uno o più suffissi di dominio per il peering DNS (ad esempiocorp.internal.,googleapis.com.o.). Aggiungi una voce dell'elenco indomainsper ogni suffisso di dominio per cui vuoi eseguire il peering. Ogni valore deve terminare con un punto (.) e avere una zona gestita Cloud DNS privata corrispondente autorizzata per la rete di destinazione.Per ulteriori indicazioni su come configurare il campo
domains, consulta Pattern di dominio di peering DNS.targetNetwork: (facoltativo) l'URI completo della risorsa della rete VPC di destinazione per il peering DNS. La rete di destinazione è sempre la rete VPC che contiene la subnet a cui fa riferimento il collegamento di rete:TARGET_VPC_PROJECT_ID: l'ID progetto del progetto proprietario della rete VPC di destinazione. Se la rete che contiene la subnet a cui fa riferimento il collegamento di rete è una rete VPC condivisa,TARGET_VPC_PROJECT_IDè l'ID progetto host del VPC condiviso. Specifica sempretargetNetworkutilizzando l'ID progetto anziché il numero di progetto.TARGET_VPC_NETWORK_NAME: il nome della rete VPC di destinazione.
VPC_EGRESS_MODE: imposta la modalità di routing in uscita. Imposta suPRIVATE_RANGES_ONLYoALL_TRAFFIC.tlsConfig: (facoltativo) la configurazione TLS per la convalida del certificato del server durante la connessione agli endpoint privati tramite HTTPS:TRUST_CONFIG_NAME: Il nome della risorsa Certificate ManagerTrustConfigcontenente i certificati CA privati o i trust anchor.ADDITIONAL_ROOTS_OPTION: specifica se considerare attendibili le radici delle CA attendibili pubblicamente oltre alla configurazione di attendibilità personalizzata:- Imposta su
PUBLICLY_TRUSTED_ROOTS(predefinito) per considerare attendibili sia i certificati convalidati dal parametrotrustConfigsia tutte le CA pubblicamente attendibili. Devi impostareadditionalRootssuPUBLICLY_TRUSTED_ROOTSse i tuoi agenti si connettono anche alle APIGoogle Cloud (*.googleapis.com) o ad altri endpoint HTTPS pubblici; senza questa impostazione, Agent Gateway non considererà attendibili i certificati firmati da Google pergoogleapis.com. - Imposta su
NO_ADDITIONAL_ROOTSper considerare attendibili solo i certificati convalidati dal parametrotrustConfig.
Crea il template di connettività:
Esegui questo comando per creare il template di connettività:
gcloud network-services agent-connectivity-templates import CONNECTIVITY_TEMPLATE_NAME \ --source="agw-connectivity-template.yaml" \ --location=LOCATIONSostituisci quanto segue:
CONNECTIVITY_TEMPLATE_NAME: il nome della risorsa del template di connettività.LOCATION: la località in cui vuoi creare la risorsa del template di connettività. Ad esempio,europe-west1.
Definisci la risorsa Agent Gateway:
Definisci una nuova risorsa Agent Gateway in modalità
AGENT_TO_ANYWHEREcreando un file di configurazione YAML del gateway (ad esempiomy-agent-gateway-vpc-egress.yaml) che fa riferimento al template di connettività:name: AGENT_GATEWAY_NAME protocols: - MCP googleManaged: governedAccessPath: AGENT_TO_ANYWHERE agentConnectivityTemplate: projects/AGENT_GATEWAY_PROJECT_NUMBER/locations/LOCATION/agentConnectivityTemplates/CONNECTIVITY_TEMPLATE_NAME registries: - AGENT_REGISTRY_PATHSostituisci quanto segue:
AGENT_GATEWAY_NAME: il nome della risorsa Agent Gateway.AGENT_GATEWAY_PROJECT_NUMBER: il numero di progetto del progetto Google Cloud in cui esegui il provisioning di Agent Gateway e del template di connettività. Per i deployment VPC condiviso, questo progetto può essere un progetto di servizio o il progetto host. Per recuperare il numero del progetto, esegui:gcloud projects describe PROJECT_ID --format="value(projectNumber)".LOCATION: la località del template di connettività (ad esempioeurope-west1).CONNECTIVITY_TEMPLATE_NAME: il nome della risorsa del template di connettività.AGENT_REGISTRY_PATH: il percorso dell'istanza di Agent Registry regionale nello stesso progetto e nella stessa regione del gateway, formattato come//agentregistry.googleapis.com/projects/PROJECT_ID/locations/LOCATION. Per indicazioni, consulta Pianifica il deployment di Agent Gateway.
Importa ed esegui il deployment di Agent Gateway:
Esegui questo comando per creare la risorsa Agent Gateway in base alla specifica YAML:
gcloud network-services agent-gateways import AGENT_GATEWAY_NAME \ --source="my-agent-gateway-vpc-egress.yaml" \ --location=LOCATIONSostituisci
LOCATIONcon la località in cui vuoi creare la risorsa Agent Gateway. Ad esempio,europe-west1.
Considerazioni su architettura e networking
Questa sezione fornisce indicazioni sull'architettura e pattern di networking avanzati per il deployment di Agent Gateway con connettività VPC.
Aggiornamento delle impostazioni del traffico VPC in uscita
Un template di connettività non può essere modificato in loco mentre è referenziato da un Agent Gateway e l'Agent Gateway non rileva automaticamente le modifiche apportate a un template di connettività collegato:
Aggiornamento delle impostazioni di peering DNS, modalità di uscita VPC o TLS (
tlsConfig): in un template di connettività, il campotlsConfig.trustConfignon è modificabile una volta configurato e gli aggiornamenti in loco ditlsConfig(come l'aggiunta o la modifica diadditionalRoots) non vengono rilevati da un Agent Gateway collegato. Per aggiornare la configurazione del peering DNS, la modalità di traffico in uscita VPC o le impostazionitlsConfigsu un gateway esistente, crea un nuovo template di connettività che utilizzi lo stessonetworkAttachmentcon le impostazioni aggiornate e aggiorna l'Agent Gateway in modo che faccia riferimento al nuovo template (o scollega e ricollega il template di connettività).Modifica del collegamento di rete:
networkAttachmentstesso è immutabile una volta configurato sia sul template di connettività sia su Agent Gateway. Per passare a un altro collegamento di rete (o a una rete VPC di destinazione), devi creare un nuovo template di connettività e un nuovo Agent Gateway.
Topologie di deployment del VPC condiviso
In un'architettura VPC condiviso, puoi eseguire il provisioning di Agent Gateway in un progetto di servizio o nel progetto host. Quando esegui il provisioning di Agent Gateway in un progetto di servizio, puoi creare il collegamento di rete nel progetto di servizio (consigliato) o nel progetto host:
- Consigliato: collegamento di rete nel progetto di servizio:
- Crea la subnet nel progetto host.
- Crea il collegamento di rete nel progetto di servizio, facendo riferimento alla subnet del progetto host.
- Collegamento di rete nel progetto host:
- Crea la subnet nel progetto host.
- Crea il collegamento di rete nel progetto host.
Conformità ai Controlli di servizio VPC
Per applicare i perimetri dei Controlli di servizio VPC per le comunicazioni degli agenti, assicurati di quanto segue:
Imposta
vpcEgresssuALL_TRAFFICnel tuo template di connettività.Indirizza le richieste API di Google all'intervallo IP
restricted.googleapis.com(199.36.153.4/30) o a un endpoint Private Service Connect interno per le API di Google.Configura la risoluzione DNS per
googleapis.com. Crea una zona Cloud DNS privata nella rete VPC mappando*.googleapis.comarestricted.googleapis.come includigoogleapis.com.nel campodomainsdel template di connettività.Per maggiori dettagli sulla configurazione del DNS, consulta Configura il DNS per googleapis.com nella documentazione sull'accesso privato Google.
Per i deployment di VPC condiviso, il progetto host proprietario della subnet del collegamento di rete e l'
dnsPeeringConfig.targetNetworkdevono trovarsi nello stesso perimetro di servizio del progetto in cui esegui il deployment di Agent Gateway. Questo vale anche se crei il collegamento di rete nel progetto di servizio, perché la subnet e la rete VPC appartengono comunque al progetto host. Se le tue zone DNS private sono ospitate in un progetto DNS separato, includi anche questo progetto nel perimetro.
Pattern dei domini di peering DNS
Questa sezione descrive i pattern di risoluzione dei domini e le opzioni per configurare il campo domains in un template di connettività.
Configurazione del nome di dominio: configura il campo domains nel template di connettività in base alle seguenti considerazioni:
Domini interni privati: per risolvere i servizi interni privati ospitati nella tua rete VPC (ad esempio
service.corp.internal), specifica il suffisso del dominio interno (ad esempiocorp.internal.). Una zona Cloud DNS gestita privata con corrispondenza esatta per questo dominio deve essere autorizzata per la rete VPC di destinazione.DNS split-horizon (dominio pubblico con IP RFC 1918): se utilizzi una zona DNS pubblica per ospitare record che puntano a IP privati interni (ad esempio
mcp.example.comche si risolve in un indirizzo RFC 1918 per i certificati pubblici di Certificate Manager), il gateway risolve questi record automaticamente utilizzando il DNS ricorsivo pubblico senza richiedere il peering DNS.APIGoogle Cloud con Controlli di servizio VPC: quando
ALL_TRAFFICè configurato per applicare i Controlli di servizio VPC, le richieste API di Google devono essere risolte nell'intervallo IPrestricted.googleapis.com(199.36.153.4/30) o negli endpoint PSC interni. Crea una zona Cloud DNS privata nella rete VPC mappando*.googleapis.comarestricted.googleapis.come includigoogleapis.com.nel campodomainsdel modello di connettività.Pattern di risoluzione multidominio: se il tuo deployment richiede la risoluzione di più suffissi di dominio privato, scegli uno dei seguenti pattern:
- Esegui il peering di più domini singoli: specifica un elenco di suffissi di dominio nel campo
domainsdidnsPeeringConfig(ad esempio,corp.internal.,prod.internal.egoogleapis.com.). Ogni dominio nell'elenco deve terminare con un punto finale (.) e avere una zona Cloud DNS privata gestita corrispondente autorizzata per la rete VPC di destinazione. - Suffisso principale consolidato (consigliato): consolida i servizi interni in un suffisso di dominio principale condiviso (ad esempio
*.internal.o*.corp.internal.) e includi il dominio principale nell'elencodomains. Peering root catch-all con una zona di forwarding privato: includi
"."nel campodomainsdel template di connettività e configura una zona di forwarding privato Cloud DNS per il dominio principale (.) nella tua rete VPC che punta a un resolver ricorsivo upstream (come8.8.8.8o un resolver aziendale interno). Le zone private più specifiche nella tua rete VPC vengono abbinate per prime in base alla corrispondenza del suffisso più lungo, mentre le query pubbliche senza corrispondenza vengono risolte tramite l'agente di inoltro upstream.
- Esegui il peering di più domini singoli: specifica un elenco di suffissi di dominio nel campo
Requisiti per le zone DNS e il peering tra progetti
L'impostazione dnsPeeringConfig del template di connettività non supporta il peering Cloud DNS diretto tra progetti. Quando importi il template di connettività, la convalida non va a buon fine se la subnet a cui fa riferimento networkAttachment appartiene a una rete VPC diversa da targetNetwork o se utilizzi l'associazione di zone DNS tra progetti da un servizio o un progetto esterno.
La zona gestita per il dominio deve essere creata nel progetto host proprietario di targetNetwork. La zona gestita può essere uno dei seguenti tipi di zona:
- Zona privata autorevole
- Zona di forwarding
- Zona di peering Cloud DNS: deve essere associata alla rete VPC del progetto host e avere come target una rete VPC di destinazione. Il VPC di destinazione deve risolvere la query direttamente utilizzando una zona privata autoritativa. Il forwarding della query a un'altra zona di peering DNS (concatenamento) non è supportato e genera un errore
NXDOMAIN.
Scala i progetti di servizio Agent Runtime con un gruppo Google
Se colleghi più progetti di servizio Agent Runtime a un progetto host Agent Gateway e concedi l'accesso tra progetti a ogni agente di servizio singolarmente, devi aggiornare la policy IAM del progetto host ogni volta che aggiungi un progetto. In deployment su larga scala, potresti anche raggiungere i limiti delle policy IAM man mano che aggiungi associazioni di ruoli.
Per evitare di aggiornare la policy IAM del progetto host per ogni nuovo progetto di servizio, puoi gestire l'accesso tramite un unico gruppo di sicurezza Google:
Crea un gruppo di sicurezza: crea un gruppo di sicurezza nella Console di amministrazione Google o eseguendo il comando
gcloud identity groups create.Concedi al gruppo l'accesso al progetto host di Agent Gateway: associa il gruppo al ruolo Network Services Viewer (
roles/networkservices.viewer) suAGENT_GATEWAY_PROJECT_ID:gcloud projects add-iam-policy-binding AGENT_GATEWAY_PROJECT_ID \ --member="group:GROUP_EMAIL" \ --role="roles/networkservices.viewer"Sostituisci quanto segue:
AGENT_GATEWAY_PROJECT_ID: l'ID progetto del progetto host di Agent Gateway.GROUP_EMAIL: l'indirizzo email del tuo gruppo di sicurezza (ad esempioagw-cross-project-runtime@example.com).
Aggiungi l'agente di servizio Agent Runtime di ogni progetto di servizio al gruppo: per ogni progetto di servizio Agent Runtime, aggiungi il relativo agente di servizio al gruppo di sicurezza eseguendo il comando
gcloud identity groups memberships addcome segue:gcloud identity groups memberships add \ --group-email="GROUP_EMAIL" \ --member-email="service-AGENT_RUNTIME_PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com"Sostituisci
AGENT_RUNTIME_PROJECT_NUMBERcon il numero di progetto del progetto di servizio Agent Runtime.
Passaggi successivi
Instrada il traffico di Agent Runtime tramite Agent Gateway
Scopri come instradare il traffico di Agent Runtime tramite Agent Gateway per una connettività sicura e controllata.
Codelab: gestisci i workload degli agenti con Agent Platform
Scopri come gestire i workload degli agenti con Agent Gateway su Gemini Enterprise Agent Platform.
Codelab: traffico in uscita da Agent Gateway da Agent Runtime alle reti VPC
Scopri di più sulla governance del traffico in uscita di Agent Gateway per gli agenti AI che accedono alle destinazioni in una rete VPC.
Delega l'autorizzazione per Agent Gateway
Scopri come delegare l'autorizzazione per Agent Gateway a IAP, Model Armor o al tuo servizio di autorizzazione personalizzato.
Instrada il traffico di Gemini Enterprise tramite Agent Gateway
Scopri come instradare il traffico di Gemini Enterprise tramite Agent Gateway.