1. Introduzione
In questo codelab creerai un bilanciatore del carico di applicazioni interno regionale di livello 7 e un backend Private Service Connect per ottenere l'accesso in ingresso a Looker. L'accesso in ingresso a Looker richiede che il VPC consumer sia incluso nella lista consentita dell'istanza PSC di Looker.
Private Service Connect è una funzionalità di Google Cloud Networking che consente ai consumer di accedere ai servizi gestiti privatamente dall'interno della propria rete VPC. Allo stesso modo, consente ai producer di servizi gestiti di ospitare questi servizi nelle proprie reti VPC separate e di offrire una connessione privata ai propri consumer. Ad esempio, quando utilizzi Private Service Connect per accedere a Looker, tu sei il consumer di servizi e Google è il producer di servizi, come evidenziato nella Figura 1.
Figura 1.

L'accesso in uscita, noto anche come PSC inverso, consente al consumer di creare un servizio pubblicato come producer per consentire a Looker di accedere agli endpoint on-premise, in un VPC, ai servizi gestiti e a internet. Le connessioni in uscita possono essere implementate in qualsiasi regione, indipendentemente da dove viene implementato Looker PSC, come evidenziato nella Figura 2.
Figura 2.

Cosa imparerai a fare
- Requisiti di rete
- Aggiorna la lista consentita di Looker per l'accesso in uscita
- Crea un backend Private Service Connect nel VPC consumer
- Certificati Google e autofirmati
Che cosa ti serve
- Progetto Google Cloud con autorizzazioni di proprietario
- Dominio registrato
- Istanza PSC di Looker esistente

2. Cosa creerai
Stabilirai una rete consumer nella lista consentita, looker-psc-demo, per eseguire il deployment di un bilanciatore del carico delle applicazioni L7 interno regionale e di un NEG di backend PSC che richiede un certificato gestito da Google o autogestito. Per ulteriori dettagli, consulta la pagina di riepilogo del bilanciatore del carico e del certificato.
3. Requisiti di rete
Di seguito è riportata la suddivisione dei requisiti di rete:
Componenti | Descrizione |
VPC (looker-psc-demo) | VPC in modalità personalizzata |
Subnet NEG PSC | Utilizzato per allocare un indirizzo IP per il gruppo di endpoint di rete |
Subnet solo proxy | A ognuno dei proxy del bilanciatore del carico viene assegnato un indirizzo IP interno. I pacchetti inviati da un proxy a una VM o a un endpoint di backend hanno un indirizzo IP di origine dalla subnet solo proxy. |
Servizio di backend | Un servizio di backend funge da ponte tra il bilanciatore del carico e le risorse di backend. Nel tutorial, il servizio di backend è associato al NEG PSC. |
4. Topologia del codelab

5. Configurazione e requisiti
Configurazione dell'ambiente autonomo
- Accedi alla console Google Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.



- Il nome del progetto è il nome visualizzato per i partecipanti a questo progetto. È una stringa di caratteri non utilizzata dalle API di Google. Puoi sempre aggiornarlo.
- L'ID progetto è univoco in tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo l'impostazione). La console Cloud genera automaticamente una stringa univoca, di solito non ti interessa di cosa si tratta. Nella maggior parte dei codelab, dovrai fare riferimento all'ID progetto (in genere identificato come
PROJECT_ID). Se l'ID generato non ti piace, puoi generarne un altro casuale. In alternativa, puoi provare a crearne uno e vedere se è disponibile. Non può essere modificato dopo questo passaggio e rimane per tutta la durata del progetto. - Per tua informazione, esiste un terzo valore, un numero di progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
- Successivamente, devi abilitare la fatturazione in Cloud Console per utilizzare le risorse/API Cloud. Completare questo codelab non costa molto, se non nulla. Per arrestare le risorse ed evitare addebiti oltre a quelli previsti in questo tutorial, puoi eliminare le risorse che hai creato o il progetto. 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 Google Cloud, 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 in questo codelab può essere svolto all'interno di un browser. Non devi installare nulla.
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-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region
Attiva tutti i servizi necessari:
gcloud services enable compute.googleapis.com
7. Rete consumer
Nella sezione seguente, creerai il networking consumer che verrà aggiornato nella lista consentita VPC PSC di Looker.
Rete VPC
In Cloud Shell, esegui le seguenti operazioni:
gcloud compute networks create looker-psc-demo --subnet-mode custom
Crea subnet
In Cloud Shell, crea la subnet del gruppo di endpoint di rete consumer:
gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access
In Cloud Shell, crea la subnet del bilanciatore del carico delle applicazioni interno:
gcloud compute networks subnets create consumer-ilb-subnet --network looker-psc-demo --range 172.16.40.0/28 --region $region --enable-private-ip-google-access
In Cloud Shell, crea la subnet solo proxy regionale del produttore:
gcloud compute networks subnets create $region-proxy-only-subnet \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=$region \
--network=looker-psc-demo \
--range=10.10.10.0/24
8. Creare un dominio personalizzato
Per stabilire un dominio personalizzato sono necessari i seguenti passaggi:
Nell'esempio seguente, looker.cosmopup.com è il dominio personalizzato

Esempio di OAuth
Di seguito è riportato un esempio di credenziali OAuth per origini e callback autorizzati per il sottodominio looker.cosmopup.com.

9. Certificati
Puoi creare certificati Compute Engine o Certificate Manager. Utilizza uno dei seguenti metodi per creare certificati utilizzando Certificate Manager:
- Certificati autogestiti a livello di regione. Per informazioni sulla creazione e sull'utilizzo di certificati autogestiti a livello di regione, consulta Esegui il deployment di un certificato autogestito a livello di regione. Le mappe dei certificati non sono supportate.
- Certificati gestiti da Google a livello di regione. Le mappe dei certificati non sono supportate. I seguenti tipi di certificati gestiti da Google a livello di regione sono supportati da Certificate Manager:
- Certificati regionali gestiti da Google con autorizzazione DNS per progetto. Per saperne di più, vedi Eseguire il deployment di un certificato regionale gestito da Google.
- Certificati (privati) gestiti a livello di regione da Google con Certificate Authority Service. Per saperne di più, vedi Eseguire il deployment di un certificato gestito da Google regionale con CA Service.
10. Inserimento nella lista consentita del VPC di Looker
Visualizza i VPC consentiti
Nella sezione seguente, utilizzerai la UI della console Cloud per visualizzare l'elenco delle VPC consentite di Looker.
In Cloud Console, vai a:
Looker → Istanza Looker → Dettagli
Nell'esempio riportato di seguito, non sono presenti voci nell'elenco VPC consentiti:

Aggiorna VPC consentiti
Aggiorna l'istanza Looker per supportare l'accesso in direzione nord aggiungendo looker-psc-demo come VPC consentito.
In Cloud Console, vai a:
Looker → Istanza Looker → Modifica

Connessioni → VPC consentiti
Assicurati di selezionare il progetto in cui è stato eseguito il deployment di looker-psc-demo, seguito da VPC looker-psc-demo, poi fai clic su Continua.


Convalida dei VPC consentiti
Visualizza l'elenco VPC consentiti aggiornato
In Cloud Console, vai a:
Looker → Istanza Looker → Dettagli

11. Crea backend PSC
Looker PSC come producer di servizi genera un URI di collegamento al servizio utilizzato dai consumer di servizi per il deployment di endpoint e backend per ottenere l'accesso in ingresso a Looker. Nel passaggio successivo, identificherai l'URI del collegamento al servizio PSC di Looker e poi creerai un backend del gruppo di endpoint di rete (NEG) Private Service Connect nella VPC consumer.
Identifica l'allegato di servizio PSC di Looker
In Cloud Console, vai alla sezione e copia l'URI dell'allegato di servizio:
Looker → Istanza Looker → Dettagli

Crea il gruppo di endpoint di rete PSC
In Cloud Shell, esegui le seguenti operazioni assicurandoti di aggiornare psc-target-service:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Esempio:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Convalidare la creazione del gruppo di endpoint di rete PSC
In Cloud Shell, esegui le seguenti operazioni, assicurandoti che pscConnectionStatus sia accettato:
gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
Esempio:
user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
pscConnectionStatus: ACCEPTED
Crea un bilanciatore del carico delle applicazioni interno regionale
Nei passaggi successivi, utilizzerai Cloud Console per creare il bilanciatore del carico delle applicazioni interno regionale associando i certificati generati alla configurazione del frontend.
In Cloud Console, vai a:
Servizi di rete → Bilanciamento del carico → Crea bilanciatore del carico

Seleziona le seguenti opzioni:

Crea la configurazione del backend
Seleziona le seguenti opzioni e personalizza l'ambiente in base al deployment:
- Regione utilizzata per il deployment dell'infrastruttura di rete
- Rete: looker-psc-demo
- La subnet solo proxy viene compilata automaticamente in base alla regione e alla rete




Regole di routing
Nessuna configurazione richiesta

Configurazione frontend



Assicurati che il bilanciatore del carico sia abilitato e ottieni l'indirizzo IP.
In Cloud Console → Servizi di rete → Bilanciamento del carico → looker-ilb-alb

12. risoluzione DNS
La risoluzione DNS del dominio personalizzato può essere autorevole on-premise o Cloud DNS. Nel tutorial definiremo Cloud DNS come server autorevole per il dominio personalizzato di Looker. L'abilitazione della risoluzione DNS on-premise a Google Cloud richiede l'attivazione delle policy dei server in entrata. Quando crei una policy dei server in entrata, Cloud DNS crea entry point della policy dei server in entrata nella rete VPC a cui viene applicata la policy dei server. Gli entry point della policy dei server in entrata sono indirizzi IPv4 interni provenienti dall'intervallo di indirizzi IPv4 principale di ogni subnet nella rete VPC applicabile, ad eccezione delle subnet solo proxy.
Nella sezione seguente viene creata una zona DNS privato per il dominio personalizzato di Looker, looker.cosmopup.com e un record A costituito dall'indirizzo IP del bilanciatore del carico.
13. Crea una zona DNS privata
In Cloud Shell, crea la zona privata di Cloud DNS.
gcloud dns --project=$projectid managed-zones create looker-cosmopup-dns --description="" --dns-name="looker.cosmopup.com." --visibility="private" --networks="https://compute.googleapis.com/compute/v1/projects/$projectid/global/networks/looker-psc-demo"
In Cloud Shell, crea il record A costituito dall'indirizzo IP del bilanciatore del carico, ottenuto nel passaggio precedente.
gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="<insert-your-ip>"
Esempio:
gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="172.16.20.7"
Successivamente, è necessario configurare il networking ibrido (ad es. Interconnect, VPN ad alta disponibilità) tra il VPC looker-psc-demo e la rete on-premise per abilitare la connettività.
Di seguito sono riportati i passaggi necessari per stabilire la connettività NEG ibrida a on-premise:
- Scegliere un prodotto Network Connectivity | Google Cloud
- In un'architettura hub e spoke con peering VPC, il NEG ibrido viene implementato nello stesso VPC del router Cloud (hub).
- Assicurati che i firewall on-premise siano aggiornati per adattarsi all'intervallo di subnet solo proxy, in quanto questa subnet funge da indirizzo IP di origine per la comunicazione con i workload on-premise
- Aggiorna il DNS on-premise con l'indirizzo IP di forwarding in entrata come resolver DNS per looker.cosomopup.com
Accedere all'interfaccia utente di Looker
Ora che il bilanciatore del carico è operativo, puoi accedere al tuo dominio Looker personalizzato tramite un browser web. È importante notare che potresti visualizzare un avviso a seconda del tipo di certificato che utilizzi, ad esempio certificato non attendibile e certificato attendibile.
Di seguito è riportato un esempio (certificato non attendibile) di accesso al dominio personalizzato di Looker looker.cosmopup.com che ottiene l'accesso in ingresso alla UI di Looker:

14. Esegui la pulizia
Da un singolo terminale Cloud Shell, elimina i componenti del lab:
gcloud compute forwarding-rules delete regional-internal-alb-fr --region=$region -q
gcloud compute target-https-proxies delete regional-internal-alb-target-proxy --region=$region -q
gcloud compute url-maps delete regional-internal-alb --region=$region -q
gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q
gcloud compute addresses delete regional-alb-static-ip --region=$region -q
gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q
gcloud compute networks delete looker-psc-demo -q
15. Complimenti
Congratulazioni, hai configurato e convalidato correttamente la connettività in uscita a Looker utilizzando un dominio cliente e un bilanciatore del carico delle applicazioni interno regionale.
Hai creato l'infrastruttura di consumo, hai imparato a creare un NEG PSC, un dominio personalizzato e hai scoperto le diverse opzioni di certificato. Tante cose entusiasmanti per iniziare a utilizzare Looker.
Cosmopup pensa che i codelab siano fantastici.

Passaggi successivi
Dai un'occhiata ad alcuni di questi codelab...
- Utilizzo di Private Service Connect per pubblicare e utilizzare servizi
- Connettiti ai servizi on-premise tramite Hybrid Networking utilizzando Private Service Connect e un bilanciatore del carico proxy TCP interno
- Accesso a tutti i codelab di Private Service Connect pubblicati
Ulteriori letture e video
Documentazione di riferimento
- Utilizzare certificati SSL autogestiti | Bilanciamento del carico | Google Cloud
- Esegui il deployment di un certificato gestito da Google a livello di regione
- Crea un backend Private Service Connect | VPC | Google Cloud
- Crea un backend Private Service Connect | VPC | Google Cloud
- Crea un'istanza Private Service Connect di Looker (Google Cloud core)
- Come pubblicare un servizio utilizzando Private Service Connect