Configura il failover per i bilanciatori del carico di rete passthrough esterni

Questa guida utilizza un esempio per insegnarti come configurare il failover per un bilanciatore del carico di rete passthrough esterno con un servizio di backend. Prima di seguire questa guida, acquisisci familiarità con quanto segue:

Autorizzazioni

Per seguire questa guida, devi creare le istanze e modificare in un progetto. Dovresti essere un progetto proprietario o editor, oppure includono tutte le seguenti caratteristiche Ruoli IAM di Compute Engine:

Attività Ruolo richiesto
crea i 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 guide:

Configurazione

Questa guida mostra come configurare e testare un bilanciatore del carico di rete passthrough esterno che usa il failover. I passaggi in questa sezione descrivono come configurare le seguenti:

  1. VM di backend:
    • Un backend principale in un gruppo di istanze non gestite nella zona us-west1-a
    • Un backend di failover in un gruppo di istanze non gestite nella zona us-west1-c
  2. Regole firewall che consentono le connessioni in entrata alle VM di backend
  3. Una VM client per testare le connessioni e osservare il comportamento di failover
  4. I seguenti componenti del bilanciatore del carico di rete passthrough esterno:
    • Un controllo di integrità per il servizio di backend
    • Un servizio di backend nella regione us-west1 da gestire distribuzione delle connessioni tra le VM di backend
    • Una regola di forwarding e un indirizzo IP per frontend del bilanciatore del carico,

L'architettura per questo esempio è simile alla seguente:

Failover con un bilanciatore del carico di rete passthrough esterno.
Failover con un bilanciatore del carico di rete passthrough esterno (fai clic per ingrandire).

Creazione di VM di backend e gruppi di istanze

In questo passaggio creerai le VM di backend e i gruppi di istanze non gestite:

  • Il gruppo di istanze ig-a in us-west1-a è un gruppo principale con due VM:
      .
    • vm-a1
    • vm-a2
  • Il gruppo di istanze ig-c in us-west1-c è un failover con due VM:
      .
    • vm-c1
    • vm-c2

I backend primari e di failover sono posizionati in zone separate la chiarezza e la chiarezza dell'istruzione e la gestione del failover in caso di malfunzionamento di una zona.

Ogni VM principale e di backup è configurata per eseguire un server web Apache su TCP alla porta 80. Per impostazione predefinita, Apache è configurato per associarsi a qualsiasi indirizzo IP. Rete i bilanciatori del carico distribuiscono i pacchetti mantenendo l'IP di destinazione.

Assicurati che il software del server in esecuzione sulle VM principali e di backup sia in ascolto all'indirizzo IP della regola di forwarding del bilanciatore del carico. L'IP di destinazione di un pacchetto consegnato a una VM di backend da il bilanciatore del carico di rete passthrough esterno è l'indirizzo IP della regola di forwarding.

Per semplificare la didattica, tutte le VM primarie e di backup eseguono Debian GNU/Linux 9.

Console

Crea VM di backend

  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 zone.
    • 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 nel passaggio 2.
  5. Per Regione, scegli us-west1 e scegli una Zona come indicato nel passaggio 2.
  6. Nella sezione Disco di avvio, assicurati che l'immagine selezionata sia Debian GNU/Linux 12 (bookworm). Fai clic su Scegli per cambiare l'immagine necessaria.
  7. Fai clic su Opzioni avanzate.
  8. Fai clic su Networking e configura il seguente campo:
      .
    1. In Tag di rete, inserisci network-lb.
  9. Fai clic su Gestione. Inserisci lo script seguente nel Script di avvio. 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
    
  10. Fai clic su Crea.

Crea gruppi di istanze

  1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Ripeti i passaggi seguenti per creare due gruppi di istanze non gestite ciascuno con due VM al loro interno, usando queste combinazioni.

    • Gruppo di istanze: ig-a, zona: us-west1-a, VM: vm-a1 e vm-a2
    • Gruppo di istanze: ig-c, zona: us-west1-c, VM: vm-c1 e vm-c2
  3. Fai clic su Crea gruppo di istanze.

  4. Fai clic su Nuovo gruppo di istanze non gestite.

  5. Imposta Nome come indicato nel passaggio 2.

  6. Nella sezione Località, scegli us-west1 come Regione e quindi scegli una Zona come indicato nel passaggio 2.

  7. In Rete, inserisci default.

  8. Nella sezione Istanze VM, aggiungi le VM come indicato nel passaggio 2.

  9. Fai clic su Crea.

gcloud

  1. Crea 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 di vm-a1 e ZONE di us-west1-a
    • VM-NAME di vm-a2 e ZONE di us-west1-a
    • VM-NAME di vm-c1 e ZONE di us-west1-c
    • VM-NAME di vm-c2 e ZONE di us-west1-c
    gcloud compute instances create VM-NAME \
        --zone=ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=network-lb \
        --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'
    
  2. Crea i due gruppi di istanze non gestite in ciascuna zona:

    gcloud compute instance-groups unmanaged create ig-a \
        --zone us-west1-a
    gcloud compute instance-groups unmanaged create ig-c \
        --zone us-west1-c
    
  3. Aggiungi le VM ai gruppi di istanze appropriati:

    gcloud compute instance-groups unmanaged add-instances ig-a \
        --zone us-west1-a \
        --instances vm-a1,vm-a2
    gcloud compute instance-groups unmanaged add-instances ig-c \
        --zone us-west1-c \
        --instances vm-c1,vm-c2
    

Configurazione delle regole del firewall

Crea una regola firewall che consenta al traffico esterno di raggiungere il backend di Compute Engine.

Console

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  2. Fai clic su Crea regola firewall per creare la regola che consenta il traffico. da qualsiasi fonte. Utilizza i seguenti valori:

    1. Nome: allow-network-lb.
    2. Rete:default
    3. Priorità: 1000
    4. Direzione del traffico: In entrata
    5. Azione in caso di corrispondenza: Consenti.
    6. Target: Tag di destinazione specificati
    7. Tag di destinazione: network-lb
    8. Filtro di origine: Intervalli IPv4
    9. Intervalli IPv4 di origine: 0.0.0.0/0, che consente il traffico da qualsiasi fonte. In questo modo è possibile sia il traffico esterno sia il controllo di integrità per raggiungere le istanze di backend.
    10. Protocolli e porte: scegli Protocolli e porte specificati. Seleziona la casella di controllo TCP e inserisci 80.
  3. Fai clic su Crea.

  4. Fai di nuovo clic su Crea regola firewall per creare la regola che consente e le connessioni SSH in entrata alle istanze. Utilizza i seguenti valori:

    1. Nome: allow-ssh
    2. Rete: default
    3. Priorità: 1000
    4. Direzione del traffico: In entrata
    5. Azione in caso di corrispondenza: Consenti
    6. Target: Tag di destinazione specificati
    7. Tag di destinazione: network-lb
    8. Filtro di origine: Intervalli IPv4
    9. Intervalli IPv4 di origine: 0.0.0.0/0
    10. Protocolli e porte: scegli Protocolli e porte specificati. Seleziona la casella di controllo TCP e inserisci 22.
  5. Fai clic su Crea.

gcloud

gcloud compute firewall-rules create allow-network-lb \
    --target-tags network-lb \
    --allow tcp:80
gcloud compute firewall-rules create allow-ssh \
    --target-tags network-lb \
    --allow tcp:22

Configurazione dei componenti del bilanciatore del carico

Questi passaggi configurano i seguenti componenti del bilanciatore del carico di rete passthrough esterno:

  • Controllo di integrità: questo esempio utilizza un controllo di integrità HTTP che semplicemente verifica la presenza di una risposta HTTP 200 (OK).

  • Servizio di backend: poiché l'esempio trasmette il traffico HTTP tramite bilanciatore del carico di rete, la configurazione specifica TCP, non UDP. A illustra il failover, questo servizio di backend ha un rapporto di failover 0.75.

  • Regola di forwarding: in questo esempio viene creata una singola regola di forwarding.

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 tcp-network-lb per il nuovo bilanciatore del carico.
  2. Fai clic su Configurazione backend. Il nome del bilanciatore del carico che hai inserito appare prima, ma non è modificabile.
  3. Fai clic su Configurazione backend e apporta le seguenti modifiche:
      .
    1. In corrispondenza di Regione, seleziona us-west1.
    2. In Backend, utilizza il menu a discesa Gruppo di istanze per seleziona ig-a. Fai clic su Fine.
    3. Fai clic su Aggiungi backend e ripeti questo passaggio per aggiungere ig-c. Seleziona il Casella di controllo Utilizza questo gruppo di istanze come gruppo di failover per il backup.
    4. In Controllo di integrità, scegli Crea un altro controllo di integrità oppure Crea un altro controllo di integrità e inserisci le seguenti informazioni:
        .
      • Nome: hc-http-80
      • Protocollo: TCP
      • Porta: 80
    5. Fai clic su Salva e continua.
    6. Fai clic su Configurazioni avanzate.
    7. In Rapporto di failover, inserisci 0.75.
    8. 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. Inserisci network-lb-forwarding-rule come nome.
  3. In IP, fai clic sul menu a discesa e seleziona Crea indirizzo IP.
    1. Nella schermata Prenota un nuovo indirizzo IP statico, assegna un Nome di network-lb-ip.
    2. Fai clic su Prenota.
  4. Scegli Singolo e inserisci 80 come Numero porta.
  5. Fai clic sul pulsante Fine.

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

Rivedi la configurazione

  1. Fai clic sul pulsante Esamina e finalizza per verificare l'intera configurazione impostazioni del bilanciatore del carico.
  2. Se le impostazioni sono corrette, fai clic su Crea. L'aggiornamento del bilanciatore del carico da creare.

    Nella schermata del bilanciamento del carico, sotto la 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. Crea un indirizzo IP esterno statico per il bilanciatore del carico.

    gcloud compute addresses create network-lb-ip \
        --region us-west1
    
  2. Crea un nuovo controllo di integrità HTTP per testare la connettività TCP alle VM su 80.

    gcloud compute health-checks create http hc-http-80 \
        --region us-west1 \
        --port 80
    
  3. Crea il servizio di backend per il traffico HTTP:

    gcloud compute backend-services create network-lb-backend-service \
        --protocol tcp \
        --region us-west1 \
        --health-checks hc-http-80 \
        --health-checks-region us-west1 \
        --failover-ratio 0.75
    
  4. Aggiungi il backend principale al servizio di backend:

    gcloud compute backend-services add-backend network-lb-backend-service \
        --region us-west1 \
        --instance-group ig-a \
        --instance-group-zone us-west1-a
    
  5. Aggiungi il backend di failover al servizio di backend:

    gcloud compute backend-services add-backend network-lb-backend-service \
        --region us-west1 \
        --instance-group ig-c \
        --instance-group-zone us-west1-c \
        --failover
    
  6. Creare una regola di forwarding per il servizio di backend. Utilizza l'indirizzo IP riservato nel passaggio 1 come indirizzo IP esterno statico del carico con il bilanciatore del carico di rete passthrough esterno regionale.

    gcloud compute forwarding-rules create network-lb-forwarding-rule \
        --region us-west1 \
        --load-balancing-scheme external \
        --address network-lb-ip\
        --ports 80 \
        --backend-service network-lb-backend-service
    

Test

Questi test mostrano come convalidare la configurazione del bilanciatore del carico e apprendono sul suo comportamento previsto.

Invia traffico al bilanciatore del carico

Questa procedura invia traffico esterno al bilanciatore del carico. Utilizzerai questo per completare gli altri test.

  1. Connettiti all'istanza VM client.

    gcloud compute forwarding-rules describe network-lb-forwarding-rule \
        --region us-west1
    
  2. Effettua una richiesta web al bilanciatore del carico utilizzando curl per contattare il relativo IP .

    curl http://IP_ADDRESS
    
  3. 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-a1

Stato iniziale test

Una volta configurato il bilanciatore del carico di esempio, tutte e quattro le VM di backend dovrebbe essere integro:

  • le due VM principali, vm-a1 e vm-a2
  • le due VM di backup, vm-c1 e vm-c2

Segui la procedura di test per inviare traffico al bilanciatore del carico. Ripeti il secondo passaggio alcune volte. Il comportamento previsto è che il traffico gestite dalle due VM principali, vm-a1 e vm-a2, perché entrambe sono integro. Ogni VM principale dovrebbe fornire una risposta all'incirca volte poiché non è stata eseguita alcuna affinità sessione configurate per questo bilanciatore del carico.

Test del failover in corso...

Questo test simula l'errore di vm-a1 per consentirti di osservare il comportamento di failover.

  1. Connettiti alla VM vm-a1.

    gcloud compute ssh vm-a1 --zone us-west1-a
    
  2. Arresta il server web Apache. Dopo dieci secondi, Google Cloud considera che questa VM non è integro. (il controllo di integrità hc-http-80 che hai creato nella configurazione utilizza l'intervallo di controllo predefinito di cinque secondi. soglia di stato non integro di due probe consecutivi non riusciti.)

    sudo apachectl stop
    
  3. Segui la procedura di test per inviare il traffico alla con il bilanciatore del carico di rete. Ripeti il secondo passaggio a più volte. Il comportamento previsto è che il traffico venga ora gestito dalle due VM di backup, vm-c1 e vm-c2. Poiché solo una VM principale, vm-a2, stato integro, il rapporto tra VM primarie integre e VM primarie totali è 0.5. Questo numero è inferiore alla soglia di failover di 0.75, quindi Google Cloud ha riconfigurato il pool attivo del bilanciatore del carico in modo da utilizzare delle VM di backup. Dovresti vedere che ogni VM di backup fornisce una risposta approssimativamente metà delle volte purché nessuna affinità sessione sia stata configurate per questo bilanciatore del carico.

Errore del test

Questo test simula il failover riavviando il server Apache su vm-a1.

  1. Connettiti alla VM vm-a1.

    gcloud compute ssh vm-a1 --zone us-west1-a
    
  2. Avvia il server web Apache e attendi 10 secondi.

    sudo apachectl start
    
  3. Segui la procedura di test del client. Ripeti il secondo passaggio a più volte. Il comportamento previsto è che il traffico venga gestito dalle due VM principali, vm-a1 e vm-a2. Con entrambe le VM primarie in stato integro, il rapporto tra VM primarie integre e VM primarie totali è 1.0, maggiore del soglia di failover di 0.75, quindi Google Cloud ha configurato per utilizzare di nuovo le VM primarie.

Aggiunta di altre VM di backend

Questa sezione estende la configurazione di esempio aggiungendo altre risorse principali le VM di backup nel bilanciatore del carico. Per farlo, vengono creati altri due backend gruppi di istanze per dimostrare la possibilità di distribuire VM primarie e di backup tra più zone nella stessa regione:

  • Un terzo gruppo di istanze, ig-d in us-west1-c, funge da gruppo principale con due VM:
      .
    • vm-d1
    • vm-d2
  • Un quarto gruppo di istanze, ig-b in us-west1-a, funge da failover con due VM:
      .
    • vm-b1
    • vm-b2

L'architettura modificata per questo esempio ha il seguente aspetto:

Failover del bilanciatore del carico di rete passthrough esterno multizona.
Failover del bilanciatore del carico di rete passthrough esterno multizona (fai clic per ingrandire).

Crea VM e gruppi di istanze aggiuntivi

Segui questi passaggi per creare le VM principali e di backup aggiuntive e le relative gruppi di istanze non gestite corrispondenti.

Console

Crea VM di backend

  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 zone.

    • Nome: vm-b1, zona: us-west1-a
    • Nome: vm-b2, zona: us-west1-a
    • Nome: vm-d1, zona: us-west1-c
    • Nome: vm-d2, zona: us-west1-c
  3. Fai clic su Crea istanza.

  4. Imposta il Nome come indicato nel passaggio 2.

  5. Per Regione, scegli us-west1 e scegli una Zona come indicato nel passaggio 2.

  6. Nella sezione Disco di avvio, assicurati che l'immagine selezionata sia Debian GNU/Linux 9 Stretch. Fai clic su Scegli per cambiare l'immagine necessaria.

  7. Fai clic su Opzioni avanzate.

  8. Fai clic su Networking e configura il seguente campo:

    1. In Tag di rete, inserisci network-lb.
  9. Fai clic su Gestione. Inserisci lo script seguente nel Script di avvio. 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
    
  10. Fai clic su Crea.

Crea gruppi di istanze

  1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Ripeti i passaggi seguenti per creare due gruppi di istanze non gestite ciascuno con due VM in una, utilizzando queste combinazioni.

    • Gruppo di istanze: ig-b, zona: us-west1-a, VM: vm-b1 e vm-b2
    • Gruppo di istanze: ig-d, zona: us-west1-c, VM: vm-d1 e vm-d2
  3. Fai clic su Crea gruppo di istanze.

  4. Fai clic su Nuovo gruppo di istanze non gestite.

  5. Imposta Nome come indicato nel passaggio 2.

  6. Nella sezione Località, scegli us-west1 come Regione e quindi scegli una Zona come indicato nel passaggio 2.

  7. In Rete, inserisci default.

  8. Nella sezione Istanze VM, aggiungi le VM come indicato nel passaggio 2.

  9. Fai clic su Crea.

gcloud

  1. Crea 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 di vm-b1 e ZONE di us-west1-a
    • VM-NAME di vm-b2 e ZONE di us-west1-a
    • VM-NAME di vm-d1 e ZONE di us-west1-c
    • VM-NAME di vm-d2 e ZONE di us-west1-c
    gcloud compute instances create VM-NAME \
        --zone=ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=network-lb \
        --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'
    
  2. Crea i due gruppi di istanze non gestite in ciascuna zona:

    gcloud compute instance-groups unmanaged create ig-b \
        --zone us-west1-a
    gcloud compute instance-groups unmanaged create ig-d \
        --zone us-west1-c
    
  3. Aggiungi le VM ai gruppi di istanze appropriati:

    gcloud compute instance-groups unmanaged add-instances ig-b \
        --zone us-west1-a \
        --instances vm-b1,vm-b2
    gcloud compute instance-groups unmanaged add-instances ig-d \
        --zone us-west1-c \
        --instances vm-d1,vm-d2
    

Aggiunta di un backend principale

Puoi utilizzare questa procedura come modello per aggiungere un'istanza non gestita gruppo a un servizio di backend del bilanciatore del carico di rete passthrough esterno esistente come il backend principale. Per la configurazione di esempio, questa procedura mostra come aggiungi il gruppo di istanze ig-d come backend principale al bilanciatore del carico network-lb.

Console

Modifica la configurazione del bilanciatore del carico per aggiungere un backend principale.

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

    Vai a Bilanciamento del carico

  2. Fai clic sul bilanciatore del carico che vuoi modificare.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazione backend e apporta le seguenti modifiche:

    1. In Backend, fai clic su Aggiungi backend.
    2. Dal menu a discesa, seleziona il gruppo di istanze da aggiungere come gruppo di istanze il backend principale. In questo caso, ig-d.
    3. Fai clic su Fine.
    4. Verifica che sia presente un segno di spunta blu accanto a Backend configurazione prima di continuare.

Rivedi la configurazione

  1. Fai clic sul pulsante Esamina e finalizza e conferma che il nuovo il backend principale è visibile in Backend.
  2. Se le impostazioni sono corrette, fai clic su Crea. L'aggiornamento del bilanciatore del carico da creare.

    Nella schermata del bilanciamento del carico, sotto la 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

Usa questo comando gcloud per aggiungere un backend principale a un servizio di backend del bilanciatore del carico di rete passthrough esterno esistente.

gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION

dove:

  • BACKEND_SERVICE_NAME è il nome del backend del bilanciatore del carico completamente gestito di Google Cloud. Ad esempio, utilizza network-lb-backend-service.
  • INSTANCE_GROUP_NAME è il nome del gruppo di istanze da aggiungere come il backend principale. Ad esempio, utilizza ig-d.
  • INSTANCE_GROUP_ZONE è la zona in cui viene definito il gruppo di istanze. Ad esempio, utilizza us-west1-c.
  • REGION è la regione del bilanciatore del carico. Ad esempio, utilizza us-west1.

Aggiunta di un backend di failover

Puoi utilizzare questa procedura come modello per aggiungere un'istanza non gestita gruppo a un servizio di backend del bilanciatore del carico di rete passthrough esterno esistente come di failover. Per la configurazione di esempio, questa procedura mostra come aggiungi il gruppo di istanze ig-b come backend di failover al bilanciatore del carico network-lb.

Console

Modifica la configurazione del bilanciatore del carico per aggiungere un backend principale.

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

    Vai a Bilanciamento del carico

  2. Fai clic sul bilanciatore del carico che vuoi modificare.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazione backend e apporta le seguenti modifiche:

    1. In Backend, fai clic su Aggiungi backend.
    2. Dal menu a discesa, seleziona il gruppo di istanze da aggiungere come gruppo di istanze di failover. In questo caso, ig-b.
    3. Seleziona Usa questo gruppo di istanze come gruppo di failover per il backup casella di controllo.
    4. Fai clic su Fine.
    5. Verifica che sia presente un segno di spunta blu accanto a Backend configurazione prima di continuare.

Rivedi la configurazione

  1. Fai clic sul pulsante Esamina e finalizza e conferma che il nuovo il backend principale è visibile in Backend.
  2. Se le impostazioni sono corrette, fai clic su Crea. L'aggiornamento del bilanciatore del carico da creare.

    Nella schermata del bilanciamento del carico, sotto la 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

Utilizza il seguente comando gcloud per aggiungere un backend di failover a un servizio di backend del bilanciatore del carico di rete passthrough esterno esistente.

gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --failover

dove:

  • BACKEND_SERVICE_NAME è il nome del backend del bilanciatore del carico completamente gestito di Google Cloud. Ad esempio, utilizza network-lb-backend-service.
  • INSTANCE_GROUP_NAME è il nome del gruppo di istanze da aggiungere come di failover. Ad esempio, utilizza ig-b.
  • INSTANCE_GROUP_ZONE è la zona in cui viene definito il gruppo di istanze. Ad esempio, utilizza us-west1-a.
  • REGION è la regione del bilanciatore del carico. Ad esempio, utilizza us-west1.

Conversione di un backend principale o di failover

Puoi usare la conversione di un backend principale in un backend di failover o, viceversa, senza dover rimuovere il gruppo di istanze dal bilanciatore del carico di rete passthrough esterno di servizio di backend.

gcloud

Utilizza il seguente comando gcloud per convertire un backend principale esistente in un backend di failover:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --failover

Usa il seguente comando gcloud per convertire un backend di failover esistente in un backend principale:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --no-failover

dove:

  • BACKEND_SERVICE_NAME è il nome del backend del bilanciatore del carico completamente gestito di Google Cloud.
  • INSTANCE_GROUP_NAME è il nome del gruppo di istanze.
  • INSTANCE_GROUP_ZONE è la zona in cui viene definito il gruppo di istanze.
  • REGION è la regione del bilanciatore del carico.

Configurazione dei criteri di failover

Questa sezione descrive come gestire un failover criterio per il backend di un bilanciatore del carico di rete passthrough esterno completamente gestito di Google Cloud. Un criterio di failover è costituito da:

  • Rapporto di failover
  • Eliminazione del traffico quando tutte le VM di backend sono in stato non integro
  • Svuotamento connessioni al failover

Per ulteriori informazioni sul di un criterio di failover, vedi:

Definizione di un criterio di failover

Le istruzioni riportate di seguito descrivono come definire il criterio di failover per un bilanciatore del carico di rete passthrough esterno esistente.

gcloud

Per definire un criterio di failover utilizzando gcloud CLI, aggiorna il servizio di backend del bilanciatore del carico:

gcloud compute backend-services update BACKEND_SERVICE_NAME \
   --region REGION \
   --failover-ratio FAILOVER_RATIO \
   --connection-drain-on-failover \
   --connection-draining-timeout=CONNECTION_DRAINING_TIMEOUT \
   --drop-traffic-if-unhealthy

dove:

  • BACKEND_SERVICE_NAME è il nome del backend del bilanciatore del carico completamente gestito di Google Cloud. Ad esempio, utilizza network-lb.
  • REGION è la regione del bilanciatore del carico. Ad esempio, utilizza us-west1.
  • FAILOVER_RATIO è il rapporto di failover. I valori possibili sono compresi tra 0.0 e 1.0, inclusi. Ad esempio, utilizza 0.75.
  • CONNECTION_DRAINING_TIMEOUT consente la persistenza delle connessioni TCP, anche VM che non sono più nel pool attivo, per un periodo massimo di tempo per svuotamento della connessione.

Visualizzazione di un criterio di failover

Le istruzioni riportate di seguito descrivono come visualizzare il criterio di failover esistente un bilanciatore del carico di rete passthrough esterno.

gcloud

Per elencare le impostazioni dei criteri di failover utilizzando gcloud CLI, usa questo comando. Le impostazioni non definite in un criterio di failover utilizzano valori predefiniti del criterio di failover.

gcloud compute backend-services describe BACKEND_SERVICE_NAME \
   --region REGION \
   --format="get(failoverPolicy)"

dove:

  • BACKEND_SERVICE_NAME è il nome del backend del bilanciatore del carico completamente gestito di Google Cloud. Ad esempio, utilizza network-lb-backend-service.
  • REGION è la regione del bilanciatore del carico. Ad esempio, utilizza us-west1.

Passaggi successivi