Configura un Application Load Balancer interno regionale con un backend esterno

La guida mostra come configurare un bilanciatore del carico delle applicazioni interno regionale che indirizzi le richieste a un backend esterno. Un backend esterno è un endpoint esterno a Google Cloud.

Prima di seguire questa guida, acquisisci familiarità con la documentazione relativa alla panoramica sui NEG internet, incluse le limitazioni.

Il seguente diagramma dell'architettura mostra un frontend di un Application Load Balancer interno regionale con un backend esterno.

Un Application Load Balancer interno regionale con un backend esterno.
Figura 1. Un Application Load Balancer interno regionale con un backend esterno (fai clic per ingrandire).

Autorizzazioni

Per seguire questa guida, devi creare un NEG internet e creare o modificare un bilanciatore del carico delle applicazioni in un progetto. Devi essere un Proprietario o un Editor del progetto (roles/owner o roles/editor) oppure disporre di entrambi i seguenti ruoli IAM di Compute Engine.

Attività Ruolo richiesto
Creazione e modifica dei componenti del bilanciatore del carico Amministratore rete Compute
(roles/compute.networkAdmin)
Creare e modificare NEG Amministratore istanze Compute
(roles/compute.instanceAdmin)

Configura l'ambiente di backend esterno all'esterno di Google Cloud

Per configurare l'ambiente di backend esterno, consulta le sezioni seguenti.

Configura endpoint di rete

Configura un endpoint di rete per esporre il backend esterno a Google Cloud. Assicurati che l'endpoint, una combinazione IP:Port o un nome di dominio completo (FQDN) e una porta, sia raggiungibile tramite internet. A questo endpoint viene successivamente fatto riferimento dal NEG internet.

Per i requisiti di configurazione dettagliati per gli endpoint NEG internet, consulta la panoramica sui NEG internet.

Consenti al backend esterno di ricevere traffico da Google Cloud

Questo passaggio può essere completato dopo aver creato la subnet solo proxy e aver configurato il gateway Cloud NAT.

Per consentire alle richieste di Google Cloud di raggiungere il tuo backend esterno, devi eseguire questi passaggi:

  1. Configurare un gateway Cloud NAT con indirizzi IP utilizzati per il traffico in uscita da Google Cloud. Il gateway mappa l'intervallo di subnet solo proxy agli indirizzi IP esterni. Per la procedura, consulta Configurare un gateway Cloud NAT.
  2. Assicurati che l'ambiente di backend esterno sia configurato in modo da consentire al traffico da Google Cloud di raggiungere il backend esterno. Ad esempio, se hai utilizzato indirizzi IP preprenotati per il gateway NAT, inserirai questi indirizzi IP nella lista consentita del tuo ambiente esterno. Per configurarlo, potresti dover collaborare con l'amministratore di rete o della sicurezza del tuo ambiente esterno.

Configura il tuo ambiente Google Cloud

È necessaria una rete VPC con due subnet: una per i componenti del bilanciatore del carico e l'altra per la subnet solo proxy della regione. Quindi creerai il bilanciatore del carico con un backend NEG internet.

Crea la rete VPC e la subnet

Questa subnet viene utilizzata per creare i componenti del bilanciatore del carico.

console Cloud

  1. Nella console Google Cloud, vai alla pagina Reti VPC.
    Vai a Reti VPC
  2. Fai clic su Crea rete VPC.
  3. Inserisci un Nome: LB_NETWORK.
  4. 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.
  5. Fai clic su Crea.

gcloud

  1. Crea la rete VPC personalizzata utilizzando il comando gcloud compute networks create:

    gcloud compute networks create LB_NETWORK \
      --subnet-mode=custom
    
  2. Creare una subnet nella rete LB_NETWORK.

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

Configura la subnet solo proxy

Questa subnet solo proxy è utilizzata da tutti i bilanciatori del carico basati su Envoy a livello di regione nella regione REGION.

Console

  1. Nella console Google Cloud, vai alla pagina Reti VPC.
    Vai a Reti VPC
  2. Seleziona una rete dall'elenco.
  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=LB_NETWORK \
  --range=PROXY_ONLY_SUBNET_RANGE

configura un gateway Cloud NAT

Prima di configurare il gateway Cloud NAT, assicurati di aver esaminato le limitazioni associate e le considerazioni sui prezzi. Per i dettagli, consulta NEG regionali: utilizzare un gateway Cloud NAT.

I comandi seguenti descrivono come configurare un gateway Cloud NAT. Il gateway Cloud NAT può essere configurato per l'utilizzo di indirizzi IP esterni NAT automatici, il cui allocazione si basa sulla domanda, o per l'utilizzo di un insieme di indirizzi IP esterni preprenotati manualmente. Il gateway mappa l'intervallo di subnet solo proxy agli indirizzi IP esterni.

configura gli indirizzi IP assegnati automaticamente a NAT

Quando crei un gateway Cloud NAT con l'allocazione automatica degli indirizzi IP NAT, puoi specificare i Network Service Tiers (livello Premium o Standard) da cui il gateway Cloud NAT alloca gli indirizzi IP.

Console

  1. Nella console Google Cloud, vai alla pagina Cloud NAT.

    Vai a Cloud NAT

  2. Fai clic su Inizia o Crea gateway Cloud NAT.

  3. Inserisci un nome per il gateway LB_NAT_CONFIG.

  4. Per Tipo NAT, seleziona Pubblico.

  5. Nell'elenco Rete, seleziona LB_NETWORK.

  6. Nell'elenco Regione, seleziona REGION.

  7. Crea un router Cloud nella regione.

  8. Per Tipo di endpoint di origine, seleziona Bilanciatori del carico proxy gestiti.

  9. Nell'elenco Origine, seleziona Personalizzato.

    • In corrispondenza di Subnet, seleziona PROXY_ONLY_SUBNET_NAME.
  10. Nell'elenco Indirizzi IP Cloud NAT, seleziona Automatico (consigliato).

  11. Per Livello di servizio di rete, scegli Premium o Standard.

  12. Fai clic su Crea.

gcloud

Utilizza indirizzi IP allocati dinamicamente se il tuo ambiente di backend esterno non richiede di inserire nella lista consentita indirizzi IP di Google Cloud specifici che possono inviare traffico al backend esterno.

  1. Crea un router Cloud:

    gcloud beta compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  2. Configurare il gateway Cloud NAT.

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --auto-allocate-nat-external-ips \
      --region=REGION
    

Sostituisci quanto segue:

  • LB_NAT_CONFIG: il nome della configurazione NAT.

  • ROUTER_NAME: il nome del tuo router Cloud.

  • REGION: la regione del NAT da creare. Se non specificata, ti potrebbe essere chiesto di selezionare un'area geografica (solo modalità interattiva).

  • PROXY_ONLY_SUBNET_NAME: il nome della subnet solo proxy.

Configurare indirizzi IP allocati manualmente

Utilizza indirizzi IP allocati manualmente solo se l'ambiente di backend esterno richiede l'utilizzo di una lista consentita per indirizzi IP Google Cloud specifici. Se l'ambiente di backend esterno non ha bisogno di una lista consentita, utilizza l'allocazione dinamica come mostrato in precedenza.

Quando crei un gateway Cloud NAT, puoi scegliere di assegnare manualmente gli indirizzi IP NAT dal livello Premium o dal livello Standard o da entrambi, in base a determinate conditions.

Console

  1. Nella console Google Cloud, vai alla pagina Cloud NAT.

    Vai a Cloud NAT

  2. Fai clic su Inizia o Crea gateway Cloud NAT.

  3. Inserisci un nome per il gateway LB_NAT_CONFIG.

  4. Nell'elenco Rete, seleziona LB_NETWORK.

  5. Nell'elenco Regione, seleziona REGION.

  6. Seleziona o crea un router Cloud nella regione.

  7. Per Tipo di endpoint di origine, seleziona Bilanciatori del carico proxy gestiti.

  8. Nell'elenco Origine, seleziona Personalizzato.

    • In Subnet, seleziona PROXY_ONLY_SUBNET_NAME.
  9. Nell'elenco Indirizzi IP Cloud NAT, seleziona Manuale.

  10. Per Livello di servizio di rete, scegli Premium o Standard.

  11. Seleziona o crea un indirizzo IP esterno riservato statico da utilizzare per NAT.

  12. Se vuoi specificare indirizzi IP aggiuntivi, fai clic su Aggiungi indirizzo IP, quindi seleziona o crea un indirizzo IP esterno statico aggiuntivo riservato.

  13. Fai clic su Crea.

gcloud

  1. Crea gli indirizzi IP. Poiché il gateway esegue la traduzione NAT one-to-one, devi assicurarti che il pool di indirizzi IP riservati sia abbastanza grande da gestire la quantità di traffico prevista. Indirizzi IP NAT allocati in modo insufficiente potrebbero causare una perdita di traffico.

    gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    
  2. Crea un router Cloud:

    gcloud compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  3. Configurare il gateway Cloud NAT.

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    

    Sostituisci quanto segue:

  • LB_NAT_CONFIG: il nome della configurazione NAT.

  • ROUTER_NAME: il nome del tuo router Cloud.

  • PROXY_ONLY_SUBNET_NAME: il nome della subnet solo proxy.

  • REGION: la regione del NAT da creare. Se non specificata, ti potrebbe essere chiesto di selezionare un'area geografica (solo modalità interattiva).

Per maggiori informazioni, consulta Specifica degli intervalli di subnet per NAT nella documentazione di Cloud NAT.

Assicurati di utilizzare una lista consentita per gli intervalli di indirizzi IP NAT nel tuo ambiente di backend esterno, in modo che il backend esterno possa ricevere traffico da Google Cloud.

Prenota l'indirizzo IP del bilanciatore del carico

Prenotare un indirizzo IP interno per il bilanciatore del carico.

Console

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

  1. Vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Fai clic sulla rete usata per configurare la connettività ibrida tra gli ambienti.
  3. Fai clic su Indirizzi IP interni statici, quindi su Prenota 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 Indirizzo IP statico, seleziona Fammi scegliere, quindi inserisci un Indirizzo IP personalizzato. Altrimenti, 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. Fai clic su Prenota per completare la procedura.

gcloud

  1. Utilizzando gcloud CLI, esegui il comando compute addresses create:

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

    gcloud compute addresses describe LB_IP_ADDRESS \
      --region=REGION
    

Configura NEG internet

Puoi creare un NEG internet utilizzando endpoint INTERNET_FQDN_PORT o INTERNET_IP_PORT endpoint.

Console

Crea un NEG con INTERNET_FQDN_PORT endpoint

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

    Vai a Gruppo di endpoint di rete

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

  3. Specifica un INTERNET_NEG_NAME per il NEG internet. Per maggiori informazioni, consulta Convenzione di denominazione delle risorse.

  4. Nell'elenco Tipo di gruppo di endpoint di rete, seleziona Gruppo di endpoint di rete (Internet) ed esegui le seguenti operazioni:

    • Nell'elenco Ambito, seleziona A livello di regione.
    • (Facoltativo) Nell'elenco Regione, modifica il REGION per questo NEG.
    • Nell'elenco Rete, seleziona LB_NETWORK.
    • Nella casella Porta predefinita, inserisci DEFAULT_PORT_NUMBER.
    • Nell'elenco Aggiungi endpoint tramite, seleziona Porta e nome di dominio completi.
  5. Seleziona Crea.

Aggiungi INTERNET_FQDN_PORT endpoint al NEG

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

    Vai a Gruppo di endpoint di rete

  2. Fai clic su INTERNET_NEG_NAME.
  3. Inserisci il Nome di dominio completo, ad esempio myorg.example.com. Devi specificare gli oggetti FQDN nella sintassi del nome di dominio completo standard.

  4. (Facoltativo) Per Tipo di porta, seleziona Personalizzato. Se il Tipo di porta è Default, viene utilizzata la porta predefinita del NEG.

  5. Nella casella Numero porta, inserisci PORT_NUMBER_1.
  6. Seleziona Crea.

Crea un NEG con INTERNET_IP_PORT endpoint

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

    Vai a Gruppo di endpoint di rete

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

  3. Specifica un nome INTERNET_NEG_NAME per il NEG internet. Per maggiori informazioni, consulta Convenzione di denominazione delle risorse.

  4. Nell'elenco Tipo di gruppo di endpoint di rete, seleziona Gruppo di endpoint di rete (Internet) ed esegui le seguenti operazioni:

    • Nell'elenco Ambito, seleziona A livello di regione.
    • (Facoltativo) Nell'elenco Regione, modifica il REGION per questo NEG.
    • Nell'elenco Rete, seleziona LB_NETWORK.
    • Nella casella Porta predefinita, inserisci DEFAULT_PORT_NUMBER.
    • Nell'elenco Aggiungi endpoint tramite, seleziona IP e porta.
  5. Seleziona Crea.

Aggiungi INTERNET_IP_PORT endpoint al NEG

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

    Vai a Gruppo di endpoint di rete

  2. Fai clic su INTERNET_NEG_NAME.
  3. Nel campo Indirizzo IP, inserisci IP_ADDRESS_1.
  4. (Facoltativo) Nell'elenco Tipo di porta, seleziona Personalizzato. Se il Tipo di porta è Default, viene utilizzata la porta predefinita del NEG.

  5. Nel campo Numero porta, inserisci un PORT_NUMBER_1.
  6. Seleziona Crea.

gcloud

Per creare un NEG con INTERNET_FQDN_PORT endpoint:

  1. Creare la risorsa NEG.

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_FQDN_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. Aggiungi endpoint al NEG. Se non viene specificata una porta, viene utilizzata la porta predefinita del NEG.

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \
        [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    Sostituisci quanto segue:

    • FULLY_QUALIFIED_DOMAIN_NAME: nome di dominio completo per l'endpoint
    • PORT_NUMBER: numero di porta per l'endpoint

    Puoi aggiungere fino a 256 endpoint per NEG.

Se il tuo dominio è risolvibile tramite internet, non sono necessarie altre configurazioni per impostare il DNS. Tuttavia, se utilizzi nomi di dominio completi privati, dovrai configurare Cloud DNS per facilitare la risoluzione DNS. Il nome deve essere ospitato su Cloud DNS o essere risolvibile tramite l'inoltro DNS da Cloud DNS a un DNS on-premise.

Per iniziare, crea una zona Cloud DNS per ospitare i record DNS nel tuo progetto. quindi aggiungi i record DNS. Per i passaggi di configurazione specifici, consulta la documentazione di Cloud DNS.

Per creare un NEG con INTERNET_IP_PORT endpoint:

  1. Creare la risorsa NEG.

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_IP_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. Aggiungi endpoint al NEG. Se non viene specificata una porta, viene utilizzata la porta predefinita del NEG.

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \
        [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    Sostituisci quanto segue:

    • IP_ADDRESS: l'indirizzo IP dell'endpoint
    • PORT_NUMBER: numero di porta per l'endpoint

    Puoi ripetere questo passaggio per aggiungere fino a 256 endpoint per NEG.

Crea 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 delle applicazioni (HTTP/HTTPS) e fai clic su Avanti.
  4. In Pubblico o interno, seleziona Interno e fai clic su Avanti.
  5. 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.
  6. Fai clic su Configura.

Configurazione di base

  1. Inserisci un Nome del bilanciatore del carico.
  2. In Regione, seleziona REGION.
  3. In Rete, seleziona LB_NETWORK.

Prenota una subnet solo proxy

Per prenotare una subnet solo proxy:

  1. Fai clic su Prenota subnet.
  2. In Nome, inserisci PROXY_ONLY_SUBNET_NAME.
  3. In Intervallo di indirizzi IP, inserisci PROXY_ONLY_SUBNET_RANGE.
  4. Fai clic su Aggiungi.

Configurazione frontend

  1. Fai clic su Configurazione frontend.
  2. Inserisci un Nome.
  3. In Subnet, seleziona LB_SUBNET_NAME.
  4. Per creare un bilanciatore del carico HTTPS, devi avere un certificato SSL. Ti consigliamo di utilizzare un certificato gestito da Google.

    Proprietà Valore (digita un valore o seleziona un'opzione come specificato)
    Protocollo HTTPS
    Livello di servizio di rete Premium
    Versione IP IPv4
    Indirizzo IP Seleziona l'indirizzo IP prenotato in precedenza: LB_IP_ADDRESS.
    Porta 443
    Certificato

    Seleziona un certificato SSL esistente o creane uno nuovo.

    Per creare un bilanciatore del carico HTTPS, devi disporre di una risorsa del certificato SSL da utilizzare nel proxy HTTPS.

    Se vuoi testare questo processo senza configurare una risorsa del certificato SSL (o un dominio come richiesto dai certificati gestiti da Google), puoi configurare un bilanciatore del carico HTTP.

    Per creare un bilanciatore del carico HTTP, verifica che le seguenti opzioni siano configurate con questi valori:

    Proprietà Valore (digita un valore o seleziona un'opzione come specificato)
    Protocollo HTTP
    Livello di servizio di rete Premium
    Versione IP IPv4
    Indirizzo IP Seleziona l'indirizzo IP prenotato in precedenza: LB_IP_ADDRESS.
    Porta 80
  5. Fai clic su Fine.

Configurazione backend

  1. Fai clic su Configurazione backend.
  2. Fai clic su Servizi e bucket di backend.
  3. Fai clic su Crea un servizio di backend.
  4. Inserisci un nome.
  5. In Tipo di backend, seleziona Gruppo di endpoint di rete internet.
  6. In Protocollo, seleziona il protocollo che intendi utilizzare dal bilanciatore del carico al NEG internet.
  7. In Backend, nella finestra Nuovo backend seleziona il Gruppo di endpoint di rete internet a livello di regione creato nel passaggio precedente.
  8. Fai clic su Fine.
  9. Configura il controllo di integrità:
    1. In Controllo di integrità, seleziona Crea un controllo di integrità.
    2. Imposta il nome del controllo di integrità su HTTP_HEALTH_CHECK_NAME.
    3. In Protocollo, seleziona HTTP.
    4. Imposta Porta su 80.
  10. Fai clic su Crea.

Esamina e finalizza

  1. Fai clic su Esamina e finalizza.
  2. Se è tutto a posto, fai clic su Crea.

gcloud

  1. (Facoltativo) Crea un controllo di integrità. I probe di controllo di integrità per i backend esterni utilizzano i controlli di integrità Envoy distribuiti e vengono tradotti in un secondo momento tramite NAT.
    gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
        --region=REGION \
        --use-serving-port
    
  2. Crea un 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 internet al servizio di backend:
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --network-endpoint-group=INTERNET_NEG_NAME \
        --network-endpoint-group-region=REGION \
        --region=REGION
    
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --network-endpoint-group=INTERNET_NEG_NAME \
        --network-endpoint-group-region=REGION \
        --region=REGION
      
  4. 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
    
  5. (Facoltativo) Esegui questo passaggio se utilizzi HTTPS tra il client e il bilanciatore del carico. Questo passaggio non è obbligatorio per i bilanciatori del carico HTTP.

    Puoi creare certificati Compute Engine o Gestore 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 dei certificati autogestiti a livello di regione, consulta la pagina relativa al deployment di un certificato autogestito a livello di regione. Le mappe di certificati non sono supportate.

    • Certificati gestiti a livello di regione da Google. Le mappe di certificati non sono supportate.

      Gestore certificati supporta i seguenti tipi di certificati gestiti da Google a livello di regione:

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

      Per creare una risorsa del certificato SSL autogestito da 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 degli 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 \
          --region=REGION
      

      Per un bilanciatore del carico HTTPS, crea un proxy di destinazione HTTPS. Il proxy è la parte del bilanciatore del carico che contiene il certificato SSL per il bilanciamento del carico HTTPS, quindi caricherai anche il certificato in questo passaggio.

      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
          --ssl-certificates=SSL_CERTIFICATE_NAME \
          --url-map=URL_MAP_NAME \
          --region=REGION
      
    • Crea una regola di forwarding per instradare le richieste in entrata al proxy.

      Per un bilanciatore del carico HTTP:

      gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-http-proxy=TARGET_HTTP_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=80
      

      Per un bilanciatore del carico HTTPS:

      gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=443
      

Connetti il tuo dominio al bilanciatore del carico

Dopo aver creato il bilanciatore del carico, prendi nota dell'indirizzo IP associato al bilanciatore del carico, ad esempio 30.90.80.100. Per puntare il tuo dominio al bilanciatore del carico, crea un record A utilizzando il servizio di registrazione del dominio. Se hai aggiunto più domini al certificato SSL, devi aggiungere un record A per ciascuno, tutti puntati all'indirizzo IP del bilanciatore del carico. Ad esempio, per creare i record A per www.example.com e example.com, utilizza 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 record.

Testa il bilanciatore del carico

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

Crea una VM client

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

gcloud

La VM client può trovarsi in qualsiasi zona nella stessa REGION del bilanciatore del carico e può utilizzare qualsiasi subnet nella stessa rete VPC.

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

Invia traffico al bilanciatore del carico

La propagazione della configurazione del bilanciatore del carico potrebbe richiedere alcuni minuti dopo il primo deployment.

  • Connettiti all'istanza client tramite SSH.

    gcloud compute ssh vm-client \
      --zone=ZONE
    
  • Verifica che il bilanciatore del carico si connetta all'applicazione in esecuzione sul backend esterno, come previsto.

    Per il test HTTP, esegui:

    curl IP_ADDRESS
    

    Per i test su HTTPS, esegui:

    curl -k -s 'https://TEST_DOMAIN_URL:443' --connect-to TEST_DOMAIN_URL:443:IP_ADDRESS:443
    

    Sostituisci TEST_DOMAIN_URL con il dominio associato alla tua applicazione. Ad esempio, test.example.com.

    Il flag -k fa sì che curl ignori la convalida del certificato.

Configurazione aggiuntiva

Questa sezione espande l'esempio di configurazione per fornire opzioni di configurazione alternative e aggiuntive. Tutte le attività sono facoltative. Puoi eseguirle in qualsiasi ordine.

Per abilitare ancora più funzionalità per il bilanciatore del carico delle applicazioni interno regionale, ad esempio l'accesso globale (se i client si trovano in un'altra regione), consulta Configurare un bilanciatore del carico delle applicazioni interno con backend di gruppi di istanze VM: configurazione aggiuntiva.

Utilizza un'intestazione personalizzata per autenticare le richieste

Per autenticare le richieste inviate al tuo backend esterno, puoi impostare un'intestazione personalizzata per indicare che la richiesta proviene da un bilanciatore del carico di Google Cloud. Dovrai inoltre configurare il backend esterno in modo da prevedere questa intestazione personalizzata sul traffico proveniente da Google Cloud.

Per scoprire come configurare intestazioni personalizzate, consulta Configurare la gestione avanzata del traffico.

Per altri metodi di autenticazione, vedi Autenticare le richieste al backend esterno.

Passaggi successivi