HTTPS-Load-Balancer erstellen

In dieser Anleitung wird beschrieben, wie Sie einen HTTPS-Load-Balancer für Google Cloud Platform (GCP) erstellen. Dieses Modul wählt Back-End-Dienste basierend auf den Anfrage-URL-Pfaden aus (inhaltsbasiertes Load-Balancing) und leitet Anfragen an Back-Ends weiter, die sich in der Nähe der Clients befinden (regionenübergreifendes Load-Balancing).

Machen Sie sich jedoch zuerst mit den allgemeinen HTTP(S)-Load-Balancing-Konzepten vertraut.

Übersicht

Die folgende Anleitung enthält Informationen zum Erstellen eines Load-Balancers, der den Traffic basierend auf dem Pfad in der Anfrage-URL weiterleitet und ihn über mehrere Regionen verteilt. Sie erstellen zuerst zwei Compute Engine-Instanzen in den Regionen "USA" (in Zone us-central1-b) und "EU" (in Zone eu-west1-b) und dann einen Load-Balancer, der den Traffic an diese Instanzen weiterleitet.

Nachdem Sie die Anleitung abgeschlossen haben, wird Ihr Load-Balancer so konfiguriert:

  • Traffic mit einem URL-Pfad, der mit /video beginnt, wird an einen Back-End-Dienst weitergeleitet.
  • Traffic mit einem URL-Pfad, der nicht diesem Muster entspricht, wird an einen anderen Back-End-Dienst weitergeleitet.

In dieser Anleitung erstellen Sie die in der folgenden Grafik dargestellte Konfiguration:

Inhaltsbasiertes und regionenübergreifendes HTTP(S)-Load-Balancing (zum Vergrößern klicken)
Inhaltsbasiertes und regionenübergreifendes HTTP(S)-Load-Balancing (zum Vergrößern klicken)

Die Ereignisabfolge in der Grafik ist wie folgt:

  1. Ein Client greift auf die URL https://www.example.com/video/concert zu und sendet eine Inhaltsanfrage an die in der Weiterleitungsregel definierte externe IP-Adresse. Die Anfrage kann IPv4 oder IPv6 nutzen. Für beide Protokolle gibt es Weiterleitungsregeln.
  2. Eine Weiterleitungsregel leitet die Anfrage an den Ziel-HTTPS-Proxy weiter.
  3. Der Zielproxy verwendet die in der URL-Zuordnung festgelegten Regeln, um zu bestimmen, welcher Back-End-Dienst die Anfrage empfängt. Eine Anfrage mit /video, wie https://www.example.com/video/concert, wird an video-backend-service gesendet. Jeder andere URL-Pfad wird an den Standarddienst web-backend-service geleitet.
  4. Der Load-Balancer bestimmt anhand des Ladevorgangs und der Nähe zum Client, welche Instanzgruppen des Back-End-Dienstes die Anfrage bereitstellen sollen, und leitet die Anfrage an eine Instanz in dieser Gruppe weiter.
  5. Die Instanz stellt den von jedem Nutzer angeforderten Inhalt bereit. Die video-Instanzen stellen Videoinhalte bereit, während die www-Instanzen alle anderen Inhalte bereitstellen.

Hinweise

Diese Anleitung erfordert ein Projekt. Erstellen Sie ein neues Projekt, sofern Sie noch keines haben. Diese Anleitung führt Sie durch die Erstellung eines VPC-Netzwerks im benutzerdefinierten Modus. Sie müssen außerdem benutzerdefinierte Firewallregeln einrichten, damit der Traffic die Instanzen erreichen kann.

Wenn Sie lieber von der Befehlszeile aus arbeiten möchten, installieren Sie das gcloud-Befehlszeilentool. In der gcloud-Übersicht finden Sie Informationen zum Konzept und zur Installation des Tools.

Wenn Sie das gcloud-Befehlszeilentool noch nicht ausgeführt haben, führen Sie zuerst gcloud init aus, um Ihr gcloud-Verzeichnis zu initialisieren.

In diesem Beispiel akzeptiert der Load-Balancer HTTPS-Anfragen von Clients und leitet diese Anfragen als HTTP an die Back-Ends weiter. Sie können einen Load-Balancer auch so konfigurieren, dass er HTTP-Anfragen akzeptiert und HTTPS verwendet, wenn Anfragen an Back-Ends weitergeleitet werden.

Berechtigungen

Sie können die Schritte in dieser Anleitung nur ausführen, wenn Sie zum Erstellen von Compute Engine-Instanzen in einem Projekt berechtigt sind. Sie benötigen entweder die Rolle "Projektinhaber" oder "Projektbearbeiter" oder müssen die folgenden IAM-Rollen für Compute Engine haben:

Aufgabe Erforderliche Rolle
Instanzen erstellen Instanzadministrator
Firewallregeln setzen und löschen Sicherheitsadministrator
Load-Balancer-Komponenten erstellen Netzwerkadministrator
Projekt erstellen (optional) Projektersteller

Einrichtung

Optional: Neues Projekt erstellen

Nutzer mit der Berechtigung resourcemanager.projects.create sollten ein neues Projekt erstellen, bevor sie der restlichen Anleitung folgen. Dies vereinfacht die Bereinigung am Ende der Anleitung.

Netzwerk und Subnetze konfigurieren

In diesem Beispiel verwenden Sie das folgende VPC-Netzwerk und die folgenden Regionen und Subnetze:

  • Netzwerk: Das Netzwerk ist ein VPC-Netzwerk im benutzerdefinierten Modus mit dem Namen lb-network.

  • Subnetze in zwei verschiedenen Regionen:

    • us-subnet verwendet 10.1.10.0/24 für seinen primären IP-Bereich und befindet sich in der Region us-central1
    • eu-subnet verwendet 10.1.11.0/24 für seinen primären IP-Bereich und befindet sich in der Region europe-west1

So erstellen Sie das Beispielnetzwerk und das Subnetz:

Konsole


  1. Gehen Sie auf die VPC-Netzwerkseite der Google Cloud Platform Console.
    Zur VPC-Netzwerkseite
  2. Klicken Sie auf VPC-Netzwerk erstellen.
  3. Geben Sie für Name lb-network ein.
  4. Erstellen Sie im Abschnitt Subnetze das erste Subnetz:
    • Wählen Sie für Modus für Subnetzerstellung die Option Benutzerdefiniert aus.
    • Geben Sie im Abschnitt Neues Subnetz die folgenden Informationen ein:
      • Name: us-subnet
      • Region: us-central1
      • IP-Adressbereich: 10.1.10.0/24
      • Klicken Sie auf Fertig.
  5. Erstellen Sie ebenfalls im Abschnitt Subnetze die Option Subnetz hinzufügen und erstellen Sie das zweite Subnetz:
    • Wählen Sie für Modus für Subnetzerstellung die Option Benutzerdefiniert aus.
    • Geben Sie im Abschnitt Neues Subnetz die folgenden Informationen ein:
      • Name: eu-subnet
      • Region: europe-west1
      • IP-Adressbereich: 10.1.11.0/24
      • Klicken Sie auf Fertig.
  6. Klicken Sie auf Erstellen.

gcloud


  1. Erstellen Sie das benutzerdefinierte VPC-Netzwerk:

    gcloud compute networks create lb-network --subnet-mode=custom
    
  2. Erstellen Sie das Subnetz us-subnet:

    gcloud compute networks subnets create us-subnet \
      --network=lb-network \
      --range=10.1.10.0/24 \
      --region=us-central1
    
  3. Erstellen Sie das Subnetz eu-subnet:

    gcloud compute networks subnets create eu-subnet \
      --network=lb-network \
      --range=10.1.11.0/24 \
      --region=europe-west1
    

Firewallregeln konfigurieren

Die Standardregel zum Ablehnen von eingehendem Traffic blockiert auf den Back-End-Instanzen eingehenden Traffic, einschließlich des Traffics vom Load-Balancer und der GCP-Systemdiagnose. Sie müssen neue Firewallregeln erstellen, um die Standardregel zu überschreiben und den Traffic an Ihre Instanzen zuzulassen.

In diesem Beispiel erstellen Sie die folgenden Firewallregeln:

  • fw-allow-ssh: Eine Eingangsregel, die für Instanzen mit Load-Balancing gilt und eingehende SSH-Verbindung über TCP-Port 22 von allen Adressen erlaubt. 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 Zieltag allow-ssh verwendet, um die VMs zu identifizieren, auf die es angewendet werden soll.

  • fw-allow-health-check-and-proxy: Eine Eingangsregel, die für Instanzen mit Load-Balancing gilt und Traffic vom Load-Balancer und der GCP-Systemdiagnose (130.211.0.0/22 und 35.191.0.0/16) erlaubt. In diesem Beispiel wird das Zieltag allow-hc-and-proxy verwendet, um die Instanzen zu identifizieren, auf die es angewendet werden soll.

Konsole


  1. Rufen Sie in der Google Cloud Platform Console die Seite "Firewalls" auf.
    Zur Seite "Firewalls"
  2. Klicken Sie auf Firewallregel erstellen, um die erste Firewallregel zu erstellen:
    1. Geben Sie für Name fw-allow-ssh ein.
    2. Wählen Sie unter Netzwerk lb-network aus.
    3. Wählen Sie unter Ziele Angegebene Zieltags aus.
    4. Füllen Sie das Feld Zieltags mit allow-ssh.
    5. Legen Sie für Quellfilter IP ranges fest.
    6. Legen Sie für Quell-IP-Bereiche 0.0.0.0/0 fest.
    7. Wählen Sie unter Protokolle und Ports die Option Angegebene Protokolle und Ports aus.
    8. Klicken Sie das Kästchen neben tcp an und geben Sie 22 als Portnummer ein.
    9. Klicken Sie auf Erstellen.
  3. Klicken Sie auf Firewallregel erstellen, um die zweite Firewallregel zu erstellen:
    1. Geben Sie für Name fw-allow-health-check-and-proxy ein.
    2. Wählen Sie unter Netzwerk lb-network aus.
    3. Wählen Sie unter Ziele die Option Angegebene Zieltags aus.
    4. Füllen Sie das Feld Zieltags mit allow-hc-and-proxy.
    5. Legen Sie für Quellfilter IP ranges fest.
    6. Legen Sie für Quell-IP-Bereiche die Werte 130.211.0.0/22 und 35.191.0.0/16 fest.
    7. Wählen Sie unter Protokolle und Ports die Option Angegebene Protokolle und Ports aus.
    8. Klicken Sie das Kästchen neben tcp an und geben Sie 80,443 als Portnummer ein.
    9. Klicken Sie auf Erstellen.

gcloud


  1. Erstellen Sie die Firewallregel fw-allow-ssh, die SSH-Verbindung zu VMs mit dem Netzwerktag allow-ssh zulässt. Wenn Sie source-ranges auslassen, interpretiert die GCP die Regel als jede Quelle.

    gcloud compute firewall-rules create fw-allow-ssh \
        --network=lb-network \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-ssh \
        --rules=tcp:22
    
  2. Erstellen Sie die Regel fw-allow-health-check-and-proxy, damit der Load-Balancer und GCP-Systemdiagnosen mit Back-End-Instanzen über den TCP-Port 80 und 443 kommunizieren können:

    gcloud compute firewall-rules create fw-allow-health-check-and-proxy \
        --network=lb-network \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-hc-and-proxy \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80,tcp:443
    

Instanzeinrichtung

In diesem Beispiel erstellen Sie acht VM-Instanzen: vier für die Bereitstellung von Videoinhalten und vier für die Bereitstellung aller anderen Inhalte. Mit einem Startskript installieren Sie die Apache-Webserver-Software mit einer einmaligen Homepage für jede Instanz.

Konsole


Back-End-VMs erstellen

  1. Gehen Sie in der Google Cloud Platform Console auf die Seite "VM-Instanzen".
    Zur Seite "VM-Instanzen"
  2. Wiederholen Sie die folgenden Schritte, um acht VMs mit den folgenden Kombinationen aus Name, Region und Subnetz zu erstellen.
    • Name: www-us-01, Region: us-central1, Subnetz: us-subnet
    • Name: www-us-02, Region: us-central1, Subnetz: us-subnet
    • Name: video-us-01, Region: us-central1, Subnetz: us-subnet
    • Name: video-us-02, Region: us-central1, Subnetz: us-subnet
    • Name: www-eu-01, Region: europe-west1, Subnetz: eu-subnet
    • Name: www-eu-02, Region: europe-west1, Subnetz: eu-subnet
    • Name: video-eu-01, Region: europe-west1, Subnetz: eu-subnet
    • Name: video-eu-02, Region: europe-west1, Subnetz: eu-subnet
  3. Klicken Sie auf Instanz erstellen.
  4. Legen Sie Name und Region wie in Schritt 2 angegeben fest. Sie können eine beliebige Zone in der Region auswählen. In diesem Beispiel werden us-central1-b in us-central1 und europe-west1-b in europe-west1 verwendet.
  5. Überprüfen Sie im Abschnitt Bootlaufwerk, dass das ausgewählte Image Debian GNU/Linux 9 Stretch ist. Klicken Sie auf Auswählen, um das Image bei Bedarf zu ändern.
  6. Klicken Sie auf Verwaltung, Sicherheit, Laufwerke, Netzwerke, einzelne Mandanten und nehmen Sie die folgenden Änderungen vor:

    • Klicken Sie auf Netzwerk und fügen Sie die folgenden Netzwerktags hinzu: allow-ssh und allow-hc-and-proxy
    • Klicken Sie unter Netzwerkschnittstellen auf die Schaltfläche "Bearbeiten", nehmen Sie die folgenden Änderungen vor und klicken Sie dann auf Fertig:
      • Netzwerk: lb-network
      • Subnetz: Wählen Sie das Subnetz wie in Schritt 2 angegeben aus.
      • Primäre interne IP: sitzungsspezifisch (automatisch)
      • Externe IP: sitzungsspezifisch
    • Klicken Sie auf Verwaltung. Kopieren Sie im Feld Startskript den folgenden Skriptinhalt und fügen Sie ihn ein. Der Skriptinhalt ist für alle acht VMs gleich:

      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" \
      http://169.254.169.254/computeMetadata/v1/instance/name)"
      filter="{print \$NF}"
      vm_zone="$(curl -H "Metadata-Flavor:Google" \
      http://169.254.169.254/computeMetadata/v1/instance/zone \
      | awk -F/ "${filter}")"
      echo "Page on $vm_hostname in $vm_zone" | \
      tee /var/www/html/index.html
      echo "AliasMatch /video(.*)$ /var/www/html/index.html" | \
      tee /etc/apache2/conf-enabled/video.conf
      systemctl restart apache2
      
  7. Klicken Sie auf Erstellen.

Instanzgruppen erstellen

  1. Gehen Sie in der Google Cloud Platform Console zur Seite "Instanzgruppen".
    Zur Seite "Instanzgruppen"
  2. Wiederholen Sie die folgenden Schritte, um mit diesen Kombinationen vier nicht verwaltete Instanzgruppen mit jeweils zwei VMs zu erstellen.
    • Instanzgruppe: ig-www-us, Region: us-central1, Zone: us-central1-b, Subnetz: us-subnet, VMs: www-us-01 und www-us-02
    • Instanzgruppe: ig-video-us, Region: us-central1, Zone: us-central1-b, Subnetz: us-subnet, VMs: video-us-01 und video-us-02
    • Instanzgruppe: ig-www-eu, Region: europe-west1, Zone: europe-west1-b, Subnetz: eu-subnet, VMs: www-eu-01 und www-eu-02
    • Instanzgruppe: ig-video-eu, Region: europe-west1, Zone: europe-west1-b, Subnetz: eu-subnet, VMs: video-eu-01 und video-eu-02
  3. Klicken Sie auf Instanzgruppe erstellen und wählen Sie Neue nicht verwaltete Instanzgruppe aus.
  4. Legen Sie Name wie in Schritt 2 angegeben fest.
  5. Wählen Sie im Abschnitt Standort die Option Einzelne Zone aus und wählen Sie die Region und Zone aus, wie in Schritt 2 angegeben.
  6. Geben Sie für Netzwerk lb-network ein.
  7. Geben Sie für Subnetz das in Schritt 2 angegebenen Subnetz ein.
  8. Fügen Sie im Abschnitt VM-Instanzen die in Schritt 2 angegebenen VMs hinzu.
  9. Klicken Sie auf Erstellen.

gcloud


  1. Wiederholen Sie den folgenden Befehl, um acht VMs mit den folgenden Kombinationen aus Name, Zone und Subnetz zu erstellen. Ersetzen Sie VM_NAME, ZONE und SUBNET entsprechend:

    • Name: www-us-01, Zone: us-central1-b, Subnetz: us-subnet
    • Name: www-us-02, Zone: us-central1-b, Subnetz: us-subnet
    • Name: video-us-01, Zone: us-central1-b, Subnetz: us-subnet
    • Name: video-us-02, Zone: us-central1-b, Subnetz: us-subnet
    • Name: www-eu-01, Zone: europe-west1-b, Subnetz: eu-subnet
    • Name: www-eu-02, Zone: europe-west1-b, Subnetz: eu-subnet
    • Name: video-eu-01, Zone: europe-west1-b, Subnetz: eu-subnet
    • Name: video-eu-02, Zone: europe-west1-b, Subnetz: eu-subnet
    gcloud compute instances create VM_NAME \
        --zone=ZONE \
        --image-family=debian-9 \
        --image-project=debian-cloud \
        --tags=allow-ssh,allow-hc-and-proxy \
        --subnet=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://169.254.169.254/computeMetadata/v1/instance/name)"
    filter="{print \$NF}"
    vm_zone="$(curl -H "Metadata-Flavor:Google" \
    http://169.254.169.254/computeMetadata/v1/instance/zone \
    | awk -F/ "${filter}")"
    echo "Page on $vm_hostname in $vm_zone" | \
    tee /var/www/html/index.html
    echo "AliasMatch /video(.*)$ /var/www/html/index.html" | \
    tee /etc/apache2/conf-enabled/video.conf
    systemctl restart apache2'
    
  2. Wiederholen Sie den folgenden Befehl, um vier nicht verwaltete Instanzgruppen mit den folgenden Kombinationen aus Name und Zone zu erstellen. Ersetzen Sie INSTANCE_GROUP_NAME und ZONE entsprechend:

    • Instanzgruppe: ig-www-us, Zone: us-central1-b
    • Instanzgruppe: ig-video-us, Zone: us-central1-b
    • Instanzgruppe: ig-www-eu, Zone: europe-west1-b
    • Instanzgruppe: ig-video-eu, Zone: europe-west1-b
    gcloud compute instance-groups unmanaged create INSTANCE_GROUP_NAME \
        --zone=ZONE
    
  3. Wiederholen Sie den folgenden Befehl viermal und fügen Sie jeder Instanzgruppe zwei VMs gemäß den folgenden Kombinationen hinzu. Ersetzen Sie INSTANCE_GROUP_NAME, ZONE und INSTANCES entsprechend:

    • Instanzgruppe: ig-www-us, Zone: us-central1-b, INSTANZEN: www-us-01, www-us-02
    • Instanzgruppe: ig-video-us, Zone: us-central1-b, INSTANZEN: video-us-01, video-us-02
    • Instanzgruppe: ig-www-eu, Zone: europe-west1-b, INSTANZEN: www-eu-01, www-eu-02
    • Instanzgruppe: ig-video-eu, Zone: europe-west1-b, INSTANZEN: video-eu-01, video-eu-02
    gcloud compute instance-groups unmanaged add-instances INSTANCE_GROUP_NAME \
        --zone=ZONE \
        --instances=INSTANCES
    

    Zur Verdeutlichung ist der Befehl zum Hinzufügen von zwei Instanzen zur ersten Instanzgruppe wie folgt:

    gcloud compute instance-groups unmanaged add-instances ig-www-us \
        --zone=us-central1-b \
        --instances=www-us-01,www-us-02
    

Externe IP-Adressen reservieren

Nachdem Ihre Instanzen nun ausgeführt werden, müssen Sie die Dienste einrichten, die für das Load-Balancing benötigt werden. In diesem Abschnitt erstellen Sie zwei globale statische externe IP-Adressen, mit denen Ihre Kunden Ihren Load-Balancer erreichen.

Konsole


  1. Gehen Sie in der Google Cloud Platform Console auf die Seite "Externe IP-Adressen".
    Zur Seite "Externe IP-Adressen"
  2. Klicken Sie auf Statische Adresse reservieren, um eine IPv4-Adresse zu reservieren.
  3. Geben Sie für Name lb-ipv4-1 ein.
  4. Legen Sie für die Netzwerkstufe Premium fest.
  5. Setzen Sie die IP-Version auf IPv4.
  6. Legen Sie für Typ Global fest.
  7. Klicken Sie auf Reservieren.
  8. Klicken Sie noch einmal auf Statische Adresse reservieren, um eine IPv6-Adresse zu reservieren.
  9. Geben Sie für Name lb-ipv6-1 ein.
  10. Setzen Sie die Netzwerkstufe auf Premium.
  11. Setzen Sie die IP-Version auf IPv6.
  12. Prüfen Sie, dass der Typ auf Global festgelegt ist.

    In diesem Beispiel verwendet der Load-Balancer Netzwerke der Premium-Stufe. Ein Load-Balancer mit einem Netzwerk der Standardstufe würde stattdessen regionale IP-Adressen verwenden. IPv6-Adressen sind in der Standardstufe nicht verfügbar.

  13. Klicken Sie auf Reservieren.

gcloud


gcloud compute addresses create lb-ipv4-1 \
    --ip-version=IPV4 \
    --global

Notieren Sie sich die reservierte IPv4-Adresse:

gcloud compute addresses describe lb-ipv4-1 \
    --format="get(address)" \
    --global
gcloud compute addresses create lb-ipv6-1 \
    --ip-version=IPV6 \
    --global

Notieren Sie sich die reservierte IPv6-Adresse:

gcloud compute addresses describe lb-ipv6-1 \
    --format="get(address)" \
    --global

Load-Balancing-Ressourcen konfigurieren

Die Funktionalität des Load-Balancers erfordert, dass mehrere Ressourcen angeschlossen sind. In diesem Abschnitt richten Sie die Ressourcen ein und verbinden sie. Dies sind:

  • Benannte Ports, die der Load-Balancer verwendet, um Traffic an Ihre Instanzgruppen zu leiten.
  • Eine Systemdiagnose, die überprüft, ob Ihre Instanzen fehlerfrei sind. Der Load-Balancer sendet Traffic nur an fehlerfreie Instanzen.
  • Back-End-Dienste, mit denen Kapazität, Sitzungsaffinität und der aktuelle Diagnosestatus erfasst werden. Back-End-Dienste leiten Anfragen an Back-End-VMs oder -Endpunkte basierend auf der Kapazität und dem Instanzstatus weiter.
  • Eine URL-Zuordnung, mit der der Load-Balancer Anfragen an bestimmte Back-End-Dienste basierend auf den Hosts und dem Pfad der Anfrage-URL weiterleitet.
  • Eine SSL-Zertifikatsressource. SSL-Zertifikatressourcen enthalten SSL-Zertifikatinformationen, die der Load-Balancer verwendet, um TLS zu beenden, wenn HTTPS-Clients eine Verbindung zu ihm herstellen. Sie können mehrere SSL-Zertifikate verwenden. Dabei kann es sich um eine beliebige Kombination aus verwalteten oder selbstverwalteten SSL-Zertifikaten handeln. Sie müssen für jedes verwendete Zertifikat eine SSL-Zertifikatsressource erstellen.
  • Ein HTTPS-Zielproxy, den der Load-Balancer verwendet, um Ihre URL-Zuordnung und SSL-Zertifikate mit Ihren globalen Weiterleitungsregeln zu verknüpfen.
  • Zwei globale Weiterleitungsregeln, jeweils eine für IPv4 und IPv6, mit den globalen externen IP-Adressressourcen. Mit den globalen Weiterleitungsregeln werden die eingehenden Anfragen an den Zielproxy übermittelt.

Konsole


Load-Balancer benennen

  1. Rufen Sie in der Google Cloud Platform Console die Seite "Load-Balancing" auf.
    Zur Seite "Load-Balancing"
  2. Klicken Sie unter HTTP(S)-Load-Balancing auf Konfiguration starten.
  3. Geben Sie als Name für den Load-Balancer web-map ein.
  4. Lassen Sie das Fenster geöffnet, um fortzufahren.

Back-End-Dienst und Systemdiagnose für www-Instanzen konfigurieren

Für den Load-Balancer sind zwei Back-End-Dienste und deren Systemdiagnose erforderlich. In diesem Beispiel beendet der Load-Balancer HTTPS-Anfragen vom Client und verwendet HTTP, um mit den Back-Ends zu kommunizieren. Dazu geben Sie HTTP für die Back-End-Protokolle und Systemdiagnosen an.

Back-End-Dienst für www-Instanzen konfigurieren

  1. Klicken Sie auf Back-End-Konfiguration.
  2. Wählen Sie im Drop-down-Menü Back-End-Dienst erstellen oder auswählen Back-End-Dienst erstellen aus.
  3. Legen Sie als Name für den Back-End-Dienst web-backend-service fest.
  4. Klicken Sie auf das Symbol Bearbeiten neben dem Feld Zeitüberschreitung, um das Protokoll zu bearbeiten. Wählen Sie das Protokoll aus, das Sie vom Load-Balancer bis zu den Back-Ends verwenden möchten.
  5. Geben Sie im Feld Benannter Port http ein.
  6. Prüfen Sie, dass der Back-End-Typ auf Instanzgruppen festgelegt ist.
  7. Legen Sie unter Back-Ends für Instanzgruppe ig-www-us fest.
  8. Legen Sie für den Traffic zwischen dem Load-Balancer und den Instanzen für die Portnummern 80 fest.
  9. Übernehmen Sie für die übrigen Felder die Standardwerte.
  10. Klicken Sie unten im Fenster Neues Back-End auf Fertig.
  11. Klicken Sie auf Back-End hinzufügen und wiederholen Sie die Schritte. Wählen Sie jedoch die Instanzgruppe ig-www-eu aus.
  12. Lassen Sie das Fenster geöffnet, um fortzufahren.

Systemdiagnose für www-Instanzen konfigurieren

  1. Wählen Sie im Fenster Back-End-Konfiguration unter Systemdiagnose die Option Systemdiagnose erstellen oder Weitere Systemdiagnose erstellen aus.
  2. Legen Sie die folgenden Systemdiagnoseparameter fest, um die HTTP-Systemdiagnose zu erstellen:
    • Name: http-basic-check
    • Protokoll: HTTP
    • Port: 80
  3. Klicken Sie auf Speichern und Fortfahren.
  4. Klicken Sie auf Erstellen.

Back-End und Systemdiagnose für www-video-Instanzen konfigurieren

  1. Wiederholen Sie die obigen Schritte, nennen Sie den zweiten Back-End-Dienst jedoch video-backend-service und weisen Sie ihm die Instanzgruppen video-resources-us und video-resources-eu zu.
  2. Führen Sie dieselben Schritte aus, um eine Systemdiagnose zu erstellen.

Host- und Pfadregeln konfigurieren

Die Host- und Pfadregeln konfigurieren die URL-Zuordnungsressource des Load-Balancers.

  1. Klicken Sie in der linken Spalte des Bildschirms auf Host- und Pfadregeln.
  2. Die erste Zeile enthält web-backend-service in der rechten Spalte und ist bereits mit der Standardregel Any unmatched (default) für Hosts und Pfade befüllt.
  3. Prüfen Sie, dass sich in der rechten Spalte eine zweite Zeile mit video-backend-service befindet. Wenn dies nicht der Fall ist, klicken Sie auf Host- und Pfadregel hinzufügen und wählen Sie dann video-backend-service aus dem Drop-down-Menü in der rechten Spalte aus. Tragen Sie das Folgende in den anderen Spalten ein: [...]
    1. Legen Sie für Hosts * fest.
    2. Geben Sie im Feld Pfade /video ein, drücken Sie die Tabulatortaste, geben Sie /video/* ein und drücken Sie noch einmal die Tabulatortaste.

Front-End konfigurieren

Im Abschnitt zur Konfiguration des Front-Ends werden verschiedene Ressourcen für den Load-Balancer konfiguriert, einschließlich der Weiterleitungsregeln und SSL-Zertifikate. Außerdem können Sie das Protokoll auswählen, das zwischen dem Client und dem Load-Balancer verwendet wird.

In diesem Beispiel verwenden Sie HTTPS zwischen dem Client und dem Load-Balancer. Daher benötigen Sie eine oder mehrere SSL-Zertifikatressourcen, um den Proxy zu konfigurieren. Informationen zum Erstellen von SSL-Zertifikatressourcen finden Sie unter SSL-Zertifikate. Wir empfehlen die Verwendung eines von Google verwalteten Zertifikats.

  1. Klicken Sie im linken Bereich der Seite Neuer HTTP(S)-Load-Balancer auf Front-End-Konfiguration.
  2. Geben Sie im Feld Name https-content-rule ein.
  3. Wählen Sie im Feld Protokoll die Option HTTPS aus.
  4. Lassen Sie das Fenster geöffnet, um fortzufahren.

IPv4-Weiterleitungsregel konfigurieren

  1. Legen Sie für IP-Version IPv4 fest.
  2. Wählen Sie unter IP-Adresse die zuvor erstellte IP-Adresse lb-ipv4-1 aus.
  3. Achten Sie darauf, dass der Port auf 443 festgelegt ist, um HTTPS-Traffic zuzulassen.
  4. Klicken Sie auf die Drop-down-Liste Zertifikat.
    1. Wenn Sie bereits eine selbstverwaltete SSL-Zertifikatressource haben, die Sie als primäres SSL-Zertifikat verwenden möchten, wählen Sie es aus dem Drop-down-Menü aus.
    2. Wählen Sie andernfalls Neues Zertifikat erstellen aus.
    3. Wählen Sie Zertifikat hochladen oder Von Google verwaltetes Zertifikat erstellen aus.
    4. Wenn Sie Zertifikat hochladen ausgewählt haben, führen Sie diese Schritte aus:
      1. Geben Sie bei Name www-ssl-cert ein.
      2. Laden Sie in den entsprechenden Feldern Ihr Public-Key-Zertifikat (.crt-Datei), Ihre Zertifikatskette (.csr-Datei) und Ihren privaten Schlüssel (.key-Datei) hoch.
      3. Klicken Sie auf Erstellen.
    5. Wenn Sie Von Google verwaltetes Zertifikat erstellen auswählen, geben Sie eine Domain ein.
  5. So fügen Sie zusätzlich zur primären SSL-Zertifikatsressource weitere Zertifikatsressourcen hinzu:
    1. Klicken Sie auf Zertifikat hinzufügen.
    2. Wählen Sie ein Zertifikat in der Liste Zertifikate aus oder klicken Sie auf Neues Zertifikat erstellen und befolgen Sie die obige Anleitung.
  6. Klicken Sie auf Fertig.
  7. Lassen Sie das Fenster geöffnet, um fortzufahren.

IPv6-Weiterleitungsregel konfigurieren

  1. Klicken Sie auf Front-End-IP und Port hinzufügen.
  2. Geben Sie für Name https-content-ipv6-rule ein.
  3. Wählen Sie im Feld Protokoll die Option HTTPS aus, wenn Sie HTTPS zwischen dem Client und dem Load-Balancer verwenden möchten. Wählen Sie HTTP aus, wenn Sie HTTP als Protokoll zwischen dem Client und dem Load-Balancer verwenden möchten.
  4. Legen Sie für die IP-Version IPv6 fest.
  5. Wählen Sie unter IP-Adresse die zuvor erstellte IP-Adresse lb-ipv6-1 aus.
  6. Für den standardmäßigen Port ist 443 erforderlich.
  7. Wenn Sie bereits eine SSL-Zertifikatsressource haben, die Sie verwenden möchten, wählen Sie sie aus dem Drop-down-Menü Zertifikat aus. Wählen Sie anderenfalls Neues Zertifikat erstellen aus.
    1. Geben Sie bei Name www-ssl-cert ein.
    2. Laden Sie in den entsprechenden Feldern Ihr Public-Key-Zertifikat (.crt-Datei), Ihre Zertifikatskette (.csr-Datei) und Ihren privaten Schlüssel (.key-Datei) hoch.
    3. Klicken Sie auf Erstellen.
  8. So fügen Sie zusätzlich zur primären SSL-Zertifikatsressource weitere Zertifikatsressourcen hinzu:
    1. Klicken Sie auf Zertifikat hinzufügen.
    2. Wählen Sie ein Zertifikat in der Liste Zertifikate aus oder klicken Sie auf Neues Zertifikat erstellen und befolgen Sie die obige Anleitung.
  9. Klicken Sie auf Fertig.

Überprüfen und abschließen

  1. Klicken Sie im linken Bereich der Seite Neuer HTTP(S)-Load-Balancer auf Prüfen und abschließen.
  2. Vergleichen Sie die Einstellungen mit denen, die Sie erstellen wollten.
  3. Wenn alles korrekt aussieht, klicken Sie auf Erstellen, um Ihren HTTP(S)-Load-Balancer zu erstellen.

gcloud


  1. Legen Sie bei allen Instanzgruppen einen HTTP-Dienst fest und ordnen Sie dem entsprechenden Port einen Portnamen zu. Nach der Konfiguration leitet der Load-Balancer-Dienst den Traffic zum benannten Port weiter.

    gcloud compute instance-groups unmanaged set-named-ports ig-video-us \
        --named-ports http:80 \
        --zone us-central1-b
    
    gcloud compute instance-groups unmanaged set-named-ports ig-www-us \
        --named-ports http:80 \
        --zone us-central1-b
    
    gcloud compute instance-groups unmanaged set-named-ports ig-video-eu \
        --named-ports http:80 \
        --zone europe-west1-b
    
    gcloud compute instance-groups unmanaged set-named-ports ig-www-eu \
        --named-ports http:80 \
        --zone europe-west1-b
    
  2. Erstellen Sie eine Systemdiagnose. Verwenden Sie den Befehl gcloud für HTTP, wenn Sie HTTP zwischen dem Load-Balancer und den Back-Ends einsetzen.

    gcloud compute health-checks create http http-basic-check \
        --port 80
    
  3. Erstellen Sie für alle Inhaltsanbieter einen Back-End-Dienst. Setzen Sie das Feld --protocol auf HTTP, da wir HTTP nutzen, um zu den Instanzen zu gelangen. Nutzen Sie die Systemdiagnose http-basic-check, die Sie zuvor für die Systemdiagnose erstellt haben.

    gcloud compute backend-services create video-backend-service \
        --protocol HTTP \
        --health-checks http-basic-check \
        --global
    
    gcloud compute backend-services create web-backend-service \
        --protocol HTTP \
        --health-checks http-basic-check \
        --global
    
  4. Fügen Sie Ihre Instanzgruppen als Back-Ends zu den Back-End-Diensten hinzu. Ein Back-End definiert die Kapazität (maximale CPU-Auslastung oder maximale Abfragen pro Sekunde) der Instanzgruppen, die es enthält. Legen Sie in diesem Beispiel für balancing-mode den Wert UTILIZATION, für max-utilization 0.8 und für capacity-scaler 1 fest. Legen Sie für capacity-scaler 0 fest, wenn Sie einen Back-End-Dienst entleeren möchten.

    Fügen Sie die Instanzgruppe ig-video-us hinzu:

    gcloud compute backend-services add-backend video-backend-service \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.8 \
        --capacity-scaler=1 \
        --instance-group=ig-video-us \
        --instance-group-zone=us-central1-b \
        --global
    

    Fügen Sie die Instanzgruppe ig-video-eu hinzu:

    gcloud compute backend-services add-backend video-backend-service \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.8 \
        --capacity-scaler=1 \
        --instance-group=ig-video-eu \
        --instance-group-zone=europe-west1-b \
        --global
    

    Fügen Sie die Instanzgruppe ig-www-us hinzu:

    gcloud compute backend-services add-backend web-backend-service \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.8 \
        --capacity-scaler=1 \
        --instance-group=ig-www-us \
        --instance-group-zone=us-central1-b \
        --global
    

    Fügen Sie die Instanzgruppe ig-www-eu hinzu:

    gcloud compute backend-services add-backend web-backend-service \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.8 \
        --capacity-scaler=1 \
        --instance-group=ig-www-eu \
        --instance-group-zone=europe-west1-b \
        --global
    
  5. Erstellen Sie eine URL-Zuordnung, die alle eingehenden Anfragen an die entsprechenden Back-End-Dienste leitet. In diesem Fall spaltet die Pfadzuordnung der Anfrage, die über das Flag --path-rules definiert ist, den Traffic gemäß dem URL-Pfad in jeder Anfrage an Ihre Website auf. Traffic, der mit keinem Eintrag in der --path-rules-Liste übereinstimmt, wird zum Eintrag im --default-service flag gesendet.

    1. Erstellen Sie eine URL-Zuordnung:

      gcloud compute url-maps create web-map \
          --default-service web-backend-service
      
    2. Fügen Sie Ihrer URL-Zuordnung einen Pfad-Matcher bei und definieren Sie die Pfadzuordnungen Ihrer Anfrage:

      gcloud compute url-maps add-path-matcher web-map \
          --default-service web-backend-service \
          --path-matcher-name pathmap \
          --path-rules="/video=video-backend-service,/video/*=video-backend-service"
      
  6. Erstellen Sie eine selbst signierte SSL-Zertifikatressource, die im HTTPS-Proxy verwendet werden soll.

    Wir verwenden ein selbst signiertes Zertifikat zur Veranschaulichung. In einer echten Bereitstellung würden Sie Ihren Load-Balancer jedoch so einrichten, dass ein von einer Zertifizierungsstelle signiertes Zertifikat verwendet wird. In diesem Fall können Sie entweder ein selbstverwaltetes Zertifikat verwenden, bei dem Sie Ihr eigenes SSL-Zertifikat bereitstellen, oder ein von Google verwaltetes Zertifikat, bei dem Google ein Zertifikat für Ihre Domain ausstellt. Weitere Informationen finden Sie unter Arten von SSL-Zertifikaten. Wenn Sie mehrere SSL-Zertifikate verwenden, müssen Sie für jedes Zertifikat eine SSL-Zertifikatsressource erstellen.

    Weitere Informationen zum Erstellen von SSL-Zertifikatressourcen in der GCP.

    So erstellen Sie eine selbstverwaltete SSL-Zertifikatressource:

    gcloud compute ssl-certificates create www-ssl-cert \
        --certificate [CRT_FILE_PATH] \
        --private-key [KEY_FILE_PATH]
    

    So erstellen Sie eine von Google verwaltete SSL-Zertifikatsressource:

    gcloud beta compute ssl-certificates create www-ssl-cert \
      --domains [DOMAIN]
    
  7. Erstellen Sie einen HTTPS-Ziel-Proxy, um Anfragen an Ihre URL-Zuordnung zu leiten. Der Proxy ist der Teil des Load-Balancers, der das SSL-Zertifikat für das HTTPS-Load-Balancing besitzt. Daher laden Sie in diesem Schritt auch Ihr Zertifikat.

    gcloud compute target-https-proxies create https-lb-proxy \
        --url-map web-map --ssl-certificates www-ssl-cert
    
  8. Erstellen Sie für jede der von Ihnen erstellten IP-Adressen jeweils eine globale Weiterleitungsregel, um eingehende Anfragen an den Proxy weiterzuleiten.

    gcloud compute forwarding-rules create https-content-rule \
        --address=lb-ipv4-1\
        --global \
        --target-https-proxy=https-lb-proxy \
        --ports=443
    
    gcloud compute forwarding-rules create https-content-ipv6-rule \
        --address=lb-ipv6-1 \
        --global \
        --target-https-proxy=https-lb-proxy \
        --ports=443
    

Nachdem die globale Weiterleitungsregel erstellt wurde, kann es mehrere Minuten dauern, bis die Konfiguration wirksam wird.

Traffic an die Instanzen senden

Nachdem Sie nun den Load-Balancing-Dienst konfiguriert haben, können Sie Datenverkehr an die Weiterleitungsregel senden und sehen, wie er an verschiedene Instanzen verteilt wird.

Konsole/Webbrowser


  1. Rufen Sie in der Google Cloud Platform Console die Seite "Load-Balancing" auf.
    Zur Seite "Load-Balancing"
  2. Klicken Sie auf web-map, um den gerade erstellten Load-Balancer zu erweitern.
  3. Bestätigen Sie im Abschnitt Back-End, dass die Instanzen fehlerfrei sind. In der Spalte Fehlerfrei sollte angegeben werden, dass beide Instanzen in jeder der vier Instanzgruppen fehlerfrei sind. Wenn Sie etwas anderes sehen, versuchen Sie zuerst, die Seite neu zu laden. Es kann einige Sekunden dauern, bis die GCP Console anzeigt, dass die Instanzen fehlerfrei sind. Wenn die Back-Ends nach einigen Minuten nicht fehlerfrei sind, überprüfen Sie die Firewallkonfiguration und die Netzwerk-Tags, die Ihren Back-End-Instanzen zugewiesen wurden.
  4. Wenn Sie ein von Google verwaltetes Zertifikat verwenden, prüfen Sie, dass der Status der Zertifikatressource AKTIV ist. Weitere Informationen finden Sie unter Status der von Google verwalteten SSL-Zertifikatressource.
  5. Nachdem die GCP Console anzeigt, dass die Back-End-Instanzen fehlerfrei sind, können Sie den Load-Balancer mit einem Webbrowser testen. Rufen Sie dafür https://<var>IP_Address</var> auf, wobei IP_Address die IP-Adresse des Load-Balancers ist. Wenn Sie ein selbst signiertes Zertifikat zu Testzwecken genutzt haben, zeigt Ihr Browser eine Warnung an. Sie müssen Ihrem Browser ausdrücklich anweisen, ein selbst signiertes Zertifikat zu akzeptieren. Ihr Browser sollte eine Seite mit Inhalt rendern, der den Namen der Instanz, die die Seite bereitstellt, und deren Zone enthält (z. B. Page on www-us-02 in us-central1-b).
  6. Rufen Sie im Browser https://<var>IP_Address</var>/video auf, wobei IP_Address die IP-Adresse des Load-Balancers ist. Ihr Browser sollte eine Seite mit Inhalt rendern, der den Namen des Videos der Instanz, die die Seite bereitstellt, und deren Zone enthält (z. B. Page on video-us-02 in us-central1-b).

gcloud/curl verwenden


  1. Wenn Sie ein von Google verwaltetes Zertifikat verwenden, prüfen Sie, dass der Status Ihrer Zertifikatressource AKTIV ist, bevor Sie fortfahren. Weitere Informationen finden Sie unter Status der von Google verwalteten SSL-Zertifikatressourcen.

     gcloud beta compute ssl-certificates list
    
  2. Verwenden Sie den curl-Befehl, um die Antwort von diesen URLs zu testen. Ersetzen Sie IP_Address durch die IPv4-Adresse des Load-Balancers:

    curl -k https://IP_Address
    curl -k https://IP_Address/video/
    
  3. Verwenden Sie den curl-Befehl, um die Antwort von diesen URLs zu testen. Ersetzen Sie IP_Address durch die IPv6-Adresse des Load-Balancers: Bei IPv6 müssen Sie die Adresse in eckige Klammern ([]) setzen und das Globbing mit dem Flag -g deaktivieren (z. B. curl -g -6 "https://[2001:DB8::]/").

    curl -k -g -6 https://[IP_Address]
    curl -k -g -6 https://[IP_Address]/video/
    

Regionsübergreifende Funktionalität testen

Wenn Sie einen Nutzer an einem anderen Standort simulieren möchten, können Sie eine Verbindung zu einer Ihrer VM-Instanzen in einer anderen Region herstellen und dann einen curl-Befehl von dieser Instanz ausführen, um die Anfrage an eine Instanz in der Region weiterzuleiten, die der Instanz am nächsten liegt.

Ihnen wird die HTML-Ausgabe <!doctype html><html><body><h1>www-us</h1></body></html> angezeigt.

Wiederholen Sie die Schritte, aber stellen Sie diesmal eine Verbindung zu www-eu-1 her. Die Ausgabe lautet nun <!doctype html><html><body><h1>www-eu</h1></body></html>.

Sie können Tests von einem Client-System weltweit durchführen. Wenn Back-Ends in einer Region fehlerhaft werden oder die Kapazitätsgrenze erreichen, sendet der HTTPS-Load-Balancer den Traffic automatisch an die nächstgelegene Region.

Optional: Externe IP-Adressen von Back-End-VMs entfernen

In der GCP kommuniziert das HTTP(S)-Load-Balancing mit Back-Ends über deren interne IP-Adressen und spezielle Load-Balancer-Routen. Die Back-End-Instanzen benötigen keine externen IP-Adressen, um mit dem Load-Balancer zu kommunizieren. Sie können die Sicherheit erhöhen, indem Sie die externen IP-Adressen aus Ihren Back-End-Instanzen entfernen.

Folgen Sie dieser Anleitung, um externe IP-Adressen aus Back-End-Instanzen zu entfernen.

Wenn Sie eine Verbindung mit einer Back-End-Instanz ohne externe IP-Adresse über SSH herstellen müssen, lesen Sie den Abschnitt Verbindung zu Instanz herstellen, die keine externe IP-Adresse hat.

Bereinigen

Wenn Sie mit dieser HTTP(S)-Load-Balancing-Anleitung fertig sind, können Sie die von Ihnen erstellten Cloud-Load-Balancing-Ressourcen löschen, damit Ihnen diese zukünftig nicht mehr in Rechnung gestellt werden. Wenn diese Ressourcen in einem eigenen Projekt erstellt wurden, können Sie das gesamte Projekt löschen. Ansonsten können Sie die Ressourcen einzeln löschen.

Projekt löschen

Konsole


  1. Rufen Sie in der Google Cloud Platform Console die Seite "Projekte" auf.
    Zur Seite Projekte
  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.

gcloud


Führen Sie den folgenden Befehl aus und ersetzen Sie project_id durch Ihre Projekt-ID:

gcloud projects delete project_id

Einzelne Ressourcen löschen

Konsole


Load-Balancer löschen

  1. Rufen Sie in der Google Cloud Platform Console die Seite "Load-Balancing" auf.
    Zur Seite "Load-Balancing"
  2. Klicken Sie das Kästchen neben web-map an.
  3. Klicken Sie oben auf der Seite auf Löschen.
  4. Klicken Sie die Kästchen neben allen zusätzlichen Ressourcen an, einschließlich Back-End-Diensten, Systemdiagnosen und SSL-Zertifikaten.
  5. Klicken Sie auf Load-Balancer und ausgewählte Ressourcen löschen.

Instanzgruppen löschen

  1. Gehen Sie in der Google Cloud Platform Console zur Seite "Instanzgruppen".
    Zur Seite "Instanzgruppen"
  2. Klicken Sie das Kästchen oben neben Name an, um alle Instanzgruppen auszuwählen.
  3. Klicken Sie auf Löschen.
  4. Klicken Sie im Bestätigungsfenster auf Löschen.

Externe IP-Adressen freigeben

  1. Gehen Sie in der Google Cloud Platform Console auf die Seite "Externe IP-Adressen".
    Zur Seite "Externe IP-Adressen"
  2. Klicken Sie die Kästchen neben lb-ipv4-1 und lb-ipv6-1 an.
  3. Klicken Sie auf Löschen.
  4. Klicken Sie im Bestätigungsfenster auf Löschen.

Firewallregeln löschen

  1. Rufen Sie in der Google Cloud Platform Console die Seite "Firewalls" auf.
    Zur Seite "Firewalls"
  2. Klicken Sie die Kästchen neben fw-allow-health-check-and-proxy und fw-allow-ssh an.
  3. Klicken Sie auf Löschen.
  4. Klicken Sie im Bestätigungsfenster auf Löschen.

VM-Instanzen löschen

  1. Gehen Sie in der Google Cloud Platform Console auf die Seite "VM-Instanzen".
    Zur Seite "VM-Instanzen"
  2. Klicken Sie das Kästchen oben neben Name an, um alle Instanzen auszuwählen.
  3. Klicken Sie auf Löschen.
  4. Klicken Sie im Bestätigungsfenster auf Löschen.

VPC-Netzwerk löschen

  1. Gehen Sie auf die VPC-Netzwerkseite der Google Cloud Platform Console.
    Zur VPC-Netzwerkseite
  2. Klicken Sie auf lb-network.
  3. Klicken Sie auf der Seite VPC-Netzwerkdetails auf VPC-Netzwerk löschen.
  4. Klicken Sie im Bestätigungsfenster auf Löschen.

gcloud


Load-Balancer löschen

Sie müssen jede Komponente des Load-Balancers löschen, um ihn zu löschen.

  1. Löschen Sie die Weiterleitungsregeln:

    gcloud compute forwarding-rules delete https-content-rule \
        --global
    gcloud compute forwarding-rules delete https-content-ipv6-rule \
        --global
    
  2. Löschen Sie die globalen externen IP-Adressen:

    gcloud compute addresses delete lb-ipv4-1 \
        --global
    gcloud compute addresses delete lb-ipv6-1 \
        --global
    
  3. Löschen Sie den Ziel-Proxy:

    gcloud compute target-https-proxies delete https-lb-proxy
    
  4. Löschen Sie das SSL-Zertifikat:

    gcloud compute ssl-certificates delete www-ssl-cert
    
  5. Löschen Sie die URL-Zuordnung:

    gcloud compute url-maps delete web-map
    
  6. Löschen Sie die Back-End-Dienste:

    gcloud compute backend-services delete web-backend-service \
        --global
    gcloud compute backend-services delete video-backend-service \
        --global
    
  7. Löschen Sie die Systemdiagnosen:

    gcloud compute health-checks delete http-basic-check
    

Sie haben alle Load-Balancer-Ressourcen gelöscht.

Instanzgruppen löschen

Wiederholen Sie den folgenden Befehl, um vier nicht verwaltete Instanzgruppen mit den folgenden Kombinationen aus Name und Zone zu erstellen. Ersetzen Sie INSTANCE_GROUP_NAME und ZONE entsprechend:

  • Name: ig-www-us, Zone: us-central1-b
  • Name: ig-video-us, Zone: us-central1-b
  • Name: ig-www-eu, Zone: europe-west1-b
  • Name: ig-video-eu, Zone: europe-west1-b
gcloud compute instance-groups unmanaged delete INSTANCE_GROUP_NAME \
   --zone=ZONE

VM-Instanzen löschen

Wiederholen Sie den folgenden Befehl, um acht VMs mit den folgenden Kombinationen aus Name und Zone zu löschen. Ersetzen Sie VM_NAME und ZONE entsprechend:

  • Name: www-us-01, Zone: us-central1-b
  • Name: www-us-02, Zone: us-central1-b
  • Name: video-us-01, Zone: us-central1-b
  • Name: video-us-02, Zone: us-central1-b
  • Name: www-eu-01, Zone: europe-west1-b
  • Name: www-eu-02, Zone: europe-west1-b
  • Name: video-eu-01, Zone: europe-west1-b
  • Name: video-eu-02, Zone: europe-west1-b
gcloud compute instance delete VM_NAME \
   --zone=ZONE

Firewallregeln löschen

Löschen Sie beide Firewallregeln:

gcloud compute firewall-rules delete fw-allow-health-check-and-proxy
gcloud compute firewall-rules delete fw-allow-ssh

VPC-Netzwerk löschen

Löschen Sie zuerst das Subnetz us-subnet:

gcloud compute networks subnets delete us-subnet \
    --region=us-central1

Löschen Sie als nächstes das Subnetz eu-subnet:

gcloud compute networks subnets delete eu-subnet \
    --region=europe-west1

Löschen Sie schließlich das VPC-Netzwerk:

gcloud compute networks delete lb-network

Sie haben alle Ressourcen gelöscht, die Sie in diesem Projekt eingerichtet haben.

Nächste Schritte

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Load-Balancing