Configura un bilanciatore del carico di rete passthrough esterno con NEG a livello di zona

Questo documento mostra come eseguire il deployment di un bilanciatore del carico di rete passthrough esterno con endpoint di rete di zona di gruppi di utenti (NEG). I NEG di zona con GCE_VM_IP endpoint ti consentono di eseguire seguenti:

  • Inoltra i pacchetti alle interfacce di rete non nic0 della macchina virtuale (VM) le istanze VM rappresentando un'interfaccia di rete di un'istanza VM come backend endpoint.
  • Crea un set flessibile di endpoint di backend a cui è possibile collegare un endpoint a più NEG e ogni NEG può avere un indirizzo diverso, ma potenzialmente sovrapposto insieme di endpoint.

Prima di seguire questo documento, acquisisci familiarità con quanto segue:

Autorizzazioni

Per seguire questi passaggi, devi creare le istanze e modificare un in un progetto. Devi essere il proprietario o il proprietario di un progetto Editor, oppure devi avere dei seguenti ruoli IAM di Compute Engine:

Attività Ruolo richiesto
Creazione di reti, subnet e componenti del bilanciatore del carico Amministratore rete
Aggiungi e rimuovi regole firewall Amministratore sicurezza
Creazione delle 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 a livello di zona. I passaggi in questa sezione descrivono come configurare quanto segue:

  1. Una rete VPC di esempio denominata lb-network con una subnet personalizzata.
  2. Regole firewall che consentono le connessioni in entrata alle VM di backend.
  3. Quattro VM:
    • VM vm-a1 e vm-a2 nella zona us-west1-a
    • VM vm-c1 e vm-c2 nella zona us-west1-c
  4. Due NEG di backend a livello di zona, neg-a nella zona us-west1-a e neg-c nella zona us-west1-c. Ogni NEG ha i seguenti endpoint:
    • neg-a contiene questi due endpoint:
      • nic1 della VM vm-a1 identificata dal relativo indirizzo IP interno principale
      • nic1 della VM vm-a2 identificata dal relativo indirizzo IP interno principale
    • neg-c contiene questi due endpoint:
      • nic1 della VM vm-c1 identificata dal relativo indirizzo IP interno principale
      • nic1 della VM vm-c2 identificata dal relativo indirizzo IP interno principale
  5. Una VM client (vm-client) in us-west1-a per testare le connessioni
  6. I seguenti componenti del bilanciatore del carico:
    • Un servizio di backend esterno nella regione us-west1 da gestire distribuzione delle connessioni ai due NEG a livello di zona
    • Una regola di forwarding esterno e un indirizzo IP per frontend del bilanciatore del carico,

Il bilanciatore del carico di rete passthrough esterno è un bilanciatore del carico a livello di regione. Tutto il carico i componenti del bilanciatore (VM di backend, servizio di backend e regola di forwarding) devono nella stessa regione.

L'architettura per questo esempio è simile alla seguente:

Bilanciatore del carico di rete passthrough esterno con NEG a livello di zona.
Bilanciatore del carico di rete passthrough esterno con NEG a livello di zona (fai clic per ingrandire).

Prima di iniziare

Installa Google Cloud CLI. Per una panoramica completa dello strumento, consulta Panoramica dell'interfaccia a riga di comando gcloud. Puoi trovare comandi relativi del carico nei riferimenti API e gcloud.

Se non hai già eseguito gcloud CLI in precedenza, esegui prima il comando Comando gcloud init per l'autenticazione.

In questa pagina si presuppone che tu abbia familiarità con bash.

Configura la rete e le subnet

L'esempio in questa pagina utilizza un VPC in modalità personalizzata denominata lb-network. Puoi usare una funzionalità se vuoi gestire solo il traffico IPv4. Tuttavia, il traffico IPv6 richiede una modalità personalizzata subnet.

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 una subnet. Per questo esempio, impostiamo il parametro ipv6-access-type della subnet su EXTERNAL. Ciò significa che le nuove VM su questa subnet possono essere assegnate indirizzi IPv4 e indirizzi IPv6 esterni. Le regole di forwarding possono anche sono stati assegnati sia indirizzi IPv4 esterni sia indirizzi IPv6 esterni.

I backend e i componenti del bilanciatore del carico utilizzati per di esempio si trovano nella regione e nella subnet:

  • Regione: us-central1
  • Subnet: lb-subnet, con intervallo di indirizzi IPv4 principale 10.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:

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

    Vai alle reti VPC

  2. Fai clic su Crea rete VPC.

  3. Inserisci lb-network come nome.

  4. 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 nella subnet, non puoi scegliere l'intervallo degli indirizzi IPv6 per la subnet. Google fornisce un CIDR IPv6 di dimensione fissa (/64) bloccare.
      • Tipo di accesso IPv6: esterno
  5. Fai clic su Crea.

Per supportare solo il traffico IPv4, segui questi passaggi:

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

    Vai alle reti VPC

  2. Fai clic su Crea rete VPC.

  3. Inserisci lb-network come nome.

  4. 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
  5. Fai clic su Crea.

gcloud

  1. Crea la rete VPC in modalità personalizzata:

    gcloud compute networks create lb-network \
        --subnet-mode=custom
    
  2. All'interno della rete lb-network, crea una subnet per i backend in Regione us-central1.

    Per il traffico IPv4 e IPv6, utilizza il comando seguente per creare un'istanza 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
    

Creare 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 su entrambi e tra gli endpoint all'interno di ciascun NEG.

Crea VM

Per questo scenario di bilanciamento del carico, creerai quattro VM e installerai un server web Apache su ciascuna istanza. Il server web rimane in ascolto sulla porta TCP 80. Per impostazione predefinita, Apache è configurato per essere associato a qualsiasi indirizzo IP. I bilanciatori del carico di rete passthrough esterni di pacchetti mantenendo l'indirizzo IP di destinazione.

Per semplificare la didattica, queste VM di backend eseguono Debian GNU Linux 10.

Per gestire il traffico sia IPv4 che IPv6, configura le VM di backend in modo che a doppio stack. Imposta stack-type della VM su IPv4_IPv6. Le VM ereditano anche dell'impostazione ipv6-access-type (in questo esempio, EXTERNAL) dalla subnet. Per Per ulteriori dettagli sui requisiti IPv6, consulta la panoramica del bilanciatore del carico di rete passthrough esterno: Inoltro .

Per utilizzare le VM esistenti come backend, aggiorna le VM in modo che siano a doppio stack utilizzando Comando gcloud compute instances network-interfaces update.

Le istanze che partecipano come VM di backend per i bilanciatori del carico di rete passthrough esterni devono eseguire l'ambiente guest Linux appropriato, Ambiente guest Windows, o altri processi che forniscono una capacità equivalente.

Ogni VM viene creata con due interfacce di rete, nic0 e nic1. Questo tutorial utilizza nic1, che è associato alla rete VPC lb-network e lb-subnet subnet. Usa questa rete lb-network e questa subnet lb-subnet per creare i NEG a livello di zona più avanti in questa procedura.

Console

Crea VM

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

    Vai a Istanze VM

  2. Ripeti i passaggi seguenti per creare quattro VM con il seguente nome e combinazioni di 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
  3. Fai clic su Crea istanza.

  4. Imposta il Nome come indicato in precedenza.

  5. Per Regione, scegli us-west1 e scegli una Zona come indicato in precedenza.

  6. 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. Se necessario, fai clic su Scegli per cambiare l'immagine.

  7. 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: alloca 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.

    • 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
      
  8. Fai clic su Crea.

gcloud

Crea le quattro VM eseguendo il comando seguente quattro volte, utilizzando queste quattro combinazioni per [VM-NAME] e [ZONE]. Contenuti dello script sono identiche 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 il traffico IPv4 e IPv6, utilizza il comando seguente.

gcloud compute instances create VM_NAME \
    --zone=ZONE \
    --image-family=debian-12 \
    --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-12 \
    --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 di zona con GCE_VM_IP endpoint

I NEG devono essere creati nelle stesse zone delle VM create nella precedente passaggio. Questo esempio crea anche il NEG nel VPC lb-network rete e lb-subnet subnet associate a nic1 della VM create nel passaggio precedente. Pertanto, gli endpoint del Il NEG si troverà su nic1 delle VM.

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: neg-a.
  4. Seleziona il Tipo di gruppo di endpoint di rete: Gruppo di endpoint di rete. (a livello di zona).
  5. Seleziona la Rete: lb-network
  6. Seleziona la Subnet: lb-subnet
  7. Seleziona la zona: us-west1-a.
  8. Fai clic su Crea.
  9. Ripeti questi passaggi per creare un secondo NEG di zona chiamato neg-c, in zona us-west1-c.

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 primo gruppo di endpoint di rete creato nella al passaggio precedente (neg-a). Vedrai i Dettagli del 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.

    1. Fai clic su Istanza VM e seleziona vm-a1 per aggiungere il relativo IP interno come endpoint di rete.
    2. Fai clic su Crea.
    3. Fai di nuovo clic su Aggiungi endpoint di rete e in Istanza VM seleziona. vm-a2.
    4. Fai clic su Crea.
  4. Fai clic sul Nome del secondo gruppo di endpoint di rete creato nella al passaggio precedente (neg-c). Vedrai i Dettagli del gruppo di endpoint di rete .

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

    1. Fai clic su Istanza VM e seleziona vm-c1 per aggiungere il relativo IP interno come endpoint di rete.
    2. Fai clic su Crea.
    3. Fai di nuovo clic su Aggiungi endpoint di rete e in Istanza VM seleziona. vm-c2.
    4. Fai clic su Crea.

gcloud

  1. Crea un NEG di zona GCE_VM_IP denominato neg-a in us-west1-a utilizzando il gcloud 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
    
  2. 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'
    
  3. Crea un NEG di zona GCE_VM_IP denominato neg-c in us-west1-c utilizzando il gcloud 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
    
  4. 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 consentano il traffico esterno (incluso l'integrità) di controllo) per raggiungere le istanze di backend.

In questo esempio viene creata una regola firewall che consente il traffico TCP da tutti gli intervalli di origine per raggiungere le istanze di backend sulla porta 80. Se vuoi creare regole firewall separate in modo specifico per i probe del controllo di integrità, usa gli intervalli di indirizzi IP di origine documentato in Panoramica dei controlli di integrità: intervalli IP dei probe e regole firewall.

Console

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

    Vai a Firewall

  2. Per consentire il traffico IPv4, segui questi passaggi:

    1. Fai clic su Crea regola firewall.
    2. Inserisci un Nome: allow-network-lb-ipv4.
    3. In corrispondenza di Rete, seleziona lb-network.
    4. In Target, seleziona Tag di destinazione specificati.
    5. Nel campo Tag di destinazione, inserisci lb-tag.
    6. Per Filtro di origine, seleziona Intervalli IPv4.
    7. Imposta Intervalli IPv4 di origine su 0.0.0.0/0. Ciò consente a IPv4 proveniente da qualsiasi sorgente. Ciò consente anche il controllo di integrità di Google per raggiungere le istanze di backend.
    8. Per Protocolli e porte specificati, seleziona TCP e inserisci 80.
    9. Fai clic su Crea.
  3. Per consentire il traffico IPv6, segui questi passaggi:

    1. Fai di nuovo clic su Crea regola firewall.
    2. Inserisci un Nome: allow-network-lb-ipv6.
    3. In corrispondenza di Rete, seleziona lb-network.
    4. In Target, seleziona Tag di destinazione specificati.
    5. Nel campo Tag di destinazione, inserisci lb-tag.
    6. Per Filtro di origine, seleziona Intervalli IPv6.
    7. Imposta Intervalli IPv6 di origine su ::/0. Ciò consente a IPv6 proveniente da qualsiasi sorgente. Ciò consente anche il controllo di integrità di Google per raggiungere le istanze di backend.
    8. Per Protocolli e porte specificati, seleziona TCP e inserisci 80.
    9. Fai clic su Crea.

gcloud

  1. 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
    
  2. 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 VM per ricevere i pacchetti destinati all'indirizzo IP esterno statico configurare. Se utilizzi un'immagine fornita da Compute Engine, e vengono configurate automaticamente per gestire questo indirizzo IP. Se utilizzando qualsiasi altra immagine, devi configurare questo indirizzo come alias su eth1 oppure come un loopback su ogni istanza.

Per configurare il bilanciatore del carico, segui queste istruzioni.

Console

Avvia la configurazione

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

    Vai a Carica di bilanciamento

  2. Fai clic su Crea bilanciatore del carico.
  3. Per Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
  4. Per Proxy o passthrough, seleziona Carico passthrough bilanciatore del carico e fai clic su Avanti.
  5. Per Pubblico o interno, seleziona Rivolto al pubblico (esterno) e fai clic su Avanti.
  6. Fai clic su Configura.

Configurazione backend

  1. Nella pagina Crea bilanciatore del carico di rete passthrough esterno, inserisci il nome network-lb-zonal-neg per il nuovo bilanciatore del carico.
  2. In Regione, seleziona us-west1.
  3. In Tipo di backend, seleziona Gruppo di endpoint di rete a livello di zona.
  4. Fai clic su Configurazione backend. Il nome del bilanciatore del carico che hai inserito appare prima, ma non è modificabile.
  5. Nella pagina Configurazione backend, apporta le seguenti modifiche:
      .
    1. Nell'elenco Gruppo di endpoint di rete, seleziona neg-a, quindi fai clic su Fine.
    2. Fai clic su Aggiungi backend e ripeti il passaggio precedente per aggiungere neg-c.
    3. In Controllo di integrità, scegli Crea un controllo di integrità oppure Crea un altro controllo di integrità, quindi inserisci le seguenti informazioni:
        .
      • Nome: tcp-health-check
      • Protocollo: TCP
      • Porta: 80
    4. Fai clic su Salva.
  6. Verifica che sia presente un segno di spunta blu accanto a Backend configurazione prima di continuare.

Configurazione frontend

  1. Fai clic su Configurazione frontend.
  2. In Nome, inserisci netlb-forwarding-rule.
  3. Per gestire il traffico IPv4, segui questi passaggi:
    1. Per Versione IP, seleziona IPv4.
    2. Per Indirizzo IP, fai clic sul menu a discesa e seleziona Crea Indirizzo IP.
      1. Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci netlb-ipv4-address.
      2. Fai clic su Prenota.
    3. In Porte, scegli Singola. In Numero porta, inserisci 80.
    4. Fai clic su Fine.
  4. Per gestire il traffico IPv6, segui questi passaggi:

    1. Per Versione IP, seleziona IPv6.
    2. In corrispondenza di Subnet, seleziona lb-subnet.
    3. Per Intervallo IPv6, fai clic sul menu a discesa e seleziona Crea Indirizzo IP.
      1. Nella pagina Prenota un nuovo indirizzo IP statico, per Nome, inserisci netlb-ipv6-address.
      2. Fai clic su Prenota.
    4. In Porte, scegli Singola. In Numero porta, inserisci 80.
    5. Fai clic su Fine.

    Un cerchio blu con un segno di spunta a sinistra di La configurazione del frontend indica che la configurazione è riuscita.

Rivedi la configurazione

  1. Fai clic su Esamina e finalizza.
  2. Rivedi le impostazioni di configurazione del bilanciatore del carico.
  3. (Facoltativo) Fai clic su Codice equivalente per visualizzare la richiesta API REST. che verrà utilizzato per creare il bilanciatore del carico.
  4. Fai clic su Crea.

    Nella pagina del bilanciamento del carico, nella colonna Backend per il nuovo bilanciatore del carico, dovresti vedere un segno di spunta verde che indica che il nuovo che il bilanciatore del carico sia integro.

gcloud

  1. Prenotare un indirizzo IP esterno statico.

    Per il traffico IPv4: crea un IPv4 esterno statico per il tuo con il bilanciatore del carico di rete passthrough esterno regionale.

    gcloud compute addresses create netlb-ipv4-address \
        --region=us-west1
    

    Per il traffico IPv6: crea un IPv6 esterno statico di indirizzi con il bilanciatore del carico di rete passthrough esterno regionale. La subnet utilizzata deve essere una subnet a doppio stack con un nell'intervallo IPv6 esterno.

    gcloud compute addresses create netlb-ipv6-address \
        --region=us-west1 \
        --subnet=lb-subnet \
        --ip-version=IPV6 \
        --endpoint-type=NETLB
    
  2. Crea un controllo di integrità TCP.

    gcloud compute health-checks create tcp tcp-health-check \
        --region=us-west1 \
        --port=80
    
  3. 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
    
  4. Aggiungi i due NEG a livello di zona, neg-a e neg-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
    
  5. Crea le regole di forwarding a seconda che tu voglia gestire o meno Traffico IPv4 o IPv6. Crea entrambe le regole di forwarding da gestire entrambi i tipi di traffico.

    1. Per il traffico IPv4: crea una regola di forwarding per instradare 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 forwarding-rule-ipv4 \
        --load-balancing-scheme=EXTERNAL \
        --region=us-west1 \
        --ports=80 \
        --address=netlb-ipv4-address \
        --backend-service=networklb-backend-service
      
    2. Per il traffico IPv6: crea una regola di forwarding per gestire IPv6 per via del traffico. Utilizza l'intervallo di indirizzi IPv6 riservato al passaggio 1 come indirizzo statico l'indirizzo IP esterno del bilanciatore del carico. La subnet utilizzata deve essere un 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 verso l'indirizzo IP esterno del bilanciatore del carico e osservare che il traffico viene distribuite alle istanze di backend.

Cerca l'indirizzo IP esterno del bilanciatore del carico

Console

  1. Nella pagina Bilanciamento del carico avanzato, vai a Regole di forwarding .

    Vai a Regole di forwarding

  2. Individua la regola di forwarding utilizzata dal bilanciatore del carico.

  3. Nella colonna Indirizzo, prendi nota dell'indirizzo IP esterno elencato.

gcloud: IPv4

Inserisci il seguente comando per visualizzare l'indirizzo IPv4 esterno del network-lb-forwarding-rule regola di forwarding utilizzata dal bilanciatore del carico.

gcloud compute forwarding-rules describe forwarding-rule-ipv4 \
    --region=us-west1

gcloud: IPv6

Inserisci il comando seguente per visualizzare l'indirizzo IPv6 esterno del network-lb-forwarding-rule regola di forwarding 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 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 parametro 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 di backend la generazione della risposta viene visualizzata in tale testo; ad esempio: Page served from: VM_NAME

La risposta del comando curl si alterna in modo casuale nel backend di Compute Engine. Se inizialmente la risposta non va a buon fine, potresti dover attendere circa 30 secondi affinché la configurazione venga caricata completamente contrassegnare le istanze come integre prima di riprovare.

Opzioni di configurazione aggiuntive

Per personalizzare ulteriormente il bilanciatore del carico di rete passthrough esterno, puoi configurare l'affinità sessione, Indirizzamento del traffico e configurare un criterio di failover o di monitoraggio delle connessioni. Queste attività sono facoltative e puoi eseguirle in qualsiasi ordine. Per gli strumenti, consulta Opzioni di configurazione aggiuntive.

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 Istruzioni per creare una regola di forwarding IPv6 con Bring Your Own IP (BYOIP) indirizzi IP esterni.

Adotta i tuoi indirizzi IP per eseguire il provisioning e utilizzare i tuoi indirizzi indirizzi IPv6 per le risorse Google Cloud. Per ulteriori informazioni, vedi Integra i tuoi indirizzi IP.

Prima di iniziare a configurare una regola di forwarding IPv6 con indirizzi BYOIP, devi completa i seguenti passaggi:

  1. Crea un prefisso IPv6 annunciato pubblicamente
  2. Creare prefissi delegati pubblici
  3. Crea sottoprefissi IPv6
  4. Annuncia il prefisso

Per creare una nuova regola di forwarding:

Console

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

    Vai a Bilanciamento del carico.

  2. Fai clic sul nome del bilanciatore del carico che vuoi modificare.
  3. Fai clic su Modifica.
  4. Fai clic su Configurazione frontend.
  5. Fai clic su Aggiungi IP e porta frontend.
  6. Nella sezione Nuovo IP e porta frontend, specifica seguenti:
    1. Il Protocollo è TCP.
    2. Nel campo Versione IP, seleziona IPv6.
    3. Nel campo Intervallo di origine IPv6, seleziona BYOIP.
    4. Nell'elenco Raccolta IP, seleziona un sottoprefisso creato nel passaggi precedenti con l'opzione della regola di forwarding abilitata.
    5. Nel campo Intervallo IPv6, inserisci l'intervallo di indirizzi IPv6. Il protocollo IPv6 di indirizzi devono rispettare i Specifiche del sottoprefisso IPv6.
    6. Nel campo Ports (Porte), inserisci un numero di porta.
    7. Fai clic su Fine.
  7. Fai clic su Aggiorna.

Google Cloud CLI

Crea la regola di forwarding utilizzando il metodo 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 forwarding
  • PROTOCOL: il protocollo IP per la regola di forwarding Il valore predefinito è TCP. Il protocollo IP può essere uno dei seguenti: TCP, UDP o L3_DEFAULT.
  • REGION_A: regione per la regola di forwarding
  • IPV6_CIDR_RANGE: l'intervallo di indirizzi IPv6 che le pubblicazioni delle regola di forwarding. L'intervallo di indirizzi IPv6 deve rispettare le Specifiche del sottoprefisso IPv6.
  • BACKEND_SERVICE: il nome del servizio di backend
  • PDP_NAME: il nome del prefisso delegato pubblico. Il PDP deve essere un sottoprefisso nel Modalità EXTERNAL_IPV6_FORWARDING_RULE_CREATION

Passaggi successivi