Questo documento mostra come eseguire il deployment di un bilanciatore del carico di rete passthrough esterno con backend di gruppi di endpoint di rete (NEG) a livello di zona. I NEG di zona con endpoint GCE_VM_IP
ti consentono di:
- Inoltra i pacchetti alle interfacce di rete non
nic0
delle istanze di macchine virtuali (VM) rappresentando l'interfaccia di rete di un'istanza VM come endpoint di backend. - Crea un insieme flessibile di endpoint di backend in cui un endpoint può essere collegato a più NEG e ogni NEG può avere un insieme di endpoint diverso, ma potenzialmente sovrapposto.
Prima di seguire questo documento, acquisisci familiarità con i seguenti aspetti:
- Panoramica del bilanciatore del carico di rete passthrough esterno basato su servizi di backend
- Panoramica dei gruppi di endpoint di rete a livello di zona
Autorizzazioni
Per seguire questi passaggi, devi creare istanze e modificare una rete in un progetto. Devi essere un proprietario o un editor del progetto oppure devi disporre di tutti i seguenti ruoli IAM di Compute Engine:
Attività | Ruolo richiesto |
---|---|
Crea reti, subnet e componenti del bilanciatore del carico | Amministratore rete |
Aggiungi e rimuovi regole firewall | Amministratore sicurezza |
Creare istanze | Amministratore istanze Compute |
Per ulteriori informazioni, consulta le seguenti pagine:
Panoramica della configurazione
Questo documento mostra come configurare e testare un bilanciatore del carico di rete passthrough esterno che utilizza GCE_VM_IP
backend NEG di zona. I passaggi di questa sezione descrivono come configurare quanto segue:
- Una rete VPC di esempio denominata
lb-network
con una subnet personalizzata. - Regole firewall che consentono le connessioni in entrata alle VM di backend.
- Quattro VM:
- VM
vm-a1
evm-a2
nella zonaus-west1-a
- VM
vm-c1
evm-c2
nella zonaus-west1-c
- VM
- Due NEG di backend a livello di zona,
neg-a
nella zonaus-west1-a
eneg-c
nella zonaus-west1-c
. Ogni NEG ha i seguenti endpoint:neg-a
contiene i seguenti due endpoint:nic1
della VMvm-a1
identificata dal suo indirizzo IP interno principalenic1
della VMvm-a2
identificata dal suo indirizzo IP interno principale
neg-c
contiene i seguenti due endpoint:nic1
della VMvm-c1
identificata dal suo indirizzo IP interno principalenic1
della VMvm-c2
identificata dal suo indirizzo IP interno principale
- Una VM client (
vm-client
) inus-west1-a
per testare le connessioni - I seguenti componenti del bilanciatore del carico:
- Un servizio di backend esterno nella regione
us-west1
per gestire la distribuzione della connessione ai due NEG di zona - Una regola di forwarding esterna e un indirizzo IP per il frontend del bilanciatore del carico
- Un servizio di backend esterno nella regione
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.
L'architettura di questo esempio è la seguente:
Prima di iniziare
Installa Google Cloud CLI. Per una panoramica completa dello strumento, consulta la panoramica dell'interfaccia a riga di comando gcloud. I comandi relativi al bilanciamento del carico sono disponibili nei riferimenti di API e gcloud.
Se non hai già eseguito gcloud CLI, esegui prima il comando gcloud init
per l'autenticazione.
Questa pagina presuppone che tu conosca il linguaggio bash.
Configura la rete e le subnet
L'esempio in questa pagina utilizza una rete VPC in modalità personalizzata denominata lb-network
. Puoi utilizzare 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 dual-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 possono essere assegnati sia indirizzi IPv4 esterni sia indirizzi IPv6 esterni.
I backend e i componenti del bilanciatore del carico utilizzati per questo esempio si trovano in questa regione e subnet:
- Regione:
us-central1
- Subnet:
lb-subnet
, con intervallo di indirizzi IPv4 principale10.1.2.0/24
. Anche se scegli l'intervallo di indirizzi IPv4 configurato nella subnet, l'intervallo di indirizzi IPv6 viene assegnato automaticamente. Google fornisce un blocco CIDR IPv6 di 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 un Nome pari a
lb-network
.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
Sebbene sia possibile configurare un intervallo di indirizzi IPv4 per la subnet, non puoi scegliere l'intervallo di 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 la procedura riportata di seguito:
Nella console Google Cloud, vai alla pagina Reti VPC.
Fai clic su Crea rete VPC.
Inserisci un Nome pari a
lb-network
.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 il traffico IPv4, utilizza il comando seguente:
gcloud compute networks subnets create lb-subnet \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Crea VM e gruppi di endpoint di rete
Per dimostrare la natura regionale dei bilanciatori del carico di rete passthrough esterni, questo esempio utilizza due backend NEG a livello di zona in due zone diverse. Il traffico viene bilanciato del carico tra i NEG e tra gli endpoint all'interno di ciascun NEG.
Crea VM
Per questo scenario di bilanciamento del carico, devi creare quattro VM e installare un server web Apache su ogni istanza. Il server web rimane in ascolto sulla porta TCP 80. Per impostazione predefinita, Apache è configurato per l'associazione a qualsiasi indirizzo IP. I bilanciatori del carico di rete passthrough esterni consegnano pacchetti mantenendo l'indirizzo IP di destinazione.
Per semplicità di apprendimento, queste VM di backend eseguono Debian GNU Linux 10.
Per gestire il traffico sia IPv4 sia IPv6, configura le VM di backend in modo che siano a doppio stack. Imposta il valore stack-type
della VM su IPv4_IPv6
. Le VM ereditano anche l'impostazione ipv6-access-type
(in questo esempio, EXTERNAL
) dalla subnet. Per ulteriori 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 appropriato, l'ambiente guest Windows o altri processi che forniscono funzionalità equivalenti.
Ogni VM viene creata con due interfacce di rete, nic0
e nic1
. Questo tutorial utilizza nic1
, associato alla rete VPC lb-network
e alla subnet lb-subnet
. Usare questa rete lb-network
e la subnet lb-subnet
per creare i NEG a livello di zona più avanti in questa procedura.
Console
Crea VM
Nella console Google Cloud, vai alla pagina Istanze VM.
Ripeti i passaggi seguenti per creare quattro VM, utilizzando le seguenti combinazioni di nome e zona:
- Nome:
vm-a1
, zona:us-west1-a
- Nome:
vm-a2
, zona:us-west1-a
- Nome:
vm-c1
, zona:us-west1-c
- Nome:
vm-c2
, zona:us-west1-c
- Nome:
Fai clic su Crea istanza.
Imposta il Nome come indicato in precedenza.
Per Regione, scegli
us-west1
e scegli una Zona come indicato in precedenza.Nella sezione Disco di avvio, assicurati che il sistema operativo Debian e la versione 10 (buster) siano selezionati come opzioni del disco di avvio. Se necessario, fai clic su Scegli per cambiare l'immagine.
Fai clic su Opzioni avanzate e apporta le seguenti modifiche:
- Fai clic su Networking e aggiungi i seguenti tag di rete:
lb-tag
In Interfacce di rete, fai clic su Aggiungi interfaccia di rete e apporta le seguenti modifiche:
Per i backend IPv4 e IPv6:
- Rete:
lb-network
- Subnet:
lb-subnet
- Tipo di stack IP:
IPv4 and IPv6 (dual-stack)
- IP interno principale: Temporaneo (automatico)
- Indirizzo IPv4 esterno: temporaneo (automatico)
- Indirizzo IPv6 esterno: assegna automaticamente
Per i backend solo IPv4:
- Rete:
lb-network
- Subnet:
lb-subnet
- Tipo di stack IP:
IPv4 (single-stack)
- IP interno principale: Temporaneo (automatico)
- IP esterno: Temporaneo
Dopodiché, fai clic su Fine.
- Rete:
Fai clic su Gestione. Nel campo Script di avvio, copia e incolla i seguenti contenuti dello script. I contenuti dello script sono identici per 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
- Fai clic su Networking e aggiungi i seguenti tag di rete:
Fai clic su Crea.
gcloud
Crea le quattro VM eseguendo quattro volte il comando seguente, utilizzando queste quattro combinazioni per [VM-NAME]
e [ZONE]
. I contenuti dello script
sono identici per tutte e quattro le VM.
- VM_NAME:
vm-a1
e ZONE:us-west1-a
- VM_NAME:
vm-a2
e ZONE:us-west1-a
- VM_NAME:
vm-c1
e ZONE:us-west1-c
- VM_NAME:
vm-c2
e ZONE:us-west1-c
Per gestire sia il traffico IPv4 sia quello IPv6, utilizza il comando seguente.
gcloud compute instances create VM_NAME \ --zone=ZONE \ --image-family=debian-10 \ --image-project=debian-cloud \ --tags=lb-tag \ --network-interface=network=default,subnet=default,stack_type=IPv4_IPv6,--ipv6-network-tier=PREMIUM \ --network-interface=network=lb-network,subnet=lb-subnet,stack_type=IPv4_IPv6,--ipv6-network-tier=PREMIUM \ --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 seguente comando:
gcloud compute instances create VM_NAME \ --zone=ZONE \ --image-family=debian-10 \ --image-project=debian-cloud \ --tags=lb-tag \ --network-interface=network=default,subnet=default,stack_type=IPv4_ONLY \ --network-interface=network=lb-network,subnet=lb-subnet,stack_type=IPv4_ONLY \ --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 NEG a livello di zona con GCE_VM_IP
endpoint
I NEG devono essere creati nelle stesse zone delle VM create nel passaggio precedente. Questo esempio crea anche il NEG nella rete VPC lb-network
e nella subnet lb-subnet
associate a nic1
delle VM create nel passaggio precedente. Di conseguenza, gli endpoint del NEG si troveranno su nic1
delle VM.
Console
Per creare un gruppo di endpoint di rete a livello di zona:
- Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
Vai alla pagina Gruppi di endpoint di rete - Fai clic su Crea gruppo di endpoint di rete.
- Inserisci un nome per il NEG di zona:
neg-a
. - Seleziona Tipo di gruppo di endpoint di rete: Gruppo di endpoint di rete (a livello di zona).
- Seleziona la Rete: lb-network
- Seleziona la subnet: lb-subnet
- Seleziona la Zona: us-west1-a.
- Fai clic su Crea.
- Ripeti questi passaggi per creare un secondo NEG a livello di zona denominato
neg-c
, nella zona us-west1-c.
Aggiungi endpoint al NEG a livello di zona:
- Vai alla pagina Gruppi di endpoint di rete nella console Google Cloud.
Vai a Gruppi di endpoint di rete - Fai clic sul Nome del primo gruppo di endpoint di rete creato nel passaggio precedente (neg-a). Viene visualizzata la pagina Dettagli del gruppo di endpoint di rete.
Nella sezione Endpoint di rete in questo gruppo, fai clic su Aggiungi endpoint di rete. Viene visualizzata la pagina Aggiungi endpoint di rete.
- Fai clic su Istanza VM e seleziona vm-a1 per aggiungere i relativi indirizzi IP interni come endpoint di rete.
- Fai clic su Crea.
- Fai di nuovo clic su Aggiungi endpoint di rete e in Istanza VM seleziona vm-a2.
- Fai clic su Crea.
Fai clic sul Nome del secondo gruppo di endpoint di rete creato nel passaggio precedente (neg-c). Viene visualizzata la pagina Dettagli del gruppo di endpoint di rete.
Nella sezione Endpoint di rete in questo gruppo, fai clic su Aggiungi endpoint di rete. Viene visualizzata la pagina Aggiungi endpoint di rete.
- Fai clic su Istanza VM e seleziona vm-c1 per aggiungere i relativi indirizzi IP interni come endpoint di rete.
- Fai clic su Crea.
- Fai di nuovo clic su Aggiungi endpoint di rete e in Istanza VM seleziona vm-c2.
- Fai clic su Crea.
gcloud
Crea un NEG di zona
GCE_VM_IP
denominatoneg-a
inus-west1-a
utilizzando il comandogcloud compute network-endpoint-groups create
:gcloud compute network-endpoint-groups create neg-a \ --network-endpoint-type=gce-vm-ip \ --zone=us-west1-a \ --network=lb-network \ --subnet=lb-subnet
Aggiungi endpoint a
neg-a
:gcloud compute network-endpoint-groups update neg-a \ --zone=us-west1-a \ --add-endpoint='instance=vm-a1' \ --add-endpoint='instance=vm-a2'
Crea un NEG di zona
GCE_VM_IP
denominatoneg-c
inus-west1-c
utilizzando il comandogcloud compute network-endpoint-groups create
:gcloud compute network-endpoint-groups create neg-c \ --network-endpoint-type=gce-vm-ip \ --zone=us-west1-c \ --network=lb-network \ --subnet=lb-subnet
Aggiungi endpoint a
neg-c
:gcloud compute network-endpoint-groups update neg-c \ --zone=us-west1-c \ --add-endpoint='instance=vm-c1' \ --add-endpoint='instance=vm-c2'
Configurazione delle regole del firewall
Crea regole firewall che consentono al traffico esterno (compresi 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 istanze di backend sulla porta 80. Se vuoi creare regole firewall separate specifiche per i probe di controllo di integrità, utilizza gli intervalli di indirizzi IP di origine indicati nella sezione Panoramica dei controlli di integrità: Probe intervalli IP e regole firewall.
Console
Nella console Google Cloud, vai alla pagina Firewall.
Per consentire il traffico IPv4, segui questi passaggi:
- Fai clic su Crea regola firewall.
- Inserisci un Nome:
allow-network-lb-ipv4
. - In corrispondenza di 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 sorgente. In questo modo i probe di controllo di integritàà di Google possono raggiungere le istanze di backend. - In Protocolli e porte specificati, seleziona TCP e inserisci
80
. - Fai clic su Crea.
Per consentire il traffico IPv6, segui questi passaggi:
- Fai di nuovo clic su Crea regola firewall.
- Inserisci un Nome:
allow-network-lb-ipv6
. - In corrispondenza di 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 sorgente. In questo modo i probe di controllo di integritàà di Google possono raggiungere le istanze di backend. - In Protocolli e porte specificati, seleziona TCP e inserisci
80
. - Fai clic su Crea.
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 tue VM ricevono i pacchetti destinati all'indirizzo IP esterno statico configurato. Se utilizzi un'immagine fornita da Compute Engine, le tue istanze vengono configurate automaticamente per gestire questo indirizzo IP. Se utilizzi
un'altra immagine, devi configurare questo indirizzo come alias su eth1
o
come loopback su ogni istanza.
Console
Avvia la configurazione
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic su Crea bilanciatore del carico.
- In 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.
- In Pubblico o interno, seleziona Per il 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
network-lb-zonal-neg
per il nuovo bilanciatore del carico. - In Regione, seleziona
us-west1
. - In Tipo di backend, seleziona Gruppo di endpoint di rete a livello di zona.
- Fai clic su Configurazione backend. Il nome del bilanciatore del carico inserito in precedenza viene visualizzato, ma non è modificabile.
- Nella pagina Configurazione backend, apporta le seguenti modifiche:
- Nell'elenco Gruppo di endpoint di rete, seleziona
neg-a
e fai clic su Fine. - Fai clic su Aggiungi backend e ripeti il passaggio precedente per aggiungere
neg-c
. - In Controllo di integrità, scegli Crea un controllo di integrità o Crea un altro controllo di integrità, quindi inserisci le seguenti informazioni:
- Nome:
tcp-health-check
- Protocollo:
TCP
- Porta:
80
- Nome:
- Fai clic su Salva.
- Nell'elenco Gruppo di endpoint di rete, seleziona
- Verifica che sia presente un segno di spunta blu accanto a Configurazione backend prima di continuare.
Configurazione frontend
- Fai clic su Configurazione frontend.
- In Nome, inserisci
netlb-forwarding-rule
. - Per gestire il traffico IPv4, segui questi passaggi:
- Per Versione IP, seleziona IPv4.
- Per Indirizzo IP, fai clic sul menu a discesa e seleziona Crea indirizzo IP.
- Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci
netlb-ipv4-address
. - Fai clic su Prenota.
- Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci
- In corrispondenza di 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.
- Per Subnet, seleziona lb-subnet.
- Per Intervallo IPv6, fai clic sul menu a discesa e seleziona Crea indirizzo IP.
- Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci
netlb-ipv6-address
. - Fai clic su Prenota.
- Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci
- In corrispondenza di Porte, scegli 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 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
Prenota un indirizzo IP esterno statico.
Per il traffico IPv4: crea un indirizzo IPv4 esterno statico per il bilanciatore del carico.
gcloud compute addresses create netlb-ipv4-address \ --region=us-west1
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 netlb-ipv6-address \ --region=us-west1 \ --subnet=lb-subnet \ --ip-version=IPV6 \ --endpoint-type=NETLB
Creare un controllo di integrità TCP.
gcloud compute health-checks create tcp tcp-health-check \ --region=us-west1 \ --port=80
Crea un servizio di backend.
gcloud compute backend-services create networklb-backend-service \ --protocol=TCP \ --health-checks=tcp-health-check \ --health-checks-region=us-west1 \ --region=us-west1
Aggiungi i due NEG a livello di zona,
neg-a
eneg-c
, al servizio di backend:gcloud compute backend-services add-backend networklb-backend-service \ --region=us-west1 \ --network-endpoint-group=neg-a \ --network-endpoint-group-zone=us-west1-a
gcloud compute backend-services add-backend networklb-backend-service \ --region=us-west1 \ --network-endpoint-group=neg-c \ --network-endpoint-group-zone=us-west1-c
Crea le regole di forwarding a seconda che tu voglia gestire il traffico IPv4 o quello IPv6. Create 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. Utilizza l'indirizzo IPv4 riservato nel passaggio 1 come indirizzo IP esterno statico del bilanciatore del carico.
gcloud compute forwarding-rules create forwarding-rule-ipv4 \ --load-balancing-scheme=EXTERNAL \ --region=us-west1 \ --ports=80 \ --address=netlb-ipv4-address \ --backend-service=networklb-backend-service
Per il traffico IPv6: crea una regola di forwarding per gestire il traffico IPv6. Utilizza l'intervallo di indirizzi IPv6 riservato 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 esterno.
gcloud compute forwarding-rules create forwarding-rule-ipv6 \ --load-balancing-scheme=EXTERNAL \ --region=us-west1 \ --network-tier=PREMIUM \ --ip-version=IPV6 \ --subnet=lb-subnet \ --address=netlb-ipv6-address \ --ports=80 \ --backend-service=networklb-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 osservare la distribuzione del traffico nelle istanze di backend.
Cerca l'indirizzo IP esterno del bilanciatore del carico
Console
Nella pagina Bilanciamento del carico Avanzate, vai alla scheda Regole di forwarding.
Individua la regola di forwarding utilizzata dal bilanciatore del carico.
Nella colonna Address (Indirizzo), prendi nota dell'indirizzo IP esterno indicato.
gcloud: IPv4
Inserisci il seguente comando per visualizzare l'indirizzo IPv4 esterno della regola di forwarding network-lb-forwarding-rule
utilizzata dal bilanciatore del carico.
gcloud compute forwarding-rules describe forwarding-rule-ipv4 \ --region=us-west1
gcloud: IPv6
Inserisci il seguente comando per visualizzare l'indirizzo IPv6 esterno della regola di forwarding network-lb-forwarding-rule
utilizzata dal bilanciatore del carico.
gcloud compute forwarding-rules describe forwarding-rule-ipv6 \ --region=us-west1
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
Prendi nota del testo restituito dal comando curl
. Il nome della VM di backend che genera la risposta viene visualizzato nel 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 è andata a buon fine, prima di riprovare potrebbe essere necessario attendere circa 30 secondi prima che la configurazione sia caricata completamente e le istanze siano contrassegnate come integre.
Opzioni di configurazione aggiuntive
Per personalizzare ulteriormente il bilanciatore del carico di rete passthrough esterno, puoi configurare l'affinità sessione, l'indirizzamento del traffico e un criterio di failover o di monitoraggio delle connessioni. Queste attività sono facoltative e possono essere eseguite in qualsiasi ordine. Per le istruzioni, vedi Opzioni di configurazione aggiuntive.
Passaggi successivi
- Per scoprire 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, vedi 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 supportano il traffico IPv4 e IPv6), consulta Configurare un bilanciatore del carico di rete passthrough esterno per più protocolli IP.
- Per configurare la protezione DDoS di rete avanzata per un bilanciatore del carico di rete passthrough esterno utilizzando Google Cloud Armor, consulta Configurare la protezione DDoS avanzata di rete.
- Per eliminare le risorse, consulta Pulisci la configurazione del bilanciatore del carico.