Configura un bilanciatore del carico di rete proxy interno regionale con connettività ibrida

Il bilanciatore del carico di rete proxy interno regionale è un bilanciatore del carico di livello 4 regionale e basato su proxy che ti consente di eseguire e scalare il traffico di servizio TCP dietro un indirizzo IP interno accessibile solo ai client nella stessa rete Virtual Private Cloud (VPC) o ai client connessi alla tua rete VPC. Se vuoi rendere il servizio disponibile per i client di altre reti VPC, puoi utilizzare Private Service Connect per pubblicarlo.

Questa pagina descrive come configurare un bilanciatore del carico di rete proxy interno regionale per bilanciare il carico del traffico verso i backend on-premise o in altri ambienti cloud collegati mediante la connettività ibrida. La configurazione della connettività ibrida per connettere le tue reti a Google Cloud non rientra nell'ambito di questa pagina.

Panoramica

In questo esempio, utilizzeremo il bilanciatore del carico per distribuire il traffico TCP tra le VM di backend situate on-premise o in altri ambienti cloud.

In questo esempio, configurerai il deployment seguente:

Esempio di configurazione del bilanciatore del carico di rete proxy interno regionale con backend NEG ibridi.
Configurazione di esempio del bilanciatore del carico di rete proxy interno regionale con backend NEG ibridi (fai clic per ingrandire).

Il bilanciatore del carico di rete proxy interno regionale è un bilanciatore del carico a livello di regione. Tutti i componenti del bilanciatore del carico (gruppi di istanza di backend, servizio di backend, proxy di destinazione e regola di forwarding) devono trovarsi nella stessa regione.

Autorizzazioni

Per configurare il bilanciamento del carico ibrido, devi disporre delle seguenti autorizzazioni:

  • Su Google Cloud

  • Nel tuo ambiente on-premise o in un altro ambiente cloud non Google Cloud

    • Autorizzazioni per configurare endpoint di rete che consentono ai servizi nel tuo ambiente on-premise o in altri ambienti cloud di essere raggiungibili da Google Cloud utilizzando una combinazione di IP:Port. Per ulteriori informazioni, contatta l'amministratore di rete del tuo ambiente.
    • Autorizzazioni per creare regole firewall nel tuo ambiente on-premise o in altri ambienti cloud, per consentire ai probe di controllo di integrità di Google di raggiungere gli endpoint.

Inoltre, per completare le istruzioni in questa pagina, devi creare un NEG di connettività ibrida, un bilanciatore del carico e NEG di zona (con relativi endpoint) per fungere da backend basati su Google Cloud per il bilanciatore del carico.

Devi essere un Proprietario o un Editor del progetto oppure dovresti avere i seguenti ruoli IAM di Compute Engine.

Attività Ruolo richiesto
Crea reti, subnet e componenti del bilanciatore del carico Amministratore rete Compute (roles/compute.networkAdmin)
Aggiungi e rimuovi regole firewall Amministratore sicurezza Compute (roles/compute.securityAdmin)
Creare istanze Amministratore istanze Compute (roles/compute.instanceAdmin)

Stabilisci la connettività ibrida

Il tuo ambiente Google Cloud e on-premise o altri ambienti cloud devono essere connessi tramite connettività ibrida utilizzando collegamenti VLAN per Cloud Interconnect o tunnel Cloud VPN con il router Cloud. Ti consigliamo di utilizzare una connessione ad alta disponibilità.

Un router Cloud abilitato con il routing dinamico globale apprende l'endpoint specifico tramite il protocollo BGP (Border Gateway Protocol) e lo programma nella rete VPC di Google Cloud. Il routing dinamico a livello di regione non è supportato. Anche le route statiche non sono supportate.

La rete VPC che utilizzi per configurare Cloud Interconnect o Cloud VPN è la stessa che utilizzi per configurare il deployment del bilanciamento del carico ibrido. Assicurati che gli intervalli CIDR della subnet della tua rete VPC non siano in conflitto con gli intervalli CIDR remoti. Quando gli indirizzi IP si sovrappongono, le route di subnet hanno la priorità sulla connettività remota.

Per istruzioni, consulta la seguente documentazione:

Configura un ambiente esterno a Google Cloud

Completa i seguenti passaggi per configurare il tuo ambiente on-premise o un altro ambiente cloud per il bilanciamento del carico ibrido:

  • Configura gli endpoint di rete per esporre servizi on-premise su Google Cloud (IP:Port).
  • Configura le regole firewall sul tuo ambiente on-premise o su altri ambienti cloud.
  • Configura il router Cloud per pubblicizzare determinate route richieste al tuo ambiente privato.

Configura gli endpoint di rete

Dopo aver impostato la connettività ibrida, configurerai uno o più endpoint di rete all'interno del tuo ambiente on-premise o di altri ambienti cloud raggiungibili tramite Cloud Interconnect o Cloud VPN utilizzando una combinazione IP:port. Questa combinazione IP:port è configurata come uno o più endpoint per il NEG di connettività ibrida creato in Google Cloud più avanti in questo processo.

Se sono presenti più percorsi per l'endpoint IP, il routing segue il comportamento descritto nella panoramica sul router Cloud.

Configura le regole firewall

Le seguenti regole firewall devono essere create nel tuo ambiente on-premise o in un altro ambiente cloud:

  • Crea una regola firewall di autorizzazione in entrata in ingresso in ambienti on-premise o in altri ambienti cloud per consentire al traffico proveniente dalla subnet solo proxy della regione di raggiungere gli endpoint.
  • La lista consentita degli intervalli di probe del controllo di integrità di Google non è necessaria per i NEG ibridi. Tuttavia, se utilizzi una combinazione di NEG ibridi e di zona in un unico servizio di backend, devi inserire nella lista consentita gli intervalli del probe del controllo di integrità di Google per i NEG di zona.

Configura il router Cloud per pubblicizzare i seguenti intervalli IP personalizzati nel tuo ambiente on-premise o in un altro ambiente cloud:

  • L'intervallo della subnet solo proxy della regione.

Configura il tuo ambiente Google Cloud

Per i passaggi seguenti, assicurati di utilizzare la stessa rete VPC (chiamata NETWORK in questa procedura) che è stata utilizzata per configurare la connettività ibrida tra gli ambienti. Puoi selezionare qualsiasi subnet da questa rete per prenotare l'indirizzo IP del bilanciatore del carico e creare il bilanciatore del carico. In questa procedura, questa subnet è denominata LB_SUBNET.

Inoltre, assicurati che la regione utilizzata (chiamata REGION in questa procedura) sia la stessa utilizzata per creare il tunnel Cloud VPN o il collegamento VLAN di Cloud Interconnect.

Configura la subnet solo proxy

Una subnet solo proxy fornisce un insieme di indirizzi IP che Google utilizza per eseguire i proxy Envoy per tuo conto. I proxy terminano le connessioni dal client e creano nuove connessioni ai backend.

La subnet solo proxy viene utilizzata da tutti i bilanciatori del carico a livello di regione basati su Envoy nella regione REGION della rete VPC NETWORK.

Può esistere una sola subnet solo proxy attiva per regione, per ogni rete VPC. Puoi saltare questo passaggio se esiste già una subnet solo proxy in questa regione.

Console

Se utilizzi la console Google Cloud, puoi attendere e creare la subnet solo proxy in un secondo momento nella pagina Bilanciamento del carico.

Se vuoi creare subito una subnet solo proxy, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Vai alla rete usata per configurare la connettività ibrida tra gli ambienti.

  3. Fai clic su Aggiungi subnet.

  4. Inserisci un Nome: PROXY_ONLY_SUBNET_NAME.

  5. Seleziona una regione: REGION.

  6. Imposta Scopo su Proxy gestito a livello di regione.

  7. Inserisci un intervallo di indirizzi IP: PROXY_ONLY_SUBNET_RANGE.

  8. Fai clic su Aggiungi.

gcloud

Crea la subnet solo proxy con il comando gcloud compute networks subnets create.

gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \
    --purpose=REGIONAL_MANAGED_PROXY \
    --role=ACTIVE \
    --region=REGION \
    --network=NETWORK \
    --range=PROXY_ONLY_SUBNET_RANGE

Prenota l'indirizzo IP del bilanciatore del carico

Per impostazione predefinita, viene utilizzato un indirizzo IP per ogni regola di forwarding. Puoi prenotare un indirizzo IPv4 condiviso, che consente di utilizzare lo stesso indirizzo IPv4 con più regole di forwarding. Tuttavia, se vuoi utilizzare Private Service Connect per pubblicare il bilanciatore del carico, non utilizzare un indirizzo IPv4 condiviso per la regola di forwarding.

Per prenotare un indirizzo IPv4 interno statico per il bilanciatore del carico, consulta Prenotare un nuovo indirizzo IPv4 o IPv6 interno statico.

Configura il NEG di connettività ibrida

Quando crei il NEG, utilizza un ZONE che riduce al minimo la distanza geografica tra Google Cloud e il tuo ambiente on-premise o un altro ambiente cloud. Ad esempio, se ospiti un servizio in un ambiente on-premise a Francoforte, in Germania, puoi specificare la zona Google Cloud europe-west3-a quando crei il NEG.

Inoltre, l'elemento ZONE utilizzato per creare il NEG deve trovarsi nella stessa regione in cui è stato configurato il tunnel Cloud VPN o il collegamento VLAN per Cloud Interconnect per la connettività ibrida.

Per le regioni e le zone disponibili, consulta la documentazione di Compute Engine: Regioni e zone disponibili.

Console

Per creare un NEG di connettività ibrida:

  1. Nella console Google Cloud, vai alla pagina Gruppi di endpoint di rete.

    Vai a Gruppi di endpoint di rete

  2. Fai clic su Crea gruppo di endpoint di rete.

  3. Inserisci un nome per il NEG ibrido. Denominato HYBRID_NEG_NAME in questa procedura.

  4. Seleziona Tipo di gruppo di endpoint di rete: Gruppo di endpoint di rete con connettività ibrida (a livello di zona).

  5. Seleziona la Rete: NETWORK

  6. Seleziona la Subnet: LB_SUBNET

  7. Seleziona la Zona: HYBRID_NEG_ZONE

  8. Inserisci la Porta predefinita.

  9. Fai clic su Crea.

Aggiungi endpoint al NEG di connettività ibrida:

  1. Nella console Google Cloud, vai alla pagina Gruppi di endpoint di rete.

    Vai a Gruppi di endpoint di rete

  2. Fai clic sul Nome del gruppo di endpoint di rete creato nel passaggio precedente (HYBRID_NEG_NAME). Verrà visualizzata la pagina Dettagli gruppo di endpoint di rete.

  3. Nella sezione Endpoint di rete in questo gruppo, fai clic su Aggiungi endpoint di rete. Viene visualizzata la pagina Aggiungi endpoint di rete.

  4. Inserisci l'indirizzo IP del nuovo endpoint di rete.

  5. Seleziona il Tipo di porta.

    1. Se selezioni Predefinita, l'endpoint utilizza la porta predefinita per tutti gli endpoint nel gruppo di endpoint di rete.
    2. Se selezioni Personalizzato, puoi inserire un Numero di porta diverso da utilizzare per l'endpoint.
  6. Per aggiungere altri endpoint, fai clic su Aggiungi endpoint di rete e ripeti i passaggi precedenti.

  7. Dopo aver aggiunto tutti gli endpoint non Google Cloud, fai clic su Crea.

gcloud

  1. Crea un NEG di connettività ibrida utilizzando il comando gcloud compute network-endpoint-groups create.

    gcloud compute network-endpoint-groups create HYBRID_NEG_NAME \
       --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
       --zone=HYBRID_NEG_ZONE \
       --network=NETWORK
    
  2. Aggiungi l'endpoint IP:Port on-premise al NEG ibrido:

    gcloud compute network-endpoint-groups update HYBRID_NEG_NAME \
        --zone=HYBRID_NEG_ZONE \
        --add-endpoint="ip=ENDPOINT_IP_ADDRESS,port=ENDPOINT_PORT"
    

Puoi utilizzare questo comando per aggiungere gli endpoint di rete configurati in precedenza on-premise o nel tuo ambiente cloud. Ripeti --add-endpoint tutte le volte necessarie.

Puoi ripetere questi passaggi per creare più NEG ibridi, se necessario.

configura il bilanciatore del carico

Console

Avvia la configurazione

  1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

    Vai a Bilanciamento del carico

  2. Fai clic su Crea bilanciatore del carico.
  3. In Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
  4. Per Proxy o passthrough, seleziona Bilanciatore del carico del proxy e fai clic su Avanti.
  5. In Pubblico o interno, seleziona Interno e fai clic su Avanti.
  6. In Deployment in più regioni o in una singola regione, seleziona Ideale per carichi di lavoro a livello di regione e fai clic su Avanti.
  7. Fai clic su Configura.

Configurazione di base

  1. Inserisci un nome per il bilanciatore del carico.
  2. Seleziona la Regione: REGION.
  3. Seleziona la Rete: NETWORK.

Prenota una subnet solo proxy

Per prenotare una subnet solo proxy:

  1. Fai clic su Prenota subnet.
  2. Inserisci il Nome: PROXY_ONLY_SUBNET_NAME.
  3. Inserisci un intervallo di indirizzi IP: PROXY_ONLY_SUBNET_RANGE.
  4. Fai clic su Aggiungi.

Configurazione backend

  1. Fai clic su Configurazione backend.
  2. In Tipo di backend, seleziona Gruppo di endpoint di rete con connettività ibrida (a livello di zona).
  3. In Protocollo, seleziona TCP.
  4. In Nuovo backend, seleziona il NEG ibrido creato in precedenza: HYBRID_NEG_NAME. In alternativa, puoi fare clic su Crea un gruppo di endpoint di rete per creare subito il NEG ibrido. Per indicazioni sulla configurazione del NEG, consulta Configurare il NEG ibrido.
  5. Mantieni i valori predefiniti rimanenti e fai clic su Fine.
  6. Configura il controllo di integrità:
    1. In Controllo di integrità, seleziona Crea un controllo di integrità.
    2. Inserisci un nome per il controllo di integrità.
    3. In Protocollo, seleziona TCP.
    4. In Porta, inserisci 80.
  7. Mantieni i valori predefiniti rimanenti e fai clic su Salva.
  8. Nella console Google Cloud, verifica che sia presente un segno di spunta accanto a Configurazione backend. In caso contrario, assicurati di aver completato tutti i passaggi.

Configurazione frontend

  1. Fai clic su Configurazione frontend.
  2. Inserisci un nome per la regola di forwarding.
  3. Per Subnet, seleziona LB_SUBNET.
  4. Per Indirizzo IP, seleziona LB_IP_ADDRESS.
  5. In Numero porta, inserisci un numero di porta compreso tra 1 e 65535. La regola di forwarding inoltra solo i pacchetti con una porta di destinazione corrispondente.
  6. Abilita il protocollo proxy solo se funziona con il servizio in esecuzione sull'endpoint on-premise o su altri endpoint cloud. Ad esempio, il protocollo PROXY non funziona con il software Apache HTTP Server. Per ulteriori informazioni, consulta Protocollo proxy.
  7. Fai clic su Fine.
  8. Nella console Google Cloud, verifica che sia presente un segno di spunta accanto a Configurazione frontend. In caso contrario, assicurati di aver completato tutti i passaggi precedenti.

Esamina e finalizza

  1. Fai clic su Esamina e finalizza.
  2. Controlla le impostazioni.
  3. Fai clic su Crea.

gcloud

  1. Crea un controllo di integrità a livello di regione per i backend.

    gcloud compute health-checks create tcp TCP_HEALTH_CHECK_NAME \
        --region=REGION \
        --use-serving-port
    

    I probe del controllo di integrità per i backend NEG ibridi provengono da proxy Envoy nella subnet solo proxy.

  2. Crea un servizio di backend.

    gcloud compute backend-services create BACKEND_SERVICE_NAME \
       --load-balancing-scheme=INTERNAL_MANAGED \
       --protocol=TCP \
       --region=REGION \
       --health-checks=TCP_HEALTH_CHECK_NAME \
       --health-checks-region=REGION
    
  3. Aggiungi il backend del NEG ibrido al servizio di backend.

    gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
       --network-endpoint-group=HYBRID_NEG_NAME \
       --network-endpoint-group-zone=HYBRID_NEG_ZONE \
       --region=REGION \
       --balancing-mode=CONNECTION \
       --max-connections=MAX_CONNECTIONS
    

    Per MAX_CONNECTIONS, inserisci il numero massimo di connessioni simultanee che il backend deve gestire.

  4. Crea il proxy TCP di destinazione.

    gcloud compute target-tcp-proxies create TARGET_TCP_PROXY_NAME \
       --backend-service=BACKEND_SERVICE_NAME \
       --region=REGION
    
  5. Crea la regola di forwarding.

    Crea la regola di forwarding utilizzando il comando gcloud compute forwarding-rules create.

    Sostituisci FWD_RULE_PORT con un singolo numero di porta compreso tra 1 e 65535. La regola di forwarding inoltra solo i pacchetti con una porta di destinazione corrispondente.

    gcloud compute forwarding-rules create FORWARDING_RULE \
       --load-balancing-scheme=INTERNAL_MANAGED \
       --network=NETWORK \
       --subnet=LB_SUBNET \
       --address=LB_IP_ADDRESS \
       --ports=FWD_RULE_PORT \
       --region=REGION \
       --target-tcp-proxy=TARGET_TCP_PROXY_NAME \
       --target-tcp-proxy-region=REGION
    

Testa il bilanciatore del carico

Per testare il bilanciatore del carico, crea una VM client nella stessa regione del bilanciatore del carico. quindi invia il traffico dal client al bilanciatore del carico.

Crea una VM client

Crea una VM client (client-vm) nella stessa regione del bilanciatore del carico.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic su Crea istanza.

  3. Imposta Nome su client-vm.

  4. Imposta Zona su CLIENT_VM_ZONE.

  5. Fai clic su Opzioni avanzate.

  6. Fai clic su Networking e configura i seguenti campi:

    1. In Tag di rete, inserisci allow-ssh.
    2. In Interfacce di rete, seleziona quanto segue:
      • Rete: NETWORK
      • Subnet: LB_SUBNET
  7. Fai clic su Crea.

gcloud

La VM client deve trovarsi nella stessa rete VPC e nella stessa regione del bilanciatore del carico. Non deve trovarsi nella stessa subnet o zona. Il client utilizza la stessa subnet delle VM di backend.

gcloud compute instances create client-vm \
    --zone=CLIENT_VM_ZONE \
    --image-family=debian-10 \
    --image-project=debian-cloud \
    --tags=allow-ssh \
    --subnet=LB_SUBNET

Consenti il traffico SSH alla VM di test

In questo esempio, creerai la regola firewall seguente:

  • fw-allow-ssh: una regola in entrata che consente la connettività SSH in entrata sulla porta TCP 22 da qualsiasi indirizzo. Puoi scegliere un intervallo IP di origine più restrittivo per questa regola; ad esempio, puoi specificare solo gli intervalli IP dei sistemi da cui avvii le sessioni SSH. Questo esempio utilizza il tag di destinazione allow-ssh per identificare la VM del client di test a cui deve essere applicato.

Console

  1. Nella console Google Cloud, vai alla pagina Criteri firewall. Vai a Criteri firewall
  2. Fai clic su Crea regola firewall per creare la regola che consenta le connessioni SSH in entrata:
    1. Nome: fw-allow-ssh
    2. Rete: NETWORK
    3. Priorità: 1000
    4. Direzione del traffico: in entrata
    5. Azione in caso di corrispondenza: consenti
    6. Target: Tag di destinazione specificati
    7. Tag di destinazione: allow-ssh
    8. Filtro di origine: intervalli IPv4
    9. Intervalli IPv4 di origine: 0.0.0.0/0
    10. Protocolli e porte: scegli Protocolli e porte specificati, quindi inserisci tcp:22.
    11. Fai clic su Crea.

gcloud

  1. Crea la regola firewall fw-allow-ssh per consentire la connettività SSH alle VM con il tag di rete allow-ssh.

    gcloud compute firewall-rules create fw-allow-ssh \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-ssh \
        --rules=tcp:22
    

Invia traffico al bilanciatore del carico

Ora che hai configurato il bilanciatore del carico, puoi testare l'invio del traffico all'indirizzo IP del bilanciatore del carico.

  1. Connettiti tramite SSH all'istanza client.

    gcloud compute ssh client-vm \
      --zone=CLIENT_VM_ZONE
    
  2. Verifica che il bilanciatore del carico fornisca i nomi host di backend come previsto.

    1. Utilizza il comando compute addresses describe per visualizzare l'indirizzo IP del bilanciatore del carico:

      gcloud compute addresses describe LB_IP_ADDRESS \
        --region=REGION
      

      Prendi nota dell'indirizzo IP.

    2. Invia il traffico al bilanciatore del carico sull'indirizzo IP e sulla porta specificate durante la creazione della regola di forwarding del bilanciatore del carico. Verificare se i backend NEG ibridi rispondono alle richieste dipende dal servizio in esecuzione sugli endpoint non Google Cloud.

(Facoltativo) Pubblica il servizio utilizzando Private Service Connect

Un bilanciatore del carico di rete proxy interno regionale con connettività ibrida consente di rendere disponibile per i client della tua rete VPC un servizio ospitato in ambienti on-premise o cloud.

Se vuoi rendere il servizio ibrido disponibile in altre reti VPC, puoi utilizzare Private Service Connect per pubblicare il servizio. Posizionando il collegamento a un servizio davanti al bilanciatore del carico di rete proxy interno regionale, puoi consentire ai client di altre reti VPC di raggiungere i servizi ibridi in esecuzione in ambienti on-premise o in altri ambienti cloud.

Utilizzo di Private Service Connect per pubblicare un servizio ibrido.
Utilizzo di Private Service Connect per pubblicare un servizio ibrido (fai clic per ingrandire).

Passaggi successivi