Questa guida fornisce le istruzioni per creare un deployment del bilanciatore del carico di rete passthrough esterno utilizzando un servizio di backend regionale. Questo esempio crea un bilanciatore del carico di rete passthrough esterno che supporta il traffico TCP o UDP. Se vuoi creare un bilanciatore del carico di rete passthrough esterno che bilancia il carico del traffico TCP, UDP, ESP, GRE, ICMP e ICMPv6 (non solo TCP o UDP), consulta Configurare un bilanciatore del carico di rete passthrough esterno per più protocolli IP.
In questo esempio, utilizzeremo il bilanciatore del carico per distribuire il traffico TCP
tra le VM di backend in due gruppi di istanze gestite a livello di zona nella regione us-central1
. Un approccio altrettanto valido sarebbe l'utilizzo di un singolo gruppo di istanze gestite a livello di regione per la regione us-central1
.
Questo scenario distribuisce il traffico TCP tra le istanze integre. Per supportare questo esempio, i controlli di integrità TCP sono configurati per garantire che il traffico venga inviato solo a istanze in stato integro. Tieni presente che i controlli di integrità TCP sono supportati solo con un bilanciatore del carico basato su servizi di backend. I bilanciatori del carico basati su pool di destinazione possono usare solo i controlli di integrità HTTP legacy.
Questo esempio bilancia il carico del traffico TCP, ma puoi utilizzare bilanciatori del carico di rete passthrough esterni basati su servizio di backend per bilanciare il carico del traffico TCP, UDP, ESP, GRE, ICMP e ICMPv6.
Il bilanciatore del carico di rete passthrough esterno è un bilanciatore del carico a livello di regione. Tutti i componenti del bilanciatore del carico (VM di backend, servizio di backend e regola di forwarding) devono trovarsi nella stessa regione.
Prima di iniziare
Installa Google Cloud CLI. Per una panoramica completa dello strumento, consulta la panoramica dell'interfaccia a riga di comando gcloud. Puoi trovare i comandi relativi al bilanciamento del carico nei riferimenti per API e gcloud.
Se non hai già eseguito Google Cloud CLI, esegui prima gcloud init
per l'autenticazione.
Questa guida presuppone che tu abbia familiarità con bash.
Configura la rete e le subnet
L'esempio in questa pagina utilizza una rete VPC in modalità personalizzata denominata lb-network
. Puoi usare una rete VPC in modalità
automatica se vuoi gestire solo il traffico IPv4.
Tuttavia, il traffico IPv6 richiede una subnet in modalità personalizzata.
Il traffico IPv6 richiede anche una subnet a doppio stack (stack-type
impostata su IPv4_IPv6
). Quando crei una subnet a doppio stack su una rete VPC in modalità personalizzata, scegli un tipo di accesso IPv6 per la subnet. Per questo esempio, impostiamo il parametro ipv6-access-type
della subnet su
EXTERNAL
. Ciò significa che alle nuove VM in questa subnet può essere assegnato sia indirizzi IPv4 esterni che indirizzi IPv6 esterni. Le regole di forwarding possono anche essere assegnate sia indirizzi IPv4 esterni sia indirizzi IPv6 esterni.
I backend e i componenti del bilanciatore del carico utilizzati per questo esempio si trovano nella regione e nella subnet seguenti:
- Regione:
us-central1
- Subnet:
lb-subnet
, con intervallo di indirizzi IPv4 principale10.1.2.0/24
. Anche se scegli quale intervallo di indirizzi IPv4 configurare nella subnet, l'intervallo di indirizzi IPv6 viene assegnato automaticamente. Google fornisce un blocco CIDR IPv6 a dimensione fissa (/64).
Per creare la rete e la subnet di esempio, segui questi passaggi.
Console
Per supportare il traffico IPv4 e IPv6, segui questi passaggi:
Nella console Google Cloud, vai alla pagina Reti VPC.
Fai clic su Crea rete VPC.
Inserisci
lb-network
come nome.Nella sezione Subnet:
- Imposta Modalità di creazione subnet su Personalizzata.
- Nella sezione Nuova subnet, configura i seguenti campi e fai clic su Fine:
- Nome:
lb-subnet
- Regione:
us-central1
- Tipo di stack IP: IPv4 e IPv6 (stack doppio)
- Intervallo IPv4:
10.1.2.0/24
Anche se puoi configurare un intervallo di indirizzi IPv4 per la subnet, non puoi scegliere l'intervallo degli indirizzi IPv6 per la subnet. Google fornisce un blocco CIDR IPv6 di dimensione fissa (/64). - Tipo di accesso IPv6: esterno
- Nome:
Fai clic su Crea.
Per supportare solo il traffico IPv4, segui questi passaggi:
Nella console Google Cloud, vai alla pagina Reti VPC.
Fai clic su Crea rete VPC.
Inserisci
lb-network
come nome.Nella sezione Subnet:
- Imposta Modalità di creazione subnet su Personalizzata.
- Nella sezione Nuova subnet, configura i seguenti campi e fai clic su Fine:
- Nome:
lb-subnet
- Regione:
us-central1
- Tipo di stack IP: IPv4 (stack singolo)
- Intervallo IPv4:
10.1.2.0/24
- Nome:
Fai clic su Crea.
gcloud
Crea la rete VPC in modalità personalizzata:
gcloud compute networks create lb-network \ --subnet-mode=custom
All'interno della rete
lb-network
, crea una subnet per i backend nella regioneus-central1
.Per il traffico IPv4 e IPv6, utilizza il comando seguente per creare una subnet a doppio stack:
gcloud compute networks subnets create lb-subnet \ --stack-type=IPV4_IPv6 \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Per solo traffico IPv4, utilizza il seguente comando:
gcloud compute networks subnets create lb-subnet \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Crea i gruppi di istanze gestite a livello di zona
Per questo scenario di bilanciamento del carico, creerai due gruppi di istanze gestite a livello di zona di Compute Engine e installerai un server web Apache su ogni istanza.
Per gestire il traffico sia IPv4 che IPv6, configura le VM di backend in modo che siano a doppio stack. Imposta stack-type
della VM su IPv4_IPv6
. Le VM ereditano anche l'impostazione ipv6-access-type
(in questo esempio, EXTERNAL
) dalla subnet. Per
maggiori dettagli sui requisiti IPv6, consulta Panoramica del bilanciatore del carico di rete passthrough esterno: regole di forwarding.
Per utilizzare le VM esistenti come backend, aggiorna le VM in modo che siano a doppio stack utilizzando il comando gcloud compute instances network-interfaces
update
.
Le istanze che partecipano come VM di backend per bilanciatori del carico di rete passthrough esterni devono eseguire l'ambiente guest Linux, l'ambiente guest Windows o altri processi che forniscano funzionalità equivalenti.
Configurazione delle istanze
Console
Creare un modello di istanza. Nella console Google Cloud, vai alla pagina Modelli di istanza.
- Fai clic su Crea modello istanza.
- In Nome, inserisci
ig-us-template
. - Nella sezione Disco di avvio, assicurati che l'immagine sia impostata su un'immagine Debian, ad esempio Debian GNU/Linux 10 (buster). Queste istruzioni utilizzano comandi
disponibili solo su Debian, come
apt-get
. - Fai clic su Opzioni avanzate.
- Fai clic su Networking.
- In Tag di rete, inserisci
lb-tag
. - In Interfacce di rete, fai clic sull'interfaccia predefinita e configura i seguenti campi:
- Rete:
lb-network
- Subnet:
lb-subnet
- Rete:
- Fai clic su Fine.
- In Tag di rete, inserisci
Fai clic su Gestione e copia il seguente script nel campo Script di avvio.
#! /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
Fai clic su Crea.
Creare un gruppo di istanze gestite. Nella console Google Cloud, vai alla pagina Gruppi di istanze.
- Fai clic su Crea gruppo di istanze.
- Seleziona Nuovo gruppo di istanze gestite (stateless). Per ulteriori informazioni, consulta la pagina sui MIG stateless o stateful.
- In Nome, inserisci
ig-us-1
. - In Modello di istanza, seleziona
ig-us-template
. - Per Località, seleziona Zona singola.
- In Regione, seleziona
us-central1
. - In Zona, seleziona
us-central1-a
. Specifica il numero di istanze che vuoi creare nel gruppo.
Per questo esempio, specifica le seguenti opzioni nella sezione Scalabilità automatica:
- In Modalità di scalabilità automatica, seleziona
Off:do not autoscale
. - In Numero massimo di istanze, inserisci
2
.
- In Modalità di scalabilità automatica, seleziona
Fai clic su Crea.
Ripeti i passaggi precedenti per creare un secondo gruppo di istanze gestite nella zona
us-central1-c
con le seguenti specifiche:- Nome:
ig-us-2
- Zona:
us-central1-c
- Modello di istanza: usa lo stesso modello
ig-us-template
creato nella sezione precedente.
- Nome:
gcloud
Le istruzioni gcloud
in questa guida presuppongono che tu stia utilizzando Cloud
Shell o un altro ambiente in cui è installato bash.
Crea un modello di istanza VM con server HTTP con il comando
gcloud compute instance-templates create
.Per gestire il traffico IPv4 e IPv6, utilizza il comando seguente.
gcloud compute instance-templates create ig-us-template \ --region=us-central1 \ --network=lb-network \ --subnet=lb-subnet \ --ipv6-network-tier=PREMIUM \ --stack-type=IPv4_IPv6 \ --tags=lb-tag \ --image-family=debian-10 \ --image-project=debian-cloud \ --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'
Per gestire il traffico solo traffico IPv4, utilizza il comando seguente.
gcloud compute instance-templates create ig-us-template \ --region=us-central1 \ --network=lb-network \ --subnet=lb-subnet \ --tags=lb-tag \ --image-family=debian-10 \ --image-project=debian-cloud \ --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 un gruppo di istanze gestite nella zona con il comando
gcloud compute instance-groups managed create
.gcloud compute instance-groups managed create ig-us-1 \ --zone us-central1-a \ --size 2 \ --template ig-us-template
Crea un secondo gruppo di istanze gestite nella zona
us-central1-c
:gcloud compute instance-groups managed create ig-us-2 \ --zone us-central1-c \ --size 2 \ --template ig-us-template
Configurazione delle regole del firewall
Crea regole firewall che consentano al traffico esterno (inclusi i probe del controllo di integrità) di raggiungere le istanze di backend.
In questo esempio viene creata una regola firewall che consente al traffico TCP da tutti gli intervalli di origine di raggiungere le tue istanze di backend sulla porta 80. Se vuoi creare regole firewall separate specifiche per i probe del controllo di integrità, utilizza gli intervalli di indirizzi IP di origine documentati in Panoramica dei controlli di integrità: intervalli IP dei probe e regole firewall.
Console
Nella console Google Cloud, vai alla pagina Criteri firewall.
Per consentire il traffico IPv4, segui questi passaggi:
- Fai clic su Crea regola firewall.
- In Nome, inserisci
allow-network-lb-ipv4
. - Nell'elenco Rete, seleziona
lb-network
. - In Target, seleziona Tag di destinazione specificati.
- Nel campo Tag di destinazione, inserisci
lb-tag
. - Per Filtro di origine, seleziona Intervalli IPv4.
- Imposta Intervalli IPv4 di origine su
0.0.0.0/0
. Ciò consente il traffico IPv4 da qualsiasi origine. Inoltre, i probe di controllo di integrità di Google possono raggiungere le istanze di backend. - Per Protocolli e porte specificati, seleziona la casella di controllo TCP e inserisci
80
. - Fai clic su Crea. Potrebbe essere necessario attendere qualche istante prima che la console Google Cloud mostri la nuova regola firewall oppure potresti dover fare clic su Aggiorna per visualizzare la regola.
Per consentire il traffico IPv6, segui questi passaggi:
- Fai di nuovo clic su Crea regola firewall.
- In Nome, inserisci
allow-network-lb-ipv6
. - Nell'elenco Rete, seleziona
lb-network
. - In Target, seleziona Tag di destinazione specificati.
- Nel campo Tag di destinazione, inserisci
lb-tag
. - Per Filtro di origine, seleziona Intervalli IPv6.
- Imposta Intervalli IPv6 di origine su
::/0
. Ciò consente il traffico IPv6 da qualsiasi origine. Inoltre, i probe di controllo di integrità di Google possono raggiungere le istanze di backend. - Per Protocolli e porte specificati, seleziona la casella di controllo TCP e inserisci
80
. - Fai clic su Crea. Potrebbe essere necessario attendere un po' di tempo prima che la nuova regola firewall venga visualizzata nella console oppure potresti dover fare clic su Aggiorna per visualizzare la regola.
gcloud
Per consentire il traffico IPv4, esegui questo comando:
gcloud compute firewall-rules create allow-network-lb-ipv4 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=0.0.0.0/0
Per consentire il traffico IPv6, esegui questo comando:
gcloud compute firewall-rules create allow-network-lb-ipv6 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=::/0
Configura il bilanciatore del carico
Quindi, configura il bilanciatore del carico.
Quando configuri il bilanciatore del carico, le istanze delle macchine virtuali (VM)
riceveranno i pacchetti destinati all'indirizzo IP esterno statico configurato. Se utilizzi un'immagine fornita da Compute Engine, le istanze vengono configurate automaticamente per gestire questo indirizzo IP. Se
utilizzi qualsiasi altra immagine, devi configurare questo indirizzo come
alias su eth0
o come loopback su ogni istanza.
Per configurare il bilanciatore del carico, segui queste istruzioni.
Console
Avvia la configurazione
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic su Crea bilanciatore del carico.
- Per Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
- Per Proxy o passthrough, seleziona Bilanciatore del carico passthrough e fai clic su Avanti.
- Per Pubblico o interno, seleziona Pubblico (esterno) e fai clic su Avanti.
- Fai clic su Configura.
Configurazione backend
- Nella pagina Crea bilanciatore del carico di rete passthrough esterno, inserisci il nome
tcp-network-lb
per il nuovo bilanciatore del carico. - In Regione, seleziona
us-central1
. - Fai clic su Configurazione backend.
- Nella pagina Configurazione backend, apporta le seguenti modifiche:
- Per Nuovo backend, seleziona il tipo di stack IP. Se hai creato backend a doppio stack per gestire il traffico sia IPv4 che IPv6, seleziona IPv4 e IPv6 (stack doppio). Per gestire solo il traffico IPv4, seleziona IPv4(stack singolo).
- Nell'elenco Gruppo di istanze, seleziona
ig-us-1
, quindi fai clic su Fine. - Fai clic su Aggiungi un backend e ripeti questo passaggio per aggiungere
ig-us-2
. - In Controllo di integrità, fai clic su Crea un controllo di integrità o Crea un altro controllo di integrità, quindi inserisci le informazioni seguenti:
- Nome:
tcp-health-check
- Protocollo:
TCP
- Porta:
80
- Nome:
- Fai clic su Salva.
- Prima di continuare, verifica che sia presente un segno di spunta blu accanto a Configurazione backend.
Configurazione frontend
- Fai clic su Configurazione frontend.
- In Nome, inserisci
network-lb-forwarding-rule
. - Per gestire il traffico IPv4:
- Per Versione IP, seleziona IPv4.
- Nella sezione Scopo IP interno, nell'elenco Indirizzo IP, seleziona Crea indirizzo IP.
- Nella pagina Prenota un nuovo indirizzo IP statico, inserisci
network-lb-ipv4
in corrispondenza di Nome. - Fai clic su Prenota.
- Nella pagina Prenota un nuovo indirizzo IP statico, inserisci
- In Porte, scegli Singola. In Numero porta, inserisci
80
. - Fai clic su Fine.
Per gestire il traffico IPv6, segui questi passaggi:
- Per Versione IP, seleziona IPv6.
- In corrispondenza di Subnet, seleziona lb-subnet.
- Nell'elenco Intervallo IPv6, seleziona Crea indirizzo IP.
- Nella pagina Prenota un nuovo indirizzo IP statico, inserisci
network-lb-ipv6
in corrispondenza di Nome. - Fai clic su Prenota.
- Nella pagina Prenota un nuovo indirizzo IP statico, inserisci
- In Porte, seleziona Singola. In Numero porta, inserisci
80
. - Fai clic su Fine.
Un cerchio blu con un segno di spunta a sinistra di Configurazione frontend indica che la configurazione è stata completata.
Rivedi la configurazione
- Fai clic su Esamina e finalizza.
- Rivedi le impostazioni di configurazione del bilanciatore del carico.
- (Facoltativo) Fai clic su Codice equivalente per visualizzare la richiesta API REST che verrà utilizzata per creare il bilanciatore del carico.
Fai clic su Crea.
Nella pagina del bilanciamento del carico, nella colonna Backend del nuovo bilanciatore del carico, dovresti vedere un segno di spunta verde che indica che il nuovo bilanciatore del carico è integro.
gcloud
Prenotare un indirizzo IP esterno statico.
Per il traffico IPv4: crea un indirizzo IPv4 esterno statico per il bilanciatore del carico.
gcloud compute addresses create network-lb-ipv4 \ --region us-central1
Per il traffico IPv6: crea un intervallo di indirizzi IPv6 esterno statico per il bilanciatore del carico. La subnet utilizzata deve essere una subnet a doppio stack con un intervallo IPv6 esterno.
gcloud compute addresses create network-lb-ipv6 \ --region us-central1 \ --subnet lb-subnet \ --ip-version IPV6 \ --endpoint-type NETLB
Crea un controllo di integrità TCP.
gcloud compute health-checks create tcp tcp-health-check \ --region us-central1 \ --port 80
Crea un servizio di backend.
gcloud compute backend-services create network-lb-backend-service \ --protocol TCP \ --health-checks tcp-health-check \ --health-checks-region us-central1 \ --region us-central1
Aggiungi i gruppi di istanze al servizio di backend.
gcloud compute backend-services add-backend network-lb-backend-service \ --instance-group ig-us-1 \ --instance-group-zone us-central1-a \ --region us-central1
gcloud compute backend-services add-backend network-lb-backend-service \ --instance-group ig-us-2 \ --instance-group-zone us-central1-c \ --region us-central1
Crea le regole di forwarding a seconda che desideri gestire il traffico IPv4 o IPv6. Creare entrambe le regole di forwarding per gestire entrambi i tipi di traffico.
Per il traffico IPv4: crea una regola di forwarding per instradare il traffico TCP in entrata al servizio di backend. Usa l'indirizzo IPv4 prenotato nel passaggio 1 come indirizzo IP esterno statico del bilanciatore del carico.
gcloud compute forwarding-rules create network-lb-forwarding-rule-ipv4 \ --load-balancing-scheme EXTERNAL \ --region us-central1 \ --ports 80 \ --address network-lb-ipv4 \ --backend-service network-lb-backend-service
Per il traffico IPv6: crea una regola di forwarding per gestire il traffico IPv6. Utilizza l'intervallo di indirizzi IPv6 prenotato nel passaggio 1 come indirizzo IP esterno statico del bilanciatore del carico. La subnet utilizzata deve essere una subnet a doppio stack con un intervallo di subnet IPv6 esterne.
gcloud compute forwarding-rules create network-lb-forwarding-rule-ipv6 \ --load-balancing-scheme EXTERNAL \ --region us-central1 \ --network-tier PREMIUM \ --ip-version IPV6 \ --subnet lb-subnet \ --address network-lb-ipv6 \ --ports 80 \ --backend-service network-lb-backend-service
Testa il bilanciatore del carico
Ora che il servizio di bilanciamento del carico è configurato, puoi iniziare a inviare il traffico all'indirizzo IP esterno del bilanciatore del carico e controllarlo che viene distribuito alle istanze di backend.
Cerca l'indirizzo IP esterno del bilanciatore del carico
Console
Nella pagina Componenti di bilanciamento del carico, vai alla scheda Regole di forwarding.
Individua la regola di forwarding utilizzata dal bilanciatore del carico.
Prendi nota dell'indirizzo IP esterno indicato nella colonna Indirizzo IP esterno.
gcloud: IPv4
Inserisci il comando seguente per visualizzare l'indirizzo IPv4 esterno della regola di forwarding network-lb-forwarding-rule
utilizzata dal bilanciatore del carico.
gcloud compute forwarding-rules describe network-lb-forwarding-rule-ipv4 \ --region us-central1
gcloud: IPv6
Inserisci il comando seguente per visualizzare l'indirizzo IPv6 esterno della regola di forwarding network-lb-forwarding-rule
utilizzata dal bilanciatore del carico.
gcloud compute forwarding-rules describe network-lb-forwarding-rule-ipv6 \ --region us-central1
Invia traffico al bilanciatore del carico
Effettua richieste web al bilanciatore del carico utilizzando curl
per contattare il relativo indirizzo IP.
Dai client con connettività IPv4, esegui questo comando:
$ while true; do curl -m1 IPV4_ADDRESS; done
Dai client con connettività IPv6, esegui questo comando:
$ while true; do curl -m1 http://IPV6_ADDRESS; done
Ad esempio, se l'indirizzo IPv6 assegnato è
[2001:db8:1:1:1:1:1:1/96]:80
, il comando dovrebbe avere il seguente aspetto:$ while true; do curl -m1 http://[2001:db8:1:1:1:1:1:1]:80; done
Osserva il testo restituito dal comando curl
. Il nome della VM backend che genera la risposta viene visualizzato in questo testo, ad esempio: Page served
from: VM_NAME
La risposta del comando curl
si alterna in modo casuale tra le istanze di backend. Se inizialmente la risposta non va a buon fine, prima di riprovare potrebbe essere necessario attendere circa 30 secondi affinché la configurazione venga caricata completamente e le istanze siano contrassegnate come integre.
Opzioni di configurazione aggiuntive
Questa sezione espande l'esempio di configurazione per fornire istruzioni su come personalizzare ulteriormente il bilanciatore del carico di rete passthrough esterno. Queste attività sono facoltative. Puoi eseguirle in qualsiasi ordine.
Configura l'affinità sessione
La configurazione di esempio crea un servizio di backend con l'affinità sessione
disabilitata (valore impostato su NONE
). Questa sezione mostra come aggiornare il servizio
di backend per modificare l'impostazione di affinità sessione del bilanciatore del carico.
Per i tipi di affinità sessione supportati, consulta Opzioni di affinità sessione.
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
Nella scheda Bilanciatori del carico, fai clic sul nome del servizio di backend e quindi su Modifica.
Nella pagina Modifica bilanciatore del carico di rete passthrough esterno, fai clic su Configurazione backend.
Seleziona un'opzione dall'elenco Affinità sessione.
Fai clic su Update (Aggiorna).
gcloud
Utilizza il seguente comando gcloud
per aggiornare l'affinità sessione per il
servizio di backend:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --session-affinity=SESSION_AFFINITY_OPTION
Sostituisci i segnaposto con valori validi:
BACKEND_SERVICE
: il servizio di backend che stai aggiornandoSESSION_AFFINITY_OPTION
: l'opzione di affinità sessione che vuoi impostarePer l'elenco dei valori supportati per un bilanciatore del carico di rete passthrough esterno, vedi Opzioni di affinità sessione.
Configurare un criterio per il monitoraggio delle connessioni
La configurazione di esempio crea un servizio di backend con le impostazioni predefinite per il criterio di monitoraggio delle connessioni. Questa sezione mostra come aggiornare il servizio di backend per modificare il criterio di monitoraggio delle connessioni predefinito del bilanciatore del carico.
Un criterio per il monitoraggio delle connessioni include le seguenti impostazioni:
- Modalità di monitoraggio
- Persistenza della connessione su backend non integro
- Timeout per inattività (60 secondi, non configurabile)
gcloud
Utilizza il seguente comando gcloud compute
backend-services
per aggiornare il criterio di monitoraggio della connessione per il servizio di backend:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --tracking-mode=TRACKING_MODE \ --connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR
Sostituisci i segnaposto con valori validi:
BACKEND_SERVICE
: il servizio di backend che stai aggiornandoTRACKING_MODE
: la modalità di monitoraggio della connessione da utilizzare per i pacchetti in entrata. Per l'elenco dei valori supportati, consulta Modalità di monitoraggio.CONNECTION_PERSISTENCE_BEHAVIOR
: il comportamento di persistenza della connessione quando i backend non sono integri. Per l'elenco dei valori supportati, consulta Persistenza della connessione su backend non integro.
Configura l'indirizzamento del traffico
Questa sezione mostra come aggiornare la configurazione frontend di un bilanciatore del carico per configurare l'indirizzamento del traffico basato su IP di origine. Per maggiori dettagli sul funzionamento dell'indirizzamento del traffico, vedi Indirizzamento del traffico.
Queste istruzioni presuppongono che tu abbia già creato la regola di forwarding di base padre. In questo esempio viene creata una seconda regola di forwarding, ovvero la regola di forwarding di reindirizzamento, con lo stesso indirizzo IP, lo stesso protocollo IP e le stesse porte dell'elemento padre. Questa regola di forwarding di reindirizzamento è configurata con intervalli IP di origine in modo da poter personalizzare la modalità di inoltro dei pacchetti da questi intervalli IP di origine.
gcloud
Utilizza il comando seguente per creare una regola di forwarding di reindirizzamento che punti a un servizio di backend:
gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_BS \ --load-balancing-scheme=EXTERNAL \ --backend-service=BACKEND_SERVICE \ --address=LOAD_BALANCER_VIP \ --ip-protocol=IP_PROTOCOL \ --ports=PORTS \ --region=REGION \ --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES
Utilizza il comando seguente per creare una regola di forwarding di reindirizzamento che punti a un'istanza di destinazione:
gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_TI \ --load-balancing-scheme=EXTERNAL \ --target-instance=TARGET_INSTANCE \ --address=LOAD_BALANCER_VIP \ --ip-protocol=IP_PROTOCOL \ --ports=PORTS \ --region=REGION \ --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES
Sostituisci i segnaposto con valori validi:
FORWARDING_RULE
: il nome della regola di forwarding di reindirizzamento che stai creando.BACKEND_SERVICE
oTARGET_INSTANCE
: il nome del servizio di backend o dell'istanza di destinazione a cui la regola di forwarding di reindirizzamento invierà il traffico. Anche se la regola di forwarding padre punta a un servizio di backend, puoi creare regole di forwarding di reindirizzamento che puntano a istanze di destinazione.LOAD_BALANCER_VIP
,IP_PROTOCOL
,PORTS
: rispettivamente indirizzo IP, protocollo IP e porte per la regola di forwarding di reindirizzamento che stai creando. Queste impostazioni devono corrispondere a una regola di forwarding di base preesistente.REGION
: la regione della regola di forwarding che stai creando.SOURCE_IP_ADDRESS_RANGES
: elenco separato da virgole di indirizzi IP o intervalli di indirizzi IP. Questa regola di forwarding inoltrerà il traffico solo quando l'indirizzo IP di origine del pacchetto in entrata rientra in uno degli intervalli IP impostati qui.
Utilizza il comando seguente per eliminare una regola di forwarding di reindirizzamento. Prima di poter eliminare il bilanciatore del carico stesso, devi eliminare tutte le regole di forwarding di reindirizzamento utilizzate da un bilanciatore del carico.
gcloud compute forwarding-rules delete STEERING_FORWARDING_RULE \ --region=REGION
Configura criterio di failover
Per configurare il criterio di failover, consulta Configurare il failover per bilanciatori del carico di rete passthrough esterni.
Configura il bilanciamento del carico ponderato
Per configurare il bilanciamento del carico ponderato, consulta Configurare il bilanciamento del carico ponderato.
Crea una regola di forwarding IPv6 con BYOIP
Il bilanciatore del carico creato nei passaggi precedenti è stato configurato con regole di forwarding con IP version
come IPv4
o IPv6
. Questa sezione fornisce le istruzioni per creare una regola di forwarding IPv6 con indirizzi IP BYOIP (Bring Your Own IP).
Gli indirizzi IP personalizzati consentono di eseguire il provisioning e utilizzare i propri indirizzi IPv6 pubblici per le risorse Google Cloud. Per maggiori informazioni, consulta Integrazione degli indirizzi IP.
Prima di iniziare a configurare una regola di forwarding IPv6 con indirizzi BYOIP, devi completare questi passaggi:
- Crea un prefisso IPv6 annunciato pubblicamente
- Creare prefissi delegati pubblici
- Crea sottoprefissi IPv6
- Annuncia il prefisso
Per creare una nuova regola di forwarding:
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic sul nome del bilanciatore del carico che vuoi modificare.
- Fai clic su Modifica.
- Fai clic su Configurazione frontend.
- Fai clic su Aggiungi IP e porta frontend.
- Nella sezione Nuovo IP e porta frontend, specifica quanto segue:
- Il Protocollo è TCP.
- Nel campo Versione IP, seleziona IPv6.
- Nel campo Intervallo di origine IPv6, seleziona BYOIP.
- Nell'elenco Raccolta IP, seleziona un sottoprefisso creato nei passaggi precedenti con l'opzione della regola di forwarding abilitata.
- Nel campo Intervallo IPv6, inserisci l'intervallo di indirizzi IPv6. L'intervallo di indirizzi IPv6 deve rispettare le specifiche dei sottoprefissi IPv6.
- Nel campo Ports (Porte), inserisci un numero di porta.
- Fai clic su Fine.
- Fai clic su Update (Aggiorna).
Google Cloud CLI
Crea la regola di forwarding utilizzando il
comando gcloud compute forwarding-rules create
:
gcloud compute forwarding-rules create FWD_RULE_NAME \ --load-balancing-scheme EXTERNAL \ --ip-protocol PROTOCOL \ --ports ALL \ --ip-version IPV6 \ --region REGION_A \ --address IPV6_CIDR_RANGE \ --backend-service BACKEND_SERVICE \ --ip-collection PDP_NAME
Sostituisci quanto segue:
FWD_RULE_NAME
: il nome della regola di forwardingPROTOCOL
: il protocollo IP per la regola di forwarding Il valore predefinito èTCP
. Il protocollo IP può essereTCP
,UDP
oL3_DEFAULT
.REGION_A
: regione per la regola di forwardingIPV6_CIDR_RANGE
: l'intervallo di indirizzi IPv6 pubblicato dalla regola di forwarding. L'intervallo di indirizzi IPv6 deve rispettare le specifiche dei sottoprefissi IPv6.BACKEND_SERVICE
: il nome del servizio di backendPDP_NAME
: il nome del prefisso delegato pubblico. Il PDP deve essere un sottoprefisso in modalità EXTERNAL_IPV6_FORWARDING_RULE_CREATION
Passaggi successivi
- Per informazioni su come eseguire la migrazione di un bilanciatore del carico di rete passthrough esterno dal backend di un pool di destinazione a un servizio di backend regionale, consulta Eseguire la migrazione di bilanciatori del carico di rete passthrough esterni dai pool di destinazione ai servizi di backend.
- Per configurare un bilanciatore del carico di rete passthrough esterno per più protocolli IP (che supporta il traffico IPv4 e IPv6), consulta Configurare un bilanciatore del carico di rete passthrough esterno per più protocolli IP.
- Per configurare un bilanciatore del carico di rete passthrough esterno con backend di gruppi di endpoint di rete (NEG) a livello di zona che consentono di inoltrare pacchetti alle interfacce di rete non
nic0
di istanze VM, consulta Configurare un bilanciatore del carico di rete passthrough esterno con backend NEG a livello di zona. - Per configurare la protezione DDoS avanzata sulla rete per un bilanciatore del carico di rete passthrough esterno utilizzando Google Cloud Armor, consulta Configurare la protezione DDoS di rete avanzata.
- Per eliminare le risorse, consulta Eseguire la pulizia della configurazione del bilanciatore del carico.