1. Introduzione
Con Private Service Connect, puoi creare endpoint privati utilizzando indirizzi IP interni globali all'interno della tua rete VPC per accedere alle API di Google. Puoi assegnare nomi DNS a questi indirizzi IP interni con nomi significativi come storage-pscendpoint.p.googleapis.com e bigtable-adsteam.p.googleapis.com. Anziché inviare richieste API a endpoint di servizio pubblici come storage.googleapis.com, puoi inviare le richieste all'endpoint Private Service Connect, che è privato e interno alla tua rete VPC.
Questi nomi e indirizzi IP sono interni alla tua rete VPC e a qualsiasi rete on-premise connessa tramite tunnel Cloud VPN o collegamenti Cloud Interconnect (VLAN).
Puoi controllare il traffico diretto a un determinato endpoint e dimostrare che rimane all'interno di Google Cloud.
Cosa imparerai a fare
- Casi d'uso di Private Service Connect
- Requisiti di rete
- API supportate
- Crea un endpoint Private Service Connect
- crea un bucket Cloud Storage
- Crea e aggiorna le zone private Cloud DNS
- Crea un gateway NAT per accedere alle API di Google pubbliche
- Creare e aggiornare un file di configurazione BOTO
- Esegui gsutil list su VM1 risolto rispetto all'endpoint di servizio PSC
- Esegui gsutil list su VM2 risolto rispetto a googleapis.com pubblico
- Utilizza Tcpdump per convalidare la risoluzione DNS
Che cosa ti serve
- Conoscenza di DNS, nano o vi editor
2. Casi d'uso di Private Service Connect
Puoi creare più endpoint Private Service Connect nella stessa rete VPC. Non esiste alcun limite alla larghezza di banda per un determinato endpoint. Poiché gli endpoint di Private Service Connect utilizzano indirizzi IP interni globali, possono essere utilizzati da qualsiasi risorsa nella tua rete VPC.
Con più endpoint, puoi specificare percorsi di rete diversi utilizzando Cloud Router e regole firewall.
- Puoi creare regole firewall per impedire ad alcune VM di accedere alle API di Google tramite un endpoint Private Service Connect, consentendo invece ad altre VM di accedere.
- Puoi avere una regola firewall su un'istanza VM che non consente tutto il traffico a internet; il traffico inviato agli endpoint Private Service Connect raggiunge comunque Google.
- Se hai host on-premise connessi a un VPC utilizzando un tunnel Cloud VPN o un collegamento Cloud Interconnect (VLAN), puoi inviare alcune richieste tramite il tunnel o la VLAN e altre tramite internet pubblico. Questa configurazione ti consente di bypassare il tunnel o la VLAN per servizi come Google Libri che non sono supportati da Private Google Access. Per creare questa configurazione, crea un endpoint Private Service Connect, annuncia gli indirizzi IP dell'endpoint Private Service Connect utilizzando gli annunci di route personalizzati del router Cloud e abilita una policy di forwarding in entrata di Cloud DNS. L'applicazione può inviare alcune richieste tramite il tunnel VPN Cloud o il collegamento Cloud Interconnect (VLAN) utilizzando il nome dell'endpoint Private Service Connect e altre su internet utilizzando il nome DNS predefinito.
- Se connetti la tua rete on-premise alla tua rete VPC utilizzando più collegamenti Cloud Interconnect (VLAN), puoi inviare parte del traffico on-premise su una VLAN e il resto su altre, come mostrato nella figura 2. In questo modo puoi utilizzare la tua rete geografica anziché quella di Google e controllare il trasferimento dei dati per soddisfare i requisiti geografici. Per creare questa configurazione, crea due endpoint Private Service Connect. Crea un annuncio di route personalizzato per il primo endpoint nella sessione BGP del router Cloud che gestisce la prima VLAN e crea un annuncio di route personalizzato diverso per il secondo endpoint nella sessione BGP del router Cloud che gestisce la seconda VLAN. Gli host on-premise configurati per utilizzare il nome dell'endpoint Private Service Connect inviano il traffico tramite il collegamento Cloud Interconnect (VLAN) corrispondente.
- Puoi anche utilizzare più collegamenti Cloud Interconnect (VLAN) in una topologia attivo/attivo. Se annunci lo stesso indirizzo IP dell'endpoint Private Service Connect utilizzando annunci di route personalizzati per le sessioni BGP sui router Cloud che gestiscono le VLAN, i pacchetti inviati dai sistemi on-premise agli endpoint vengono instradati tra le VLAN utilizzando ECMP.

Figura 1. Configurando Private Service Connect, Cloud Router e gli host on-premise, puoi controllare quale collegamento Cloud Interconnect (VLAN) viene utilizzato per inviare traffico alle API di Google.
3. Requisiti di rete
Per utilizzare Private Service Connect, le istanze di macchine virtuali (VM) senza indirizzi IP esterni devono avere la loro interfaccia principale in una subnet con l'accesso privato Google abilitato.
Una VM con un indirizzo IP esterno può accedere alle API e ai servizi Google utilizzando gli endpoint Private Service Connect indipendentemente dal fatto che l'accesso privato Google sia abilitato per la relativa subnet. La connettività all'endpoint Private Service Connect rimane all'interno della rete di Google.
Gli endpoint Private Service Connect non sono accessibili dalle reti VPC in peering.
API supportate
Quando crei un endpoint Private Service Connect, scegli a quale bundle di API devi accedere: all-apis o vpc-sc.
I bundle di API forniscono l'accesso alle stesse API disponibili tramite i VIP di accesso privato Google.
- Il bundle all-apis fornisce l'accesso alle stesse API di private.googleapis.com.
- Il bundle vpc-sc fornisce l'accesso alle stesse API di restricted.googleapis.com.
4. Topologia e caso d'uso del codelab

Figura 1: topologia del codelab
Caso d'uso di Codelab:
Il nostro cliente richiede una combinazione di accesso privato (interconnessione) e pubblico a googleapis per il trasferimento di dati di Cloud Storage. Per soddisfare i requisiti dei nostri clienti, implementeremo Private Service Connect, che consiste in un indirizzo /32 univoco, nella configurazione BOTO e negli aggiornamenti dei record DNS. La macchina virtuale 1 utilizzerà PSC per l'accesso al bucket Cloud Storage, mentre la VM2 utilizzerà intervalli IP googleapis.com pubblici tramite il gateway NAT.
Tutti gli aspetti del lab vengono implementati all'interno di Google Cloud, ma lo stesso caso d'uso è applicabile al deployment del cloud ibrido che richiede la separazione del traffico.
5. Configurazione e requisiti
Configurazione dell'ambiente autonomo
- Accedi alla console Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.



Ricorda l'ID progetto, un nome univoco tra tutti i progetti Google Cloud (il nome sopra è già stato utilizzato e non funzionerà per te, mi dispiace). In questo codelab verrà chiamato PROJECT_ID.
- Successivamente, dovrai abilitare la fatturazione in Cloud Console per utilizzare le risorse Google Cloud.
L'esecuzione di questo codelab non dovrebbe costare molto, se non nulla. Assicurati di seguire le istruzioni riportate nella sezione "Pulizia", che ti consiglia come arrestare le risorse in modo da non incorrere in addebiti oltre questo tutorial. I nuovi utenti di Google Cloud possono beneficiare del programma prova senza costi di 300$.
Avvia Cloud Shell
Sebbene Google Cloud possa essere gestito da remoto dal tuo laptop, in questo codelab utilizzerai Google Cloud Shell, un ambiente a riga di comando in esecuzione nel cloud.
Nella console GCP, fai clic sull'icona di Cloud Shell nella barra degli strumenti in alto a destra:

Bastano pochi istanti per eseguire il provisioning e connettersi all'ambiente. Al termine, dovresti vedere un risultato simile a questo:

Questa macchina virtuale è caricata con tutti gli strumenti per sviluppatori di cui avrai bisogno. Offre una home directory permanente da 5 GB e viene eseguita su Google Cloud, migliorando notevolmente le prestazioni e l'autenticazione della rete. Tutto il lavoro di questo lab può essere svolto semplicemente con un browser.
6. Prima di iniziare
Abilita API
In Cloud Shell, assicurati che l'ID progetto sia configurato.
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] projectname=YOUR-PROJECT-NAME echo $projectname
Attiva tutti i servizi necessari
gcloud services enable compute.googleapis.com gcloud services enable servicedirectory.googleapis.com gcloud services enable dns.googleapis.com
7. Crea rete VPC
Rete VPC
Da Cloud Shell
gcloud compute networks create psc-lab --subnet-mode custom
Crea subnet
Da Cloud Shell
gcloud compute networks subnets create psclab-subnet \ --network psc-lab --range 10.0.0.0/24 --region us-central1 --enable-private-ip-google-access
Crea regole firewall
Per consentire a IAP di connettersi alle tue istanze VM, crea una regola firewall che:
- Si applichi a tutte le istanze VM a cui vuoi accedere tramite IAP.
- Consente il traffico in entrata dall'intervallo IP 35.235.240.0/20. Questo intervallo contiene tutti gli indirizzi IP che utilizzati da IAP per l'inoltro TCP.
Da Cloud Shell
gcloud compute firewall-rules create psclab-ssh \
--network psc-lab --allow tcp:22 --source-ranges=35.235.240.0/20
Crea l'istanza Cloud NAT
Crea router Cloud
Da Cloud Shell
gcloud compute routers create crnat \
--network psc-lab \
--asn 65000 \
--region us-central1
Crea Cloud NAT
Da Cloud Shell
gcloud compute routers nats create cloudnat \
--router=crnat \
--auto-allocate-nat-external-ips \
--nat-all-subnet-ip-ranges \
--enable-logging \
--region us-central1
8. Crea un endpoint Private Service Connect
Quando configuri l'IP dell'endpoint Private Service Connect <pscendpointip>, devi fornire un indirizzo IP univoco non definito nel tuo VPC.
Da Cloud Shell
gcloud compute addresses create psc-ip \
--global \
--purpose=PRIVATE_SERVICE_CONNECT \
--addresses=192.168.255.250 \
--network=psc-lab
Memorizza "pscendpointip" per la durata del lab
pscendpointip=$(gcloud compute addresses list --filter=name:psc-ip --format="value(address)") echo $pscendpointip
Crea una regola di forwarding per connettere l'endpoint alle API e ai servizi Google.
Da Cloud Shell
gcloud compute forwarding-rules create pscendpoint \
--global \
--network=psc-lab \
--address=psc-ip \
--target-google-apis-bundle=all-apis
Elenca gli endpoint Private Service Connect configurati
Da Cloud Shell
gcloud compute forwarding-rules list \ --filter target="(all-apis OR vpc-sc)" --global
Descrivi gli endpoint Private Service Connect configurati
Da Cloud Shell
gcloud compute forwarding-rules describe \
pscendpoint --global
9. Crea un bucket
Crea un bucket Cloud Storage e sostituisci BUCKET_NAME con un nome univoco a livello globale che preferisci.
Da Cloud Shell
gsutil mb -l us-central1 -b on gs://BUCKET_NAME
Archivia "BUCKET_NAME" per la durata del lab
BUCKET_NAME=YOUR BUCKET NAME echo $BUCKET_NAME
10. Configurazione DNS
Quando crei un endpoint Private Service Connect, Service Directory genera un record DNS per le API e i servizi resi disponibili utilizzando quell'endpoint.
I record DNS puntano all'indirizzo IP dell'endpoint Private Service Connect e hanno questo formato: SERVICE-ENDPOINT.p.googleapis.com.
Puoi utilizzare questi nomi DNS nelle richieste API per indirizzare la richiesta al tuo endpoint Private Service Connect. Puoi anche utilizzare questi nomi DNS nell'intestazione Host della richiesta.
Se vuoi utilizzare un endpoint Private Service Connect con un client o un'applicazione che accede alle API e ai servizi Google, aggiorna il client o l'applicazione in modo che utilizzi i nomi DNS p.googleapis.com.
Per maggiori dettagli, consulta la documentazione del client o della libreria client. Ad esempio:
- Python: puoi configurare api_endpoint nella classe delle opzioni client nel pacchetto google-api-core.
- Vai: puoi configurare WithEndpoint nel pacchetto di opzioni client nel pacchetto API.
- gcloud: You can configure api_endpoint_overrides using this command. gcloud config set api_endpoint_overrides/SERVICE ENDPOINT_URL
Ad esempio: gcloud config set api_endpoint_overrides/storage https://storage-xyz.p.googleapis.com/storage/v1/
Se non riesci a configurare il client o l'applicazione per utilizzare un endpoint diverso, crea record DNS che corrispondano ai nomi DNS predefiniti. Ad esempio, storage.googleapis.com. Vedi Creazione di record DNS utilizzando nomi DNS predefiniti.
Convalida il record DNS
Dalla console Cloud, convalida la voce DNS generata in Servizi di rete → Cloud DNS. Prendi nota del nome DNS generato "p.googleapis.com".
11. Crea macchine virtuali
Crea la macchina virtuale (psc-instance-1) utilizzata per convalidare Private Service Connect
Da Cloud Shell
gcloud compute instances create psc-instance-1 \
--subnet psclab-subnet \
--zone us-central1-a \
--image=centos-7-v20210122 \
--image-project=centos-cloud \
--no-address \
--metadata=startup-script=yum\ install\ tcpdump\ -y$'\n'yum\ install\ bind-utils\ -y$'\n'yum\ install\ nano\ -y
Accedi all'istanza VM (psc-instance-1)
Accedere tramite SSH alla VM tramite Cloud Shell
gcloud compute ssh --zone "us-central1-a" "psc-instance-1" --project "$projectname"
Crea altri terminali Cloud Shell facendo clic su + (screenshot di seguito) tre volte.

Crea la macchina virtuale (psc-instance-2) utilizzata per convalidare Googleapis pubblico
Dalla scheda 2
gcloud compute instances create psc-instance-2 \
--subnet psclab-subnet \
--zone us-central1-a \
--image=centos-7-v20210122 \
--image-project=centos-cloud \
--no-address \
--metadata=startup-script=yum\ install\ tcpdump\ -y$'\n'yum\ install\ bind-utils\ -y$'\n'yum\ install\ nano\ -y
Dalla scheda 2, accedi alla VM tramite SSH tramite Cloud Shell
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] projectname=YOUR-PROJECT-NAME echo $projectname gcloud compute ssh --zone "us-central1-a" "psc-instance-2" --project "$projectname"
Dalla scheda 3, accedi a psc-instance-1 tramite SSH tramite Cloud Shell
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] projectname=YOUR-PROJECT-NAME echo $projectname gcloud compute ssh --zone "us-central1-a" "psc-instance-1" --project "$projectname"
Dalla scheda 4 Shell, esegui SSH in psc-instance-2 tramite Cloud Shell
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] projectname=YOUR-PROJECT-NAME echo $projectname gcloud compute ssh --zone "us-central1-a" "psc-instance-2" --project "$projectname"
12. Verificare il comportamento esistente di Gsutil
Dalla scheda 4 (psc-instance-2), avvia tcpdump e monitora il traffico DNS
sudo tcpdump -vv -i eth0 port 53
Ispeziona la ricerca DNS del bucket di archiviazione dalla scheda 2 (psc-instance-2)
BUCKET_NAME=YOUR BUCKET NAME echo $BUCKET_NAME gsutil -D ls gs://$BUCKET_NAME
Ispeziona il debug di gsutil, HOST storage.googleapis.com viene utilizzato per la risoluzione DNS
<snip> send: 'GET /storage/v1/b/$BUCKET_NAME/o?delimiter=%2F&projection=noAcl&versions=False&fields=prefixes%2CnextPageToken%2Citems%2Fname&alt=json&maxResults=1000 HTTP/1.1\r\nHost: storage.googleapis.com\r\ncontent-length: 0\r\nauthorization: Bearer ya29.c.KpkB7wfaMjfc_WXEKCeNF4Md0fEHnfDU7tqBf3cd0u43yEmYXqj8fX_X5wWdNdDVH6k1EkjeAeIJDzKGvyjPOkf1Io2kVeUqYX69sDv53huW1NslffjAHKchbZ0CP3Cg83TS3Pa55jLcuE0TLbYycVrgSbD3H90LaapUGbWD3kj4IsJLf9J8R98Bqobu8HZwwqk92hlZ4zVzRqOM\r\naccept-encoding: gzip, deflate\r\naccept: application/json\r\nuser-agent: apitools Python/2.7.5 gsutil/4.57 (linux2) analytics/disabled interactive/True command/ls google-cloud-sdk/324.0.0\r\n\r\n' reply: 'HTTP/1.1 200 OK\r\n' <snip>
Dalla scheda 4 (psc-instance-2), verifica che i record A DNS pubblici di GoogleAPI.com vengano utilizzati per accedere al bucket di archiviazione.
metadata.google.internal.domain > psc-instance-2.c.yourprojectname.internal.33973: [udp sum ok] 36442 q: A? storage.googleapis.com. 11/0/0 storage.googleapis.com. A 108.177.111.128, storage.googleapis.com. A 142.250.128.128, storage.googleapis.com. A 74.125.70.128, storage.googleapis.com. A 74.125.201.128, storage.googleapis.com. A 64.233.183.128, storage.googleapis.com. A 173.194.198.128, storage.googleapis.com. A 172.217.219.128, storage.googleapis.com. A 142.250.136.128, storage.googleapis.com. A 209.85.234.128, storage.googleapis.com. A 172.217.212.128, storage.googleapis.com. A 172.217.214.128
13. Modificare il comportamento di gsutil
Ricorda che in un passaggio precedente hai creato una zona DNS privata e un record A mappato all'indirizzo IP dell'endpoint PSC. Nel passaggio successivo, controlleremo il comportamento di gsutil aggiornando il file BOTO della VM su psc-instance-1.
Visualizza la configurazione BOTO predefinita dal terminale dell'istanza VM dalla scheda 1 (psc-instance-1)
[psc-instance ~]$ more /etc/boto.cfg
Output (il tuo project_id sarà diverso)
[GSUtil] default_project_id = [your project number] default_api_version = 2 [GoogleCompute] service_account = default
Aggiorna la configurazione BOTO utilizzando nano o VI Editor, assicurati di copiare e incollare tutte le voci.
Esempio: sudo nano /etc/boto.cfg
o
Esempio: sudo vi /etc/boto.cfg
Dalla scheda del terminale dell'istanza VM 1(psc-instance-1)
[Credentials] gs_host = storage-pscendpoint.p.googleapis.com gs_host_header = storage.googleapis.com gs_json_host = storage-pscendpoint.p.googleapis.com gs_json_host_header = www.googleapis.com
Convalida la configurazione, l'ordine di [Credentials] è fondamentale per la ricerca DNS
more /etc/boto.cfg [Credentials] gs_host = storage-pscendpoint.p.googleapis.com gs_host_header = storage.googleapis.com gs_json_host = storage-pscendpoint.p.googleapis.com gs_json_host_header = www.googleapis.com [GSUtil] default_project_id = [your project number default_api_version = 2 [GoogleCompute] service_account = default
14. Verifica il comportamento di ricerca aggiornato di gsutil
Dalla scheda 3 (psc-instance-1), avvia tcpdump e monitora il traffico DNS.
sudo tcpdump -vv -i eth0 port 53
Ispeziona la ricerca gsutil del bucket di archiviazione dalla scheda 1 (psc-instance-1)
BUCKET_NAME=YOUR BUCKET NAME echo $BUCKET_NAME gsutil -D ls gs://$BUCKET_NAME
I log di debug confermano che il bucket di archiviazione è raggiungibile tramite l'endpoint Private Service Connect "pscendpoint".
Output:
<snip>
INFO 0131 22:14:18.795986 base_api.py] Making http GET to https://storage-pscendpoint.p.googleapis.com/storage/v1/b/$BUCKET_NAME/o?delimiter=%2F&projection=noAcl&versions=False&fields=prefixes%2CnextPageToken%2Citems%2Fname&alt=json&maxResults=1000
INFO 0131 22:14:18.796415 base_api.py] Headers: {u'Host': 'www.googleapis.com',
'accept': 'application/json',
'accept-encoding': 'gzip, deflate',
'content-length': '0',
'user-agent': 'apitools Python/2.7.5 gsutil/4.57 (linux2) analytics/disabled interactive/True command/ls google-cloud-sdk/324.0.0'}
INFO 0131 22:14:18.796502 base_api.py] Body: (none)
connect: (storage-pscendpoint.p.googleapis.com, 443)
send: 'GET /storage/v1/b/psc-bucket/o?delimiter=%2F&projection=noAcl&versions=False&fields=prefixes%2CnextPageToken%2Citems%2Fname&alt=json&maxResults=1000 HTTP/1.1\r\ncontent-length: 0\r\naccept-encoding: gzip, deflate\r\naccept: application/json\r\nuser-agent: apitools Python/2.7.5 gsutil/4.57 (linux2) analytics/disabled interactive/True command/ls google-cloud-sdk/324.0.0\r\nhost: www.googleapis.com\r\nauthorization: Bearer ya29.c.KpkB7wd3XWiYeRyTuth5_HPlNV-hPwc2Nn7RSIeMpzrpa_j4EsMPl2m_mDGKAcGHvYIgiC5bT2UVQirAPpSbbpToa6G6lkaBbH5SZwHwgNXYfisp5Ww1UjXe4rTa69a_Wp0WesafcwPNnYzDo3xf5VGh3iGhySA04kTXuyT--MgOU8U-XLII2LJQxUWlV8KEdrvyCuqRb-jsDdk_\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
<snip>
Dalla scheda 3 (psc-instance-1), verifica che l'IP dell'endpoint PSC sia il record DNS A utilizzato quando tenti di accedere al bucket di archiviazione.
@psc-instance-1 ~]$ sudo tcpdump -vv -i eth0 port 53
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
05:02:33.936256 IP (tos 0x0, ttl 64, id 55416, offset 0, flags [DF], proto UDP (17), length 82)
psc-instance-1.c.yourprojectname.internal.42296 > metadata.google.internal.domain: [bad udp cksum 0x5e4e -> 0xcceb!] 34796+ A? storage-pscendpoint.p.googleapis.com. (54)
05:02:33.936269 IP (tos 0x0, ttl 64, id 55417, offset 0, flags [DF], proto UDP (17), length 82)
psc-instance-1.c.yourprojectname.internal.42296 > metadata.google.internal.domain: [bad udp cksum 0x5e4e -> 0x3ebd!] 5632+ AAAA? storage-pscendpoint.p.googleapis.com. (54)
05:02:33.944018 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 98)
metadata.google.internal.domain > psc-instance-1.c.yourprojectname.42296: [udp sum ok] 34796 q: A? storage-pscendpoint.p.googleapis.com. 1/0/0 storage-pscendpoint.p.googleapis.com. A 10.10.110.10 (70)
05:02:33.946005 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 175)
Verifica che l'IP dell'endpoint Private Service Connect venga ora utilizzato per la risoluzione DNS
Da scheda1
nslookup storage-pscendpoint.p.googleapis.com
Output
@psc-instance ~]$ nslookup storage-pscendpoint.p.googleapis.com Server: 169.254.169.254 Address: 169.254.169.254#53 Non-authoritative answer: Name: storage-pscendpoint.p.googleapis.com Address: <pscip>
15. Procedura di pulizia
Esci dall'istanza VM (tutte le schede)
exit
Elimina i componenti del lab da un singolo terminale Cloud Shell
gcloud compute routers nats delete cloudnat --router=crnat --region=us-central1 --quiet gcloud compute routers delete crnat --region=us-central1 --quiet gcloud compute forwarding-rules delete pscendpoint --global --quiet gcloud compute addresses delete psc-ip --global --quiet gsutil rm -r gs://$BUCKET_NAME gcloud compute instances delete psc-instance-1 --zone=us-central1-a --quiet gcloud compute instances delete psc-instance-2 --zone=us-central1-a --quiet gcloud compute firewall-rules delete psclab-ssh --quiet gcloud compute networks subnets delete psclab-subnet --region us-central1 --quiet gcloud compute networks delete psc-lab --quiet
Dalla console, assicurati di visualizzare il progetto corretto, quindi seleziona Servizi di rete → Cloud DNS.
16. Complimenti!
Congratulazioni per aver completato il codelab.
Argomenti trattati
- Casi d'uso di Private Service Connect
- Requisiti di rete
- API supportate
- È stato creato un endpoint Private Service Connect
- Creazione di un bucket Cloud Storage
- Aggiornamento di un file di configurazione BOTO
- È stato creato un gateway NAT
- Esegui gsutil list su VM1 che viene risolto rispetto all'endpoint di servizio PSC
- Esegui gsutil list su VM2 che viene risolto rispetto a googleapis.com pubblico
- Utilizza Tcpdump per convalidare la risoluzione DNS