1. Introduzione
Un'interfaccia Private Service Connect è una risorsa che consente a una rete Virtual Private Cloud (VPC) producer di avviare connessioni a varie destinazioni in una rete VPC consumer. Le reti producer e consumer possono trovarsi in progetti e organizzazioni diversi.
Se un collegamento di rete accetta una connessione da un'interfaccia Private Service Connect, Google Cloud assegna all'interfaccia un indirizzo IP da una subnet consumer specificata dal collegamento di rete. Le reti consumer e producer sono connesse e possono comunicare utilizzando indirizzi IP interni.
Una connessione tra un collegamento di rete e un'interfaccia Private Service Connect è simile alla connessione tra un endpoint Private Service Connect e un collegamento al servizio, ma presenta due differenze fondamentali:
- Un collegamento di rete consente a una rete producer di avviare connessioni a una rete consumer (uscita del servizio gestito), mentre un endpoint consente a una rete consumer di avviare connessioni a una rete producer (ingresso del servizio gestito).
- Una connessione di interfaccia Private Service Connect è transitiva. Ciò significa che una rete producer può comunicare con altre reti connesse alla rete consumer.
Considerazioni sull'accessibilità dell'interfaccia PSC di Vertex AI
- L'interfaccia PSC è in grado di instradare il traffico verso destinazioni VPC o on-premise all'interno del blocco di indirizzi RFC1918.
- Il targeting dell'interfaccia PSC di blocchi di indirizzi non RFC-1918 richiede un proxy esplicito di cui è stato eseguito il deployment nel VPC del consumer con un indirizzo RFC-1918. All'interno del deployment di Vertex AI, il proxy deve essere definito insieme a un FQDN dell'endpoint di destinazione.
- Quando configuri il deployment con una sola interfaccia PSC, questa mantiene l'accesso a internet predefinito. Questo traffico in uscita esce direttamente dalla rete tenant sicura e gestita da Google.
Considerazioni su Vertex AI PSC-Interface VPC-SC
- Quando il tuo progetto fa parte di un perimetro dei Controlli di servizio VPC, l'accesso a internet predefinito dei tenant gestiti da Google viene bloccato dal perimetro per impedire l'esfiltrazione di dati.
- Per consentire l'accesso al deployment a internet pubblico in questo scenario, devi configurare esplicitamente un percorso di uscita sicuro che indirizzi il traffico tramite il VPC.
- Il modo consigliato per farlo è configurare un server proxy all'interno del perimetro VPC con un indirizzo RFC1918 e creare un gateway Cloud NAT per consentire alla VM proxy di accedere a internet.
Per ulteriori informazioni, consulta le seguenti risorse:
Esegui il deployment di un agente | AI generativa su Vertex AI | Google Cloud
Configura un'interfaccia Private Service Connect per le risorse Vertex AI | Google Cloud
Cosa creerai
In questo tutorial, creerai un Agent Engine completo di cui è stato eseguito il deployment con l'interfaccia Private Service Connect (PSC) per consentire la connettività a un sito pubblico (https://api.frankfurter.app/) tramite una VM proxy di cui è stato eseguito il deployment nel VPC del consumer con un indirizzo RFC1918. L'esempio di deployment è applicabile in un progetto abilitato per VPC-SC o per gli amministratori che richiedono l'uscita da internet tramite la rete dei clienti anziché il VPC tenant.
Figura 1

Creerai un singolo psc-network-attachment nel VPC consumer sfruttando il peering DNS per risolvere la VM proxy della rete consumer nel progetto tenant che ospita Agent Engine, il che comporta i seguenti casi d'uso:
Esegui il deployment di Agent Engine e configura una VM proxy in modo che funga da proxy esplicito, consentendole di raggiungere un URL pubblico https://api.frankfurter.app
Cosa imparerai a fare
- Come creare un collegamento di rete
- Come un producer può utilizzare un collegamento di rete per creare un'interfaccia PSC
- Come stabilire la comunicazione dal producer al consumer utilizzando il peering DNS
- Come eseguire il deployment e utilizzare una VM proxy per l'uscita da internet
Che cosa ti serve
Progetto Google Cloud
Autorizzazioni IAM
- Compute Network Admin (roles/compute.networkAdmin)
- Compute Instance Admin (roles/compute.instanceAdmin)
- Compute Security Admin (roles/compute.securityAdmin)
- Amministratore DNS (roles/dns.admin)
- Utente del tunnel con protezione IAP (roles/iap.tunnelResourceAccessor)
- Amministratore logging (roles/logging.admin)
- Amministratore Notebooks (roles/notebooks.admin)
- Amministratore IAM progetto (roles/resourcemanager.projectIamAdmin)
- Amministratore service account (roles/iam.serviceAccountAdmin)
- Amministratore Service Usage (roles/serviceusage.serviceUsageAdmin)
2. Prima di iniziare
Aggiornare il progetto per supportare il tutorial
Questo tutorial utilizza le variabili $per facilitare l'implementazione della configurazione di gcloud in Cloud Shell.
In Cloud Shell, esegui le seguenti operazioni:
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
Abilitazione delle API
In Cloud Shell, esegui le seguenti operazioni:
gcloud services enable "compute.googleapis.com"
gcloud services enable "aiplatform.googleapis.com"
gcloud services enable "dns.googleapis.com"
gcloud services enable "notebooks.googleapis.com"
gcloud services enable "storage.googleapis.com"
gcloud services enable "iap.googleapis.com"
Verifica che le API siano state abilitate correttamente
gcloud services list --enabled
3. Configurazione consumatore
Crea il VPC consumer
Questo VPC si trova in un progetto cliente. In questo VPC verranno create le seguenti risorse
- Subnet consumer
- Subnet del collegamento di rete
- Router Cloud (obbligatorio per Cloud NAT)
- Cloud NAT
In Cloud Shell, esegui le seguenti operazioni:
gcloud compute networks create consumer-vpc --project=$projectid --subnet-mode=custom
Crea le subnet consumer
In Cloud Shell, crea la subnet per la VM proxy:
gcloud compute networks subnets create rfc1918-subnet1 --project=$projectid --range=10.10.10.0/28 --network=consumer-vpc --region=us-central1
Crea la subnet del collegamento di rete Private Service Connect
In Cloud Shell, crea la subnet per il collegamento di rete PSC:
gcloud compute networks subnets create intf-subnet --project=$projectid --range=192.168.10.0/28 --network=consumer-vpc --region=us-central1
Configurazione di router Cloud e NAT
In questo tutorial, Cloud NAT viene utilizzato per fornire l'accesso a internet alla VM proxy, che non ha un indirizzo IP pubblico. Cloud NAT consente alle VM con solo indirizzi IP privati di connettersi a internet, consentendo loro di eseguire attività come l'installazione di pacchetti software.
In Cloud Shell, crea il router Cloud.
gcloud compute routers create cloud-router-for-nat --network consumer-vpc --region us-central1
In Cloud Shell, crea il gateway NAT con il logging abilitato. Utilizzeremo la registrazione per convalidare l'accesso all'IP pubblico per l'API Frankfurter (https://api.frankfurter.app/).
gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-for-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip