Looker PSC Northbound Regional Internal L7 ALB

Informazioni su questo codelab
schedule47 minuti
subjectUltimo aggiornamento: 2 aprile 2025
account_circleScritto da: Deepak Michael

In questo codelab creerai un bilanciatore del carico di applicazioni interno L7 a livello di regione e un backend Private Service Connect per ottenere l'accesso northbound a Looker. L'accesso in uscita a Looker richiede che il VPC del consumatore sia inserito nella lista consentita dell'istanza PSC di Looker.

Private Service Connect è una funzionalità della rete di Google Cloud che consente ai consumer di accedere privatamente ai servizi gestiti dall'interno della loro rete VPC. Analogamente, 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, sei il consumatore del servizio e Google è il produttore del servizio, come evidenziato nella Figura 1.

Figura 1.

145ea4672c3a3b14.png

L'accesso in uscita, noto anche come PSC inverso, consente al consumer di creare un servizio pubblicato come produttore 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 è implementato Looker PSC, come evidenziato nella Figura 2.

Figura 2.

3edfcc67e195d082.png

Cosa imparerai a fare

  • Requisiti di rete
  • Aggiornare la lista consentita di Looker per l'accesso in uscita
  • Crea un backend Private Service Connect nel VPC consumer
  • Confronto tra i certificati Google e quelli autofirmati

Che cosa ti serve

def88091b42bfe4d.png

2. Cosa creerai

Dovrai creare una rete consumer inserita 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 Google o autogestito. Per maggiori dettagli, consulta la pagina di riepilogo del bilanciatore del carico e dei certificati.

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 ciascuno 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 della 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

2f6bb87ef0e139b2.png

5. Configurazione e requisiti

Configurazione dell'ambiente a tuo ritmo

  1. 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.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Il nome del progetto è il nome visualizzato per i partecipanti al progetto. Si tratta di una stringa di caratteri non utilizzata dalle API di Google. Puoi sempre aggiornarlo.
  • L'ID progetto è univoco per tutti i progetti Google Cloud ed è immutabile (non può essere modificato dopo essere stato impostato). La console Cloud genera automaticamente una stringa univoca; di solito non ti interessa quale sia. Nella maggior parte dei codelab, dovrai fare riferimento al tuo ID progetto (in genere identificato come PROJECT_ID). Se l'ID generato non ti piace, puoi generarne un altro casuale. In alternativa, puoi provare il tuo e vedere se è disponibile. Non può essere modificato dopo questo passaggio e rimane invariato per tutta la durata del progetto.
  • Per tua informazione, esiste un terzo valore, un Numero progetto, utilizzato da alcune API. Scopri di più su tutti e tre questi valori nella documentazione.
  1. Successivamente, dovrai abilitare la fatturazione nella console Cloud per utilizzare le API/risorse Cloud. La partecipazione a questo codelab non ha costi, o quasi. Per arrestare le risorse ed evitare di incorrere in fatturazione al termine di questo tutorial, puoi eliminare le risorse che hai creato o il progetto. I nuovi utenti di Google Cloud sono idonei al programma Prova senza costi di 300$.

Avvia Cloud Shell

Sebbene Google Cloud possa essere utilizzato 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:

55efc1aaa7a4d3ad.png

Dovrebbe richiedere solo pochi istanti per eseguire il provisioning e connettersi all'ambiente. Al termine, dovresti vedere qualcosa di simile a questo:

7ffe5cbb04455448.png

Questa macchina virtuale contiene tutti gli strumenti di sviluppo 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 di rete. Tutto il lavoro in questo codelab può essere svolto in 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 la rete di consumo che verrà aggiornata nella lista consentita VPC di Looker PSC.

Rete VPC

In Cloud Shell, svolgi i seguenti passaggi:

gcloud compute networks create looker-psc-demo --subnet-mode custom

Creare subnet

In Cloud Shell, crea la subnet del gruppo di endpoint di rete del consumatore:

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

5424ce99136d5b3a.png

Esempio di OAuth

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

c7e5b8c7d2cc6a01.png

9. Certificati

Puoi creare certificati Compute Engine o Certificate Manager. Utilizza uno dei seguenti metodi per creare certificati utilizzando Certificate Manager:

10. Lista consentita VPC di Looker

Visualizzare le VPC consentite

Nella sezione seguente, utilizzerai l'interfaccia utente della console Cloud per visualizzare l'elenco delle VPC consentite da Looker.

In Cloud Console, vai a:

Looker → Istanza Looker → Dettagli

Nell'esempio seguente, non sono presenti voci nell'elenco VPC consentiti:

ad33177a2d721ea7.png

Aggiorna VPC consentite

Aggiorna l'istanza Looker per supportare l'accesso in uscita aggiungendo looker-psc-demo come VPC consentito.

In Cloud Console, vai a:

Looker → Istanza Looker → Modifica

cbbc069688890b82.png

Connessioni → VPC consentiti

Assicurati di selezionare il progetto in cui è dipiegato looker-psc-demo, seguito dalla VPC looker-psc-demo e poi Continua.

dc931643e1b220a.png

3e26d16d83cceae9.png

Convalida le VPC consentite

Visualizza l'elenco aggiornato dei VPC consentiti

In Cloud Console, vai a:

Looker → Istanza Looker → Dettagli

e34664c867929c66.png

11. Crea backend PSC

Looker PSC come produttore di servizi genera un URI del collegamento al servizio utilizzato dai consumer di servizi per eseguire il deployment di endpoint e backend al fine di ottenere l'accesso northbound a Looker. Nel passaggio successivo, dovrai identificare l'URI del collegamento di servizio PSC di Looker, quindi creare un backend del gruppo di endpoint di rete (NEG) Private Service Connect nella VPC consumer.

Identifica il collegamento del servizio PSC di Looker

In Cloud Console, vai a e copia l'URI dell'attacco del servizio:

Looker → Istanza Looker → Dettagli

a253f94e946a1eef.png

Crea il gruppo di endpoint di rete del PSC

In Cloud Shell, esegui quanto segue 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 della rete PSC

In Cloud Shell, esegui quanto segue, 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

Creare un bilanciatore del carico delle applicazioni interno regionale

Nei passaggi successivi, utilizzerai la console Cloud per creare il bilanciatore del carico delle applicazioni interne regionali e associare i certificati generati alla configurazione del front-end.

In Cloud Console, vai a:

Servizi di rete → Bilanciamento del carico → Crea bilanciatore del carico

e3474ca153d7c55a.png

Seleziona le seguenti opzioni:

c80afa6a28b6d922.png

Crea la configurazione del backend

Seleziona le seguenti opzioni e personalizza l'ambiente in base al tuo 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

115627dc54d7a582.png

b3eaa88dd02a95c1.png

cf519145f0259061.png

530527bc9273e002.png

Regole di routing

Nessuna configurazione richiesta

53a80d74b3c7dd56.png

Configurazione frontend

29faa25397025fb4.png

538da2b4930d243b.png

bbc13e921681dd65.png

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

abc7d02b4c951c73.png

12. risoluzione DNS

La risoluzione DNS al 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'attivazione della risoluzione DNS on-premise in Google Cloud richiede l'attivazione dei criteri del server in entrata. Quando crei una policy del server in entrata, Cloud DNS crea punti di contatto della policy del server in entrata nella rete VPC a cui viene applicata la policy del server. I punti di contatto dei criteri del server in entrata sono indirizzi IPv4 interni ricavati 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 privata per il dominio personalizzato di Looker, looker.cosmopup.com e un record A composto dall'indirizzo IP del bilanciatore del carico.

13. Creare una zona DNS privata

In Cloud Shell, crea la zona privata 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 composto 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, per abilitare la connettività, è necessario configurare la rete ibrida (ad es. interconnessione, VPN ad alta disponibilità) tra la VPC looker-psc-demo e la rete on-premise.

Di seguito sono riportati i passaggi necessari per stabilire la connettività NEG ibrida con l'on-premise:

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 utilizzato, ad esempio certificato non attendibile o attendibile.

Di seguito è riportato un esempio (certificato non attendibile) di accesso al dominio personalizzato Looker looker.cosmopup.com che ottiene l'accesso northbound all'interfaccia utente di Looker:

ae43d0d0d7136044.png

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 la connettività northbound a Looker utilizzando un dominio cliente e un bilanciatore del carico delle applicazioni interno regionale.

Hai creato l'infrastruttura per i consumatori, hai imparato a creare un NEG PSC, un dominio personalizzato e hai conosciuto le diverse opzioni di certificato. Tante cose interessanti per iniziare a utilizzare Looker.

Cosmopup pensa che i codelab siano fantastici.

c911c127bffdee57.jpeg

Passaggi successivi

Dai un'occhiata ad alcuni di questi codelab…

Letture e video di approfondimento

Documentazione di riferimento