Regionalen externen Proxy-Network Load Balancer mit zonalen NEG-Back-Ends einrichten

Ein regionaler externer Proxy-Network-Load-Balancer ist ein proxy-basierter regionaler Layer-4-Load-Balancer, mit dem Sie Ihren TCP-Diensttraffic in einer einzelnen Region hinter einer externen regionalen IP-Adresse ausführen und skalieren können. Diese Load Balancer verteilen externen TCP-Traffic aus dem Internet an Back-Ends in derselben Region.

Diese Anleitung enthält eine Anleitung zum Einrichten eines regionalen externen Proxy-Network Load Balancers mit einem zonalen NEG-Backend (Netzwerk-Endpunktgruppe).

Lesen Sie zuerst die folgenden Dokumente:

In diesem Beispiel verwenden wir den Load-Balancer, um TCP-Traffic auf Backend-VMs in zwei zonalen NEGs in der Region A zu verteilen. Der Dienst besteht dabei aus einer Reihe von Apache-Servern, die für die Kommunikation über Port 80 konfiguriert sind.

In diesem Beispiel konfigurieren Sie die im folgenden Diagramm dargestellte Bereitstellung.

Beispielkonfiguration für regionalen externen Proxy-Network Load Balancer mit zonalen NEG-Back-Ends.
Beispielkonfiguration für regionalen externen Proxy-Load Balancer mit zonalen NEG-Back-Ends.

Dies ist ein regionaler Load Balancer. Alle Load-Balancer-Komponenten (Backend-Instanzgruppe, Backend-Dienst, Ziel-Proxy und Weiterleitungsregel) müssen sich in derselben Region befinden.

Berechtigungen

Damit Sie dieser Anleitung folgen können, müssen Sie in der Lage sein, Instanzen zu erstellen und ein Netzwerk in einem Projekt zu ändern. Sie müssen entweder Inhaber oder Bearbeiter des Projekts sein oder alle folgenden Compute Engine-IAM-Rollen innehaben.

Aufgabe Erforderliche Rolle
Netzwerke, Subnetze und Load-Balancer-Komponenten erstellen Compute-Netzwerkadministrator (roles/compute.networkAdmin)
Firewallregeln hinzufügen und löschen Compute-Sicherheitsadministrator (roles/compute.securityAdmin)
Instanzen erstellen Compute-Instanzadministrator (roles/compute.instanceAdmin)

Weitere Informationen finden Sie in folgenden Leitfäden:

Netzwerk und Subnetze konfigurieren

Sie benötigen ein VPC-Netzwerk mit zwei Subnetzen: eines für die Back-Ends des Load-Balancers und eines für die Proxys des Load-Balancers. Dies ist ein regionaler Load Balancer. Traffic innerhalb des VPC-Netzwerks wird an den Load-Balancer weitergeleitet, wenn sich die Quelle des Traffics in einem Subnetz in derselben Region wie der Load-Balancer befindet.

In diesem Beispiel werden das folgende VPC-Netzwerk, die folgende Region und die folgenden Subnetze verwendet:

  • Netzwerk: Ein VPC-Netzwerk im benutzerdefinierten Modus mit dem Namen lb-network

  • Subnetz für Back-Ends: Ein Subnetz mit dem Namen backend-subnet in Region A, das 10.1.2.0/24 für seinen primären IP-Adressbereich verwendet

  • Subnetz für Proxys: Ein Subnetz mit dem Namen proxy-only-subnet in Region A, das 10.129.0.0/23 für seinen primären IP-Adressbereich verwendet.

Netzwerk und Subnetz für Back-Ends erstellen

Console

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur Seite VPC-Netzwerke

  2. Klicken Sie auf VPC-Netzwerk erstellen.

  3. Geben Sie für Name lb-network ein.

  4. Führen Sie im Abschnitt Subnetze folgende Schritte aus:

    1. Legen Sie Modus für Subnetzerstellung auf Benutzerdefiniert fest.
    2. Geben Sie im Bereich Neues Subnetz folgende Informationen ein:
      • Name: backend-subnet
      • Region: REGION_A
      • IP-Adressbereich: 10.1.2.0/24
    3. Klicken Sie auf Fertig.
  5. Klicken Sie auf Erstellen.

gcloud

  1. Verwenden Sie zum Erstellen des benutzerdefinierten VPC-Netzwerks den Befehl gcloud compute networks create:

    gcloud compute networks create lb-network --subnet-mode=custom
    
  2. Verwenden Sie zum Erstellen eines Subnetzes im Netzwerk lb-network in der Region REGION_A den Befehl gcloud compute networks subnets create:

    gcloud compute networks subnets create backend-subnet \
       --network=lb-network \
       --range=10.1.2.0/24 \
       --region=REGION_A
    

Nur-Proxy-Subnetz erstellen

Ein Nur-Proxy-Subnetz stellt eine Reihe von IP-Adressen bereit, die Google zum Ausführen von Envoy-Proxys in Ihrem Namen verwendet. Die Proxys beenden Verbindungen vom Client und erstellen neue Verbindungen zu den Back-Ends.

Dieses Nur-Proxy-Subnetz wird von allen Envoy-basierten Load Balancern in Region A des VPC-Netzwerks lb-network verwendet.

Console

Wenn Sie die Google Cloud Console verwenden, können Sie das Nur-Proxy-Subnetz später auf der Seite Load-Balancing erstellen.

Führen Sie die folgenden Schritte aus, wenn Sie jetzt das Nur-Proxy-Subnetz erstellen möchten:

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur Seite VPC-Netzwerke

  2. Klicken Sie auf den Namen des freigegebenen VPC-Netzwerks: lb-network.

  3. Klicken Sie auf Subnetz hinzufügen.

  4. Geben Sie für Name proxy-only-subnet ein.

  5. Wählen Sie bei Region die Option REGION_A aus.

  6. Setzen Sie Zweck auf Regional verwalteter Proxy.

  7. Geben Sie 10.129.0.0/23 als IP-Adressbereich ein.

  8. Klicken Sie auf Hinzufügen.

gcloud

Verwenden Sie zum Erstellen des Nur-Proxy-Subnetzes den Befehl gcloud compute networks subnets create:

gcloud compute networks subnets create proxy-only-subnet \
    --purpose=REGIONAL_MANAGED_PROXY \
    --role=ACTIVE \
    --region=REGION_A \
    --network=lb-network \
    --range=10.129.0.0/23

Firewallregeln erstellen

In diesem Beispiel erstellen Sie die folgenden Firewallregeln:

  • fw-allow-health-check: Eine Regel für eingehenden Traffic, die für Google Cloud-Instanzen mit Load-Balancing gilt und Traffic von der Systemdiagnose von Google Cloud (130.211.0.0/22 und 35.191.0.0/16) zulässt. In diesem Beispiel wird das Ziel-Tag allow-health-check verwendet, um die Instanzen zu identifizieren, auf die sie angewendet werden soll.
  • fw-allow-ssh: Eine Regel für eingehenden Traffic, die eingehende SSH-Verbindungen an TCP-Port 22 von jeder Adresse aus ermöglicht. Sie können einen restriktiveren IP-Quellbereich für diese Regel auswählen. Geben Sie dazu beispielsweise nur die IP-Bereiche des Systems an, von dem aus Sie SSH-Sitzungen initiieren. In diesem Beispiel wird das Ziel-Tag allow-ssh verwendet, um die VMs zu identifizieren, auf die sie angewendet werden soll.
  • fw-allow-proxy-only-subnet: Eine allow-Firewallregel für eingehenden Traffic für das Nur-Proxy-Subnetz, mit dem der Load-Balancer mit Backend-Instanzen auf dem TCP-Port 80 kommunizieren kann. In diesem Beispiel wird das Ziel-Tag allow-proxy-only-subnet verwendet, um die Backend-VMs zu identifizieren, auf die es angewendet werden soll.

Console

  1. Rufen Sie in der Google Cloud Console die Seite der Firewall-Richtlinien auf.

    Zu den Firewall-Richtlinien

  2. Klicken Sie auf Firewallregel erstellen und füllen Sie folgende Felder aus:

    • Name: fw-allow-health-check
    • Netzwerk: lb-network
    • Ziele: Angegebene Ziel-Tags
    • Zieltags: allow-health-check
    • Quellfilter: IPv4-Bereiche.
    • IPv4-Quellbereiche: 130.211.0.0/22 und 35.191.0.0/16
    • Protokolle und Ports:
      • Wählen Sie Angegebene Protokolle und Ports aus.
      • Klicken Sie das Kästchen TCP an und geben Sie 80 als Portnummer ein.
  3. Klicken Sie auf Erstellen.

  4. Klicken Sie ein zweites Mal auf Firewallregel erstellen, um die Regel zu erstellen, die eingehende SSH-Verbindungen zulässt:

    • Name: fw-allow-ssh
    • Netzwerk: lb-network
    • Priorität: 1000
    • Trafficrichtung: Eingehend
    • Aktion bei Übereinstimmung: Zulassen
    • Ziele: Angegebene Ziel-Tags
    • Zieltags: allow-ssh
    • Quellfilter: IPv4-Bereiche.
    • Source IPv4 ranges: 0.0.0.0/0
    • Protokolle und Ports:
      • Wählen Sie Angegebene Protokolle und Ports aus.
      • Klicken Sie das Kästchen TCP an und geben Sie 22 als Portnummer ein.
  5. Klicken Sie auf Erstellen.

  6. Klicken Sie ein drittes Mal auf Firewallregel erstellen, um die Regel zu erstellen, die eingehende Verbindungen vom Nur-Proxy-Subnetz zu den Google Cloud-Back-Ends zulässt:

    • Name: fw-allow-proxy-only-subnet
    • Netzwerk: lb-network
    • Priorität: 1000
    • Trafficrichtung: Eingehend
    • Aktion bei Übereinstimmung: Zulassen
    • Ziele: Angegebene Ziel-Tags
    • Zieltags: allow-proxy-only-subnet
    • Quellfilter: IPv4-Bereiche.
    • Source IPv4 ranges: 10.129.0.0/23
    • Protokolle und Ports:
      • Wählen Sie Angegebene Protokolle und Ports aus.
      • Klicken Sie das Kästchen TCP an und geben Sie 80 als Portnummer ein.
  7. Klicken Sie auf Erstellen.

gcloud

  1. Erstellen Sie die Regel fw-allow-health-check, damit die Google Cloud-Systemdiagnosen die Backend-Instanzen auf dem TCP-Port 80 erreichen können:

    gcloud compute firewall-rules create fw-allow-health-check \
        --network=lb-network \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80
    
  2. Erstellen Sie die Firewallregel fw-allow-ssh, um SSH-Verbindungen zu VMs mit dem Netzwerk-Tag allow-ssh zu ermöglichen. Wenn Sie source-ranges weglassen, bezieht Google Cloud die Regel auf jede Quelle.

    gcloud compute firewall-rules create fw-allow-ssh \
        --network=lb-network \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-ssh \
        --rules=tcp:22
    
  3. Erstellen Sie eine Firewallregel zum Zulassen von eingehendem Traffic für das Nur-Proxy-Subnetz, damit der Load-Balancer mit Backend-Instanzen auf dem TCP-Port 80 kommunizieren kann:

    gcloud compute firewall-rules create fw-allow-proxy-only-subnet \
        --network=lb-network \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-proxy-only-subnet \
        --source-ranges=10.129.0.0/23 \
        --rules=tcp:80
    

IP-Adresse des Load-Balancers reservieren

Console

  1. Rufen Sie in der Google Cloud Console die Seite Statische Adresse reservieren auf.

    Zur Seite "Statische Adresse reservieren"

  2. Wählen Sie einen Namen für die neue Adresse.

  3. Wählen Sie für Netzwerkdienststufe die Option Standard aus.

  4. Setzen Sie die IP-Version auf IPv4. IPv6-Adressen werden nicht unterstützt.

  5. Wählen Sie unter Typ die Option Regional aus.

  6. Wählen Sie bei Region die Option REGION_A aus.

  7. Übernehmen Sie für die Option Verknüpft mit die Einstellung Keine. Nachdem Sie den Load-Balancer erstellt haben, wird diese IP-Adresse an die Weiterleitungsregel des Load-Balancers angehängt.

  8. Klicken Sie auf Reservieren, um die IP-Adresse zu reservieren.

gcloud

  1. Verwenden Sie den Befehl gcloud compute addresses create, um eine statische externe IP-Adresse zu reservieren:

    gcloud compute addresses create ADDRESS_NAME  \
       --region=REGION_A \
       --network-tier=STANDARD
    

    Ersetzen Sie dabei ADDRESS_NAME durch den Namen, den Sie dieser Adresse geben möchten.

  2. Verwenden Sie den Befehl gcloud compute addresses describe, um das Ergebnis anzeigen zu lassen:

    gcloud compute addresses describe ADDRESS_NAME
    

Zonale NEG einrichten

Richten Sie eine zonale NEG mit Endpunkten des Typs GCE_VM_IP_PORT in Region A ein. Erstellen Sie zuerst die VMs, dann eine zonale NEG und fügen Sie der NEG die Netzwerkendpunkte der VMs hinzu.

VMs erstellen

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu Seite „VM-Instanzen“

  2. Klicken Sie auf Instanz erstellen.

  3. Legen Sie als Name vm-a1 fest.

  4. Wählen Sie bei Region die Option REGION_A aus.

  5. Wählen Sie bei Zone die Option ZONE_A aus.

  6. Achten Sie darauf, dass im Abschnitt Bootlaufwerk Debian GNU/Linux 12 (bookworm) als Bootlaufwerk-Optionen ausgewählt ist. Klicken Sie auf Auswählen, um das Image bei Bedarf zu ändern.

  7. Klicken Sie auf Erweiterte Optionen.

  8. Klicken Sie auf Netzwerk und konfigurieren Sie dann die folgenden Felder:

    1. Geben Sie für Netzwerk-Tags allow-ssh, allow-health-check und allow-proxy-only-subnet ein.
    2. Wählen Sie für Netzwerkschnittstellen Folgendes aus:
      • Netzwerk: lb-network
      • Subnetz: backend-subnet
  9. Klicken Sie auf Verwaltung. Fügen Sie im Feld Startskript das nachfolgende Skript ein.

    #! /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. Klicken Sie auf Erstellen.

  11. Wiederholen Sie die vorherigen Schritte, um drei weitere VMs zu erstellen. Verwenden Sie die folgenden Kombinationen aus Name und Zone:

    • Name: vm-a2 | Zone: ZONE_A
    • Name: vm-b1 | Zone: ZONE_B
    • Name: vm-b2 | Zone: ZONE_B

gcloud

Verwenden Sie zum Erstellen der VMs zweimal den Befehl gcloud compute instances create. Verwenden Sie die folgenden Kombinationen für VM_NAME und ZONE. Der Skriptinhalt ist für beide VMs identisch:

  • VM_NAME: vm-a1 und ZONE: ZONE_A
  • VM_NAME: vm-a2 und ZONE: ZONE_A
  • VM_NAME: vm-b1 und ZONE: ZONE_B
  • VM_NAME: vm-b2 und ZONE: ZONE_B
 gcloud compute instances create VM_NAME \
     --zone=ZONE \
     --image-family=debian-12 \
     --image-project=debian-cloud \
     --tags=allow-ssh,allow-health-check,allow-proxy-only-subnet \
     --subnet=backend-subnet \
     --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'

Zonale NEGs erstellen

Console

Zonale Netzwerk-Endpunktgruppe erstellen

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerk-Endpunktgruppen auf.

    Zu den Netzwerk-Endpunktgruppen

  2. Klicken Sie auf NETZWERK-ENDPUNKTGRUPPE ERSTELLEN.

  3. Geben Sie für Name zonal-neg-a ein.

  4. Wählen Sie als Typ der Netzwerk-Endpunktgruppe die Option Netzwerk-Endpunktgruppe (Internet) aus.

  5. Wählen Sie für Netzwerk die Option lb-network aus.

  6. Wählen Sie für Subnetz backend-subnet aus.

  7. Wählen Sie bei Zone die Option ZONE_A aus.

  8. Geben Sie als Standardport 80 ein.

  9. Klicken Sie auf Erstellen.

  10. Wiederholen Sie alle Schritte in diesem Abschnitt, um eine zweite zonale NEG mit den folgenden Änderungen zu erstellen:

    • Name: zonal-neg-b
    • Zone: ZONE_B

Fügen Sie den zonalen NEGs Endpunkte hinzu

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerk-Endpunktgruppen auf.

    Zu den Netzwerk-Endpunktgruppen

  2. Klicken Sie auf den Namen der Netzwerk-Endpunktgruppe, die Sie im vorherigen Schritt erstellt haben (z. B. zonal-neg-a).

  3. Klicken Sie auf der Seite Details zur Netzwerk-Endpunktgruppe im Bereich Netzwerkendpunkte in dieser Gruppe auf Netzwerkendpunkt hinzufügen.

  4. Wählen Sie eine VM-Instanz aus (z. B. vm-a1).

  5. Im Abschnitt Netzwerkschnittstelle werden der VM-Name, die Zone und das Subnetz angezeigt.

    1. Geben Sie als IP-Adresse die IP-Adresse des neuen Netzwerkendpunkts ein. Klicken Sie zum Abrufen der IP-Adresse auf Primäre IP-Adressen und Alias-IP-Bereich in nic0 prüfen.
    2. Wählen Sie als Porttyp Standard aus. Der Endpunkt verwendet für alle Endpunkte in der Netzwerk-Endpunktgruppe den Standardport 80. Dies ist für unser Beispiel ausreichend, da der Apache-Server Anfragen an Port 80 verarbeitet.
    3. Klicken Sie auf Erstellen.
  6. Klicken Sie auf Netzwerkendpunkt hinzufügen. Wählen Sie die zweite VM-Instanz vm-a2 aus und wiederholen Sie die vorherigen Schritte, um zonal-neg-a der Endpunkte hinzuzufügen.

  7. Wiederholen Sie alle Schritte in diesem Abschnitt, um Endpunkte von vm-b1 und vm-b2 zu zonal-neg-b hinzuzufügen.

gcloud

  1. Erstellen Sie eine zonale NEG in der Zone ZONE_A mit GCE_VM_IP_PORT-Endpunkten:

    gcloud compute network-endpoint-groups create zonal-neg-a \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=ZONE_A \
        --network=lb-network \
        --subnet=backend-subnet
    

    Sie können entweder beim Erstellen der NEG einen --default-port angeben oder eine Portnummer für jeden Endpunkt festlegen, wie im nächsten Schritt gezeigt.

  2. Fügen Sie der zonalen NEG Endpunkte hinzu:

    gcloud compute network-endpoint-groups update zonal-neg-a \
        --zone=ZONE_A \
        --add-endpoint='instance=vm-a1,port=80' \
        --add-endpoint='instance=vm-a2,port=80'
    
  3. Erstellen Sie eine zonale NEG in der Zone ZONE_B mit GCE_VM_IP_PORT-Endpunkten:

    gcloud compute network-endpoint-groups create zonal-neg-b \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=ZONE_B \
        --network=lb-network \
        --subnet=backend-subnet
    

    Sie können entweder beim Erstellen der NEG einen --default-port angeben oder eine Portnummer für jeden Endpunkt festlegen, wie im nächsten Schritt gezeigt.

  4. Fügen Sie der zonalen NEG Endpunkte hinzu:

    gcloud compute network-endpoint-groups update zonal-neg-b \
        --zone=ZONE_B \
        --add-endpoint='instance=vm-b1,port=80' \
        --add-endpoint='instance=vm-b2,port=80'
    

Load-Balancer konfigurieren

Console

Konfiguration starten

  1. Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.

    Load-Balancing aufrufen

  2. Klicken Sie auf Load-Balancer erstellen.
  3. Wählen Sie unter Typ des Load Balancers die Option Network Load Balancer (TCP/UDP/SSL) aus und klicken Sie auf Weiter.
  4. Wählen Sie unter Proxy oder Passthrough die Option Proxy-Load Balancer aus und klicken Sie auf Weiter.
  5. Wählen Sie für Öffentlich oder intern die Option Öffentlich (extern) aus und klicken Sie auf Weiter.
  6. Wählen Sie unter Globale oder Einzelregion-Bereitstellung die Option Am besten für regionale Arbeitslasten aus und klicken Sie auf Weiter.
  7. Klicken Sie auf Konfigurieren.

Grundlegende Konfiguration

  1. Geben Sie für Name my-ext-tcp-lb ein.
  2. Wählen Sie bei Region die Option REGION_A aus.
  3. Wählen Sie für Netzwerk die Option lb-network aus.

Nur-Proxy-Subnetz reservieren

  1. Klicken Sie auf Subnetz reservieren.
  2. Geben Sie für Name proxy-only-subnet ein.
  3. Geben Sie 10.129.0.0/23 als IP-Adressbereich ein.
  4. Klicken Sie auf Hinzufügen.

Back-Ends konfigurieren

  1. Klicken Sie auf Backend-Konfiguration.
  2. Wählen Sie als Backend-Typ die Option Internetnetzwerk-Endpunktgruppe aus.
  3. Wählen Sie für Protocol die Option TCP aus.
  4. Configure the first backend:
    1. Wählen Sie für Neues Backend die zonale NEG zonal-neg-a aus.
    2. Behalten Sie die verbleibenden Standardwerte bei und klicken Sie dann auf Fertig.
  5. Configure the second backend:
    1. Klicken Sie auf Backend hinzufügen.
    2. Wählen Sie für Neues Backend die Instanzgruppe zonal-neg-b aus.
    3. Behalten Sie die verbleibenden Standardwerte bei und klicken Sie dann auf Fertig.
  6. Systemdiagnose konfigurieren:
    1. Klicken Sie bei Systemdiagnose auf Systemdiagnose erstellen.
    2. Geben Sie tcp-health-check als Name für die Systemdiagnose an.
    3. Wählen Sie für Protocol die Option TCP aus.
    4. Geben Sie für Port den Wert 80 ein.
  7. Übernehmen Sie die verbleibenden Standardwerte und klicken Sie dann auf Speichern.
  8. Prüfen Sie in der Google Cloud Console, ob neben Backend-Konfiguration ein Häkchen angezeigt wird. Ist dies nicht der Fall, prüfen Sie, ob Sie alle Schritte ausgeführt haben.

Frontend konfigurieren

  1. Klicken Sie auf Frontend-Konfiguration.
  2. Geben Sie für Name ext-tcp-forwarding-rule ein.
  3. Wählen Sie für Subnetzwerk die Option backend-subnet aus.
  4. Wählen Sie für IP-Adresse die Option ext-tcp-ip-address aus.
  5. Geben Sie als Portnummer 9090 ein. Die Weiterleitungsregel leitet nur Pakete mit einem übereinstimmenden Zielport weiter.
  6. Wählen Sie Aus für Proxyprotokoll aus, da das Proxyprotokoll nicht mit der Apache HTTP Server-Software funktioniert. Weitere Informationen finden Sie unter Proxyprotokoll.
  7. Klicken Sie auf Fertig.
  8. Prüfen Sie in der Google Cloud Console, ob neben Frontend-Konfiguration ein Häkchen angezeigt wird. Ist dies nicht der Fall, prüfen Sie, ob Sie alle vorherigen Schritte ausgeführt haben.

Überprüfen und abschließen

  1. Klicken Sie auf Überprüfen und abschließen.
  2. Kontrollieren Sie die Einstellungen.
  3. Klicken Sie auf Erstellen.

gcloud

  1. Erstellen Sie eine regionale Systemdiagnose für die Back-Ends.:

    gcloud compute health-checks create tcp tcp-health-check \
        --region=REGION_A \
        --use-serving-port
    
  2. Erstellen Sie einen Backend-Dienst.

    gcloud compute backend-services create external-tcp-proxy-bs \
       --load-balancing-scheme=EXTERNAL_MANAGED \
       --protocol=TCP \
       --region=REGION_A \
       --health-checks=tcp-health-check \
       --health-checks-region=REGION_A
    
  3. Fügen Sie dem Backend-Dienst die zonale NEG in der Zone ZONE_A hinzu:

    gcloud compute backend-services add-backend external-tcp-proxy-bs \
       --network-endpoint-group=zonal-neg-a \
       --network-endpoint-group-zone=ZONE_A \
       --balancing-mode=CONNECTION \
       --max-connections-per-endpoint=50 \
       --region=REGION_A
    
  4. Fügen Sie dem Backend-Dienst die zonale NEG in der Zone ZONE_B hinzu:

    gcloud compute backend-services add-backend external-tcp-proxy-bs \
       --network-endpoint-group=zonal-neg-b \
       --network-endpoint-group-zone=ZONE_B \
       --balancing-mode=CONNECTION \
       --max-connections-per-endpoint=50 \
       --region=REGION_A
    
  5. Erstellen Sie den Ziel-TCP-Proxy.:

    gcloud compute target-tcp-proxies create ext-tcp-target-proxy \
       --backend-service=external-tcp-proxy-bs \
       --region=REGION_A
    
  6. Erstellen Sie die Weiterleitungsregel. Geben Sie für --ports eine einzelne Portnummer zwischen 1 und 65535 an. In diesem Beispiel wird Port 9090 verwendet. Die Weiterleitungsregel leitet nur Pakete mit einem übereinstimmenden Zielport weiter.

    gcloud compute forwarding-rules create ext-tcp-forwarding-rule \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --network=lb-network \
      --subnet=backend-subnet \
      --address=ext-tcp-ip-address \
      --ports=9090 \
      --region=REGION_A \
      --target-tcp-proxy=ext-tcp-target-proxy \
      --target-tcp-proxy-region=REGION_A
    

Load-Balancer testen

Nachdem Sie den Load-Balancer konfiguriert haben, können Sie Traffic zum Testen an die IP-Adresse des Load-Balancers senden.

  1. Rufen Sie die IP-Adresse des Load-Balancers ab.

    Führen Sie den folgenden Befehl aus, um die IPv4-Adresse abzurufen:

    gcloud compute addresses describe ADDRESS_NAME
    
  2. Senden Sie den Traffic mit folgendem Befehl an Ihren Load-Balancer. Ersetzen Sie LB_IP_ADDRESS durch die IPv4-Adresse des Load-Balancers:

    curl -m1 LB_IP_ADDRESS:9090
    

Nächste Schritte