Configura un bilanciatore del carico delle applicazioni interno regionale con connettività ibrida

Questa pagina illustra come eseguire il deployment di un bilanciatore del carico delle applicazioni interno regionale per il bilanciamento del carico il traffico verso gli endpoint di rete che sono on-premise o in altri cloud pubblici sono raggiungibili tramite la connettività ibrida.

Se non lo hai già fatto, esamina la sezione NEG di connettività ibrida panoramica per comprendere requisiti di rete per configurare il bilanciamento del carico ibrido.

Panoramica della configurazione

L'esempio in questa pagina configura il seguente deployment:

Esempio di bilanciatore del carico delle applicazioni interno regionale per la connettività ibrida.
Esempio di bilanciatore del carico delle applicazioni interno regionale per la connettività ibrida (fai clic per ingrandire).

Devi configurare la connettività ibrida prima di configurarne uno con il deployment del bilanciamento del carico. Questa pagina non include la connettività ibrida setup.

A seconda del prodotto per la connettività ibrida che scegli ( Cloud VPN o Cloud Interconnect (dedicato o partner), utilizza la relativa documentazione.

Autorizzazioni

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

  • Su Google Cloud

    • Autorizzazioni per stabilire la connettività ibrida tra Google Cloud e dell'ambiente on-premise o di altri ambienti cloud. Per l'elenco delle autorizzazioni necessarie, consulta il prodotto documentazione.
    • Autorizzazioni per creare un NEG di connettività ibrida e il bilanciatore del carico. L'amministratore del bilanciatore del carico Compute ruolo (roles/compute.loadBalancerAdmin) contiene le autorizzazioni necessarie per eseguire le attività descritte in questa guida.
  • Nel tuo ambiente on-premise o in un altro ambiente cloud non Google Cloud

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

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

Devi essere un proprietario del progetto o Editor, oppure dovresti avere secondo IAM di Compute Engine ruoli.

Attività Ruolo richiesto
Creazione di 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)
Creazione delle istanze Amministratore istanze Compute (roles/compute.instanceAdmin)

Stabilisci la connettività ibrida

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

Un router Cloud con funzionalità dinamiche globali calcolo itinerario apprende l'endpoint specifico tramite il Border Gateway Protocol (BGP) la programmi nella tua rete VPC di Google Cloud. A livello di regione il routing dinamico non è supportato. Anche le route statiche non sono supportate.

La rete VPC che utilizzi per configurare Cloud Interconnect o Cloud VPN è la stessa rete che utilizzerai 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 con priorità rispetto alla connettività remota.

Per istruzioni, consulta la seguente documentazione:

Configura l'ambiente esterno a Google Cloud

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

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

Configura gli endpoint di rete

Dopo aver configurato la connettività ibrida, devi configurare uno più endpoint di rete all'interno dell'ambiente on-premise o di altri ambienti cloud che sono raggiungibili tramite Cloud Interconnect o Cloud VPN utilizzando un Combinazione IP:port. Questa combinazione IP:port è configurata come uno o più endpoint per il NEG di connettività ibrida creato Google Cloud più avanti in questo processo.

Se sono presenti più percorsi all'endpoint IP, segue il comportamento descritto in Router Cloud Panoramica.

Configura le regole firewall

Devi creare le seguenti regole firewall nel tuo ambiente on-premise o altro ambiente cloud:

  • Crea una regola firewall di autorizzazione in entrata in ambienti on-premise o in un altro cloud per consentire il traffico proveniente dall'ambiente una subnet solo proxy a raggiungere gli endpoint.
  • Non è necessario aggiungere gli intervalli di probe del controllo di integrità di Google a una lista consentita per gli ambienti ibridi NEG. Tuttavia, se utilizzi una combinazione di NEG ibridi e a livello di zona un unico servizio di backend, devi aggiungere la classe Google intervalli di probe del controllo di integrità a una lista consentita per i NEG a livello di zona.

Configura il router Cloud per pubblicizzare il seguente indirizzo IP personalizzato intervallo di date ambiente on-premise o un altro ambiente cloud:

  • L'intervallo della subnet solo proxy della regione.

Configura l'ambiente Google Cloud

Per i passaggi seguenti, assicurati di utilizzare la stessa rete VPC (denominato NETWORK in questa procedura) è stato utilizzato per configurare la connettività ibrida tra gli ambienti.

Inoltre, assicurati che la regione utilizzata (chiamata REGION in questo ) è la stessa utilizzata per creare il tunnel Cloud VPN Collegamento VLAN di Cloud Interconnect.

Configura la subnet solo proxy

Questa subnet solo proxy viene utilizzata per tutti i bilanciatori del carico basati su Envoy a livello di regione in regione REGION.

Console

  1. Nella console Google Cloud, vai alla pagina Reti VPC.
    Vai alle reti VPC
  2. Vai alla rete utilizzata per la configurazione e 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 Purpose su Regional Managed Proxy (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

Configura la subnet del bilanciatore del carico

Questa subnet viene utilizzata per creare i backend NEG a livello di zona del bilanciatore del carico, il frontend e l'indirizzo IP interno.

console Cloud

  1. Nella console Google Cloud, vai alla pagina Reti VPC.
    Vai alle reti VPC
  2. Vai alla rete utilizzata per configurare l'ibrido e la connettività tra gli ambienti.
  3. Nella sezione Subnet:
      .
    • Imposta Modalità di creazione subnet su Personalizzata.
    • Nella sezione Nuova subnet, inserisci le informazioni seguenti:
        .
      • Nome: LB_SUBNET_NAME
      • Regione: REGION
      • Intervallo di indirizzi IP: LB_SUBNET_RANGE
    • Fai clic su Fine.
  4. Fai clic su Crea.

gcloud

  1. Crea una subnet nella rete utilizzata per configurare la connettività ibrida tra gli ambienti.

    gcloud compute networks subnets create LB_SUBNET_NAME \
        --network=NETWORK \
        --range=LB_SUBNET_RANGE \
        --region=REGION
    

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 IP condiviso, che ti consente di utilizzare lo stesso indirizzo IP con più regole di forwarding. Tuttavia, se vuoi pubblicare il bilanciatore del carico utilizzando Private Service Connect, Non utilizzare un indirizzo IP condiviso per la regola di forwarding.

Console

Puoi prenotare un indirizzo IP interno autonomo utilizzando nella console Google Cloud.

  1. Vai alla pagina Reti VPC.

    Vai alle reti VPC

  2. Fai clic sulla rete utilizzata per la configurazione e la connettività ibrida tra gli ambienti.
  3. Fai clic su Indirizzi IP interni statici, quindi fai clic su Prenota un indirizzo statico.
  4. Inserisci un Nome: LB_IP_ADDRESS.
  5. In corrispondenza di Subnet, seleziona LB_SUBNET_NAME.
  6. Se vuoi specificare l'indirizzo IP da prenotare, in IP statico indirizzo, seleziona Fammi scegliere, quindi inserisci una casella Indirizzo IP. In caso contrario, il sistema assegna automaticamente un indirizzo IP nella subnet.
  7. Se vuoi utilizzare questo indirizzo IP con più regole di forwarding, in Scopo: scegli Condiviso.
  8. Per terminare la procedura, fai clic su Prenota.

gcloud

  1. Utilizzando gcloud CLI, esegui Comando compute addresses create:

    gcloud compute addresses create LB_IP_ADDRESS \
      --region=REGION \
      --subnet=LB_SUBNET_NAME \
    
  2. Utilizza la compute addresses describe comando per visualizzare l'indirizzo IP allocato:

    gcloud compute addresses describe LB_IP_ADDRESS \
      --region=REGION
    

    Se vuoi utilizzare lo stesso indirizzo IP con più regole di forwarding, specificare --purpose=SHARED_LOADBALANCER_VIP.

Crea regole firewall per i NEG a livello di zona

In questo esempio, crei le seguenti regole firewall per il NEG a livello di zona su Google Cloud:

  • fw-allow-health-check: una regola in entrata, applicabile al con bilanciamento del carico, il che consente il traffico Sistemi di controllo di integrità di Google Cloud (130.211.0.0/22 e 35.191.0.0/16). Questo esempio utilizza il tag di destinazione allow-health-check per a identificare le VM di backend a cui deve essere applicata. Non è necessario aggiungere gli intervalli di probe del controllo di integrità di Google a una lista consentita per gli ambienti ibridi NEG. Tuttavia, se utilizzi una combinazione di NEG ibridi e a livello di zona un unico servizio di backend, devi aggiungere la classe Google intervalli di probe del controllo di integrità a una lista consentita per i NEG a livello di zona.
  • fw-allow-ssh: una regola in entrata che consente la connettività SSH in entrata su TCP alla porta 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 avvierai le sessioni SSH. Questo esempio utilizza il tag di destinazione allow-ssh per identificare le VM a cui deve essere applicata.
  • fw-allow-proxy-only-subnet: una regola in entrata che consente connessioni dal una subnet solo proxy per raggiungere i backend.

Console

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.
    Vai ai criteri firewall
  2. Fai clic su Crea regola firewall per creare la regola che consenta il traffico da probe del controllo di integrità:
      .
    1. Inserisci fw-allow-health-check come nome.
    2. In Rete, seleziona NETWORK.
    3. In Target, seleziona Tag di destinazione specificati.
    4. Compila il campo Tag di destinazione con allow-health-check.
    5. Imposta Filtro di origine su Intervalli IPv4.
    6. Imposta Intervalli IPv4 di origine su 130.211.0.0/22 e 35.191.0.0/16.
    7. In Protocolli e porte, seleziona Protocolli e porte specificati porte.
    8. Seleziona TCP e inserisci 80 per il numero di porta.
    9. Fai clic su Crea.
  3. Fai di nuovo clic su Crea regola firewall per creare la regola e consentire l'accesso Connessioni SSH:
      .
    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.
    11. Seleziona TCP e inserisci 22 per il numero di porta.
    12. Fai clic su Crea.
  4. Fai di nuovo clic su Crea regola firewall per creare la regola e consentire l'accesso connessioni dalla subnet solo proxy:
      .
    1. Nome: fw-allow-proxy-only-subnet
    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-proxy-only-subnet
    8. Filtro di origine: Intervalli IPv4
    9. Intervalli IPv4 di origine: PROXY_ONLY_SUBNET_RANGE
    10. Protocolli e porte: scegli Protocolli e porte specificati
    11. Seleziona TCP e inserisci 80 per il numero di porta.
    12. Fai clic su Crea.

gcloud

  1. Crea la regola fw-allow-health-check-and-proxy per consentire i controlli di integrità di Google Cloud per raggiungere di backend sulla porta TCP 80:

    gcloud compute firewall-rules create fw-allow-health-check \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80
    
  2. Crea la regola firewall fw-allow-ssh per consentire la connettività SSH a VM con il tag di rete allow-ssh. Se ometti source-ranges, Google Cloud interpreta la regola nel significato che Fonte.

    gcloud compute firewall-rules create fw-allow-ssh \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-ssh \
        --rules=tcp:22
    
  3. Crea una regola firewall di autorizzazione in entrata per la subnet solo proxy per consentire al bilanciatore del carico per comunicare con le istanze di backend sulla porta TCP 80:

    gcloud compute firewall-rules create fw-allow-proxy-only-subnet \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-proxy-only-subnet \
        --source-ranges=PROXY_ONLY_SUBNET_RANGE \
        --rules=tcp:80
    

Configura il NEG a livello di zona

Per i backend basati su Google Cloud, consigliamo di configurare più istanze NEG nella stessa regione in cui hai configurato ibrido per la connettività.

Per questo esempio, abbiamo configurato un NEG a livello di zona (con endpoint di tipo GCE_VM_IP_PORT) nella regione REGION. Per prima cosa, crea le VM la zona GCP_NEG_ZONE. Poi crea un NEG a livello di zona nello stesso GCP_NEG_ZONE aggiungi le VM di rete al NEG.

Crea VM

Console

  1. Vai alla pagina Istanze VM nella console Google Cloud.
    Vai a Istanze VM
  2. Fai clic su Crea istanza.
  3. Imposta il Nome su vm-a1.
  4. In corrispondenza di Regione, scegli REGION e qualsiasi Zona. Ci riferiremo a questo indirizzo come GCP_NEG_ZONE in questa procedura.
  5. Nella sezione Disco di avvio, assicurati che Per il disco di avvio è selezionata l'opzione Debian GNU/Linux 12 (bookworm) le opzioni di CPU e memoria disponibili. Fai clic su Scegli per modificare l'immagine, se necessario.
  6. Fai clic su Opzioni avanzate e apporta le seguenti modifiche:

    • Fai clic su Networking e aggiungi i seguenti tag di rete: allow-ssh, allow-health-check e allow-proxy-only-subnet.
    • Fai clic su Modifica in Interfacce di rete e apporta le seguenti modifiche, poi fai clic su Fine:
      • Rete: NETWORK
      • Subnet: LB_SUBNET_NAME
      • IP interno principale: Temporaneo (automatico)
      • IP esterno: Temporaneo
    • Fai clic su Gestione. Nel campo Script di avvio, copia e incolla i seguenti contenuti dello script. I contenuti dello script sono identici tutte e quattro le VM:

      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" \
      http://metadata.google.internal/computeMetadata/v1/instance/name)"
      echo "Page served from: $vm_hostname" | \
      tee /var/www/html/index.html
      systemctl restart apache2
      
  7. Fai clic su Crea.

  8. Ripeti i passaggi seguenti per creare una seconda VM, utilizzando quanto segue: combinazione di nome e zona:

    • Nome: vm-a2, zona: GCP_NEG_ZONE

gcloud

Crea le VM eseguendo questo comando due volte, utilizzando queste combinazioni per il nome della VM e della sua zona. La i contenuti dello script sono identici per entrambe le VM.

  • VM_NAME di vm-a1 e qualsiasi zona GCP_NEG_ZONE di la tua scelta
  • VM_NAME di vm-a2 e la stessa zona GCP_NEG_ZONE

    gcloud compute instances create VM_NAME \
        --zone=GCP_NEG_ZONE \
        --image-family=debian-10 \
        --image-project=debian-cloud \
        --tags=allow-ssh,allow-health-check,allow-proxy-only-subnet \
        --subnet=LB_SUBNET_NAME \
        --metadata=startup-script='#! /bin/bash
          apt-get update
          apt-get install apache2 -y
          a2ensite default-ssl
          a2enmod ssl
          vm_hostname="$(curl -H "Metadata-Flavor:Google" \
          http://metadata.google.internal/computeMetadata/v1/instance/name)"
          echo "Page served from: $vm_hostname" | \
          tee /var/www/html/index.html
          systemctl restart apache2'
    

Crea il NEG a livello di zona

Console

Per creare un gruppo di endpoint di rete a livello di zona:

  1. Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
    Vai alla pagina Gruppi di endpoint di rete
  2. Fai clic su Crea gruppo di endpoint di rete.
  3. Inserisci un nome per il NEG a livello di zona. Definito come GCP_NEG_NAME in questo .
  4. Seleziona il Tipo di gruppo di endpoint di rete: Gruppo di endpoint di rete. (a livello di zona).
  5. Seleziona la rete: NETWORK
  6. Seleziona la Subnet: LB_SUBNET_NAME
  7. Seleziona la zona: GCP_NEG_ZONE
  8. Inserisci il valore in Porta predefinita: 80.
  9. Fai clic su Crea.

Aggiungi endpoint al NEG di zona:

  1. Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
    Vai ai gruppi di endpoint di rete
  2. Fai clic sul nome del gruppo di endpoint di rete creato nella precedente (GCP_NEG_NAME). Tu consulta la pagina Dettagli gruppo di endpoint di rete.
  3. Nella sezione Endpoint di rete in questo gruppo, fai clic su Aggiungi rete endpoint. Viene visualizzata la pagina Aggiungi endpoint di rete.
  4. Seleziona un'istanza VM per aggiungere i relativi indirizzi IP interni come rete endpoint. Nella sezione Interfaccia di rete, il nome, la zona e la subnet della VM.
  5. Nel campo Indirizzo IPv4, inserisci l'indirizzo IPv4 della nuova rete endpoint.
  6. Seleziona il Tipo di porta.
    1. Se selezioni Predefinita, l'endpoint utilizza la porta predefinita 80 per tutti gli endpoint nel gruppo di endpoint di rete. È sufficiente del nostro esempio, perché il server Apache gestisce le richieste porta 80.
    2. Se selezioni Personalizzato, inserisci il Numero di porta per l'endpoint per l'utilizzo.
  7. Per aggiungere altri endpoint, fai clic su Aggiungi endpoint di rete e ripeti il comando passaggi precedenti.
  8. Dopo aver aggiunto tutti gli endpoint, fai clic su Crea.

gcloud

  1. Crea un NEG a livello di zona (con GCE_VM_IP_PORT endpoint) utilizzando gcloud compute network-endpoint-groups create :

    gcloud compute network-endpoint-groups create GCP_NEG_NAME \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=GCP_NEG_ZONE \
        --network=NETWORK \
        --subnet=LB_SUBNET_NAME
    

    Puoi specificare un --default-port durante la creazione del NEG, oppure specifica un numero di porta per ogni endpoint come mostrato nel passaggio successivo.

  2. Aggiungi endpoint a GCP_NEG_NAME.

    gcloud compute network-endpoint-groups update GCP_NEG_NAME \
        --zone=GCP_NEG_ZONE \
        --add-endpoint='instance=vm-a1,port=80' \
        --add-endpoint='instance=vm-a2,port=80'
    

Configura il NEG di connettività ibrida

Quando crei il NEG, utilizza un ZONE che riduca al minimo il traffico geografico distanza tra Google Cloud e la tua rete on-premise o un altro completamente gestito di Google Cloud. Ad esempio, se ospiti un servizio in un ambiente on-premise a Francoforte, in Germania, puoi specificare l'ambiente europe-west3-a zona Google Cloud quando crei il NEG.

Inoltre, se utilizzi Cloud Interconnect, il valore ZONE utilizzato per creare il NEG deve trovarsi nella stessa regione in cui Il collegamento Cloud Interconnect è stato configurato.

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

Console

Per creare un gruppo di endpoint di rete con connettività ibrida:

  1. Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
    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. Definito come ON_PREM_NEG_NAME in questo .
  4. Seleziona il Tipo di gruppo di endpoint di rete: Rete con connettività ibrida gruppo di endpoint (a livello di zona).
  5. Seleziona la Rete: NETWORK
  6. Seleziona la Subnet: LB_SUBNET_NAME
  7. Seleziona la zona: ON_PREM_NEG_ZONE.
  8. Inserisci la Porta predefinita.
  9. Fai clic su Crea

Aggiungi endpoint al NEG di connettività ibrida:

  1. Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
    Vai alla pagina Gruppi di endpoint di rete
  2. Fai clic sul nome del gruppo di endpoint di rete creato nella precedente (ON_PREM_NEG_NAME). Tu consulta la pagina Dettagli gruppo di endpoint di rete.
  3. Nella sezione Endpoint di rete in questo gruppo, fai clic su Aggiungi rete endpoint. 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 per l'endpoint.
  6. Per aggiungere altri endpoint, fai clic su Aggiungi endpoint di rete e ripeti il comando 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 gcloud compute network-endpoint-groups create .

    gcloud compute network-endpoint-groups create ON_PREM_NEG_NAME \
        --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
        --zone=ON_PREM_NEG_ZONE \
        --network=NETWORK
    
  2. Aggiungi l'endpoint VM di backend on-premise a ON_PREM_NEG_NAME:

    gcloud compute network-endpoint-groups update ON_PREM_NEG_NAME \
        --zone=ON_PREM_NEG_ZONE \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_1,port=PORT_1" \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_2,port=PORT_2"
    

Puoi utilizzare questo comando per aggiungere gli endpoint di rete che hai usato in precedenza configurate on-premise o nel cloud. Ripeti --add-endpoint tutte le volte necessarie.

Se necessario, puoi ripetere questi passaggi per creare più NEG ibridi.

Configura il bilanciatore del carico

Console

gcloud

  1. Crea un controllo di integrità per i backend.
       gcloud compute health-checks create http HTTP_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, mentre i probe per i backend NEG a livello di zona provengono dalla [rete di ricerca IP del probe centrale di Google ranges](/load-balancing/docs/health-check-concepts#ip-ranges).
  2. Crea un servizio di backend per i backend basati su Google Cloud. Aggiungi sia il NEG a livello di zona che il NEG di connettività ibrida come backend di servizio di backend.
      gcloud compute backend-services create BACKEND_SERVICE \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --protocol=HTTP \
          --health-checks=HTTP_HEALTH_CHECK_NAME \
          --health-checks-region=REGION \
          --region=REGION
      
  3. Aggiungi il NEG a livello di zona come backend del servizio di backend.
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=GCP_NEG_NAME \
        --network-endpoint-group-zone=GCP_NEG_ZONE
    
    Per maggiori dettagli su configurazione della modalità di bilanciamento, consulta la documentazione della gcloud CLI per --max-rate-per-endpoint .
  4. Aggiungi il NEG ibrido come backend del servizio di backend.
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=ON_PREM_NEG_NAME \
        --network-endpoint-group-zone=ON_PREM_NEG_ZONE
    
    Per maggiori dettagli sulla configurazione della modalità di bilanciamento, consulta gcloud CLI documentazione per gli amministratori --max-rate-per-endpoint .
  5. Crea una mappa URL per instradare le richieste in entrata al servizio di backend:
    gcloud compute url-maps create URL_MAP_NAME \
        --default-service BACKEND_SERVICE \
        --region=REGION
    
  6. (Facoltativo) Esegui questo passaggio se utilizzi HTTPS tra il client e con il bilanciatore del carico di rete passthrough esterno regionale. Non è obbligatorio per i bilanciatori del carico HTTP.

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

    • Certificati autogestiti a livello di regione. Per informazioni sulla creazione e sull'utilizzo i certificati autogestiti regionali, il deployment di un deployment autogestito. Le mappe di certificati non sono supportate.

    • Certificati regionali gestiti da Google. Le mappe di certificati non sono supportate.

      I seguenti tipi di certificati gestiti a livello di regione da Google sono supportati da Gestore certificati:

    • Dopo aver creato i certificati, collegali direttamente alla destinazione proxy.

      Per creare una risorsa di certificato SSL autogestito Compute Engine:
      gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
          --certificate CRT_FILE_PATH \
          --private-key KEY_FILE_PATH
      
    • Crea un proxy HTTP(S) di destinazione per instradare le richieste alla mappa di URL.

      Per un bilanciatore del carico HTTP, crea un proxy di destinazione HTTP:
      gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \
          --url-map=URL_MAP_NAME \
          --url-map-region=REGION \
          --region=REGION
      
      Per un bilanciatore del carico HTTPS, crea un proxy di destinazione HTTPS. Il proxy è la parte del carico un bilanciatore del carico che contiene il certificato SSL per il bilanciamento del carico HTTPS, carica il tuo certificato in questo passaggio.
      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
          --ssl-certificates=SSL_CERTIFICATE_NAME \
          --url-map=URL_MAP_NAME \
          --url-map-region=REGION \
          --region=REGION
      
    • Creare una regola di forwarding per instradare le richieste in entrata al proxy. Azioni sconsigliate utilizzare la subnet solo proxy per creare la regola di forwarding.

      Per un bilanciatore del carico HTTP:
        gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
            --load-balancing-scheme=INTERNAL_MANAGED \
            --network=NETWORK \
            --subnet=LB_SUBNET_NAME \
            --address=LB_IP_ADDRESS \
            --ports=80 \
            --region=REGION \
            --target-http-proxy=TARGET_HTTP_PROXY_NAME \
            --target-http-proxy-region=REGION
      
      Per un bilanciatore del carico HTTPS:
        gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
            --load-balancing-scheme=INTERNAL_MANAGED \
            --network=NETWORK \
            --subnet=LB_SUBNET_NAME \
            --address=LB_IP_ADDRESS \
            --ports=443 \
            --region=REGION \
            --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
            --target-https-proxy-region=REGION
      

Connetti il tuo dominio al bilanciatore del carico

Dopo aver creato il bilanciatore del carico, prendi nota dell'indirizzo IP associato dal bilanciatore del carico, ad esempio 30.90.80.100. Per puntare il dominio verso bilanciatore del carico, crea un record A utilizzando il servizio di registrazione del dominio. Se hai aggiunto più domini al tuo certificato SSL, devi aggiungere un record A per ciascuno, puntando tutti all'indirizzo IP del bilanciatore del carico. Ad esempio, per crea record A per www.example.com e example.com, usa quanto segue:

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

Se utilizzi Cloud DNS come provider DNS, consulta Aggiungere, modificare ed eliminare i record.

Test del bilanciatore del carico

Per testare il bilanciatore del carico, crea una VM client nella stessa regione del con il bilanciatore del carico di rete passthrough esterno regionale. Quindi, invia il traffico dal client al bilanciatore del carico.

Crea una VM client

In questo esempio viene creata una VM client (vm-client) nella stessa regione del backend NEG. Il client viene utilizzato per convalidare la configurazione del bilanciatore del carico e dimostrare il comportamento previsto come descritto test.

Console

  1. Vai alla pagina Istanze VM nella console Google Cloud.
    Vai a Istanze VM
  2. Fai clic su Crea istanza.
  3. Imposta il Nome su vm-client.
  4. Imposta la Zona su CLIENT_VM_ZONE.
  5. Fai clic su Opzioni avanzate e apporta le seguenti modifiche:
      .
    • Fai clic su Networking e aggiungi allow-ssh a Tag di rete.
    • Fai clic sul pulsante di modifica in Interfacce di rete e le seguenti modifiche, quindi fai clic su Fine:
        .
      • Rete: NETWORK
      • Subnet: LB_SUBNET_NAME
      • IP interno principale: Temporaneo (automatico)
      • IP esterno: Temporaneo
  6. Fai clic su Crea.

gcloud

La VM client può trovarsi in qualsiasi zona della stessa regione del bilanciatore del carico, e può utilizzare qualsiasi subnet in quella regione. In questo esempio, il cliente si trova la zona CLIENT_VM_ZONE e utilizza la stessa subnet delle VM di backend.

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

Invia traffico al bilanciatore del carico

Ora che hai configurato il bilanciatore del carico, puoi iniziare a inviare all'indirizzo IP del bilanciatore del carico.

  1. Utilizza SSH per connetterti all'istanza client.

    gcloud compute ssh client-vm \
      --zone=CLIENT_VM_ZONE
    
  2. Ottieni l'indirizzo IP del bilanciatore del carico. Utilizza la compute addresses describe comando per visualizzare l'indirizzo IP allocato:

    gcloud compute addresses describe l7-ilb-ip-address \
      --region=us-west1
    
  3. Verifica che il bilanciatore del carico fornisca i nomi host di backend come previsto. Sostituisci IP_ADDRESS con l'indirizzo IP del bilanciatore del carico.

    Per il test HTTP, esegui:

    curl IP_ADDRESS
    

    Per il test HTTPS, esegui:

  curl -k -s 'https://test.example.com:443' --connect-to test.example.com:443:IP_ADDRESS:443
  

Il flag -k fa sì che curl salti la convalida dei certificati.

Il test degli endpoint non Google Cloud dipende dal servizio di cui disponi esposto attraverso l'endpoint NEG ibrido.

Passaggi successivi