Übersicht über Cloud Load Balancing

Ein Load-Balancer verteilt den Nutzertraffic auf mehrere Instanzen Ihrer Anwendungen. Durch die Verteilung der Last lässt sich mit Load-Balancing das Risiko verringern, dass Ihre Anwendungen Leistungsprobleme verursachen.

Einfache Übersicht über das Load-Balancing (zum Vergrößern klicken)
Einfache Übersicht über das Load-Balancing (zum Vergrößern klicken)

Informationen zum Cloud Load Balancing

Cloud Load Balancing ist ein vollständig verteilter, softwarebasierter verwalteter Dienst. Da er nicht hardwarebasiert ist, benötigen Sie keine Infrastruktur für physisches Load-Balancing.

Cloud Load Balancing basiert auf derselben Front-End-Infrastruktur wie Google. Die Lösung unterstützt über eine Million Abfragen pro Sekunde bei konsistent hoher Leistung und geringer Latenz. Der Traffic gelangt über mehr als 80 verschiedene globale Load-Balancing-Standorte zu Cloud Load Balancing. Dadurch wird die Distanz maximiert, die der Traffic im schnellen und privaten Backbone-Netzwerk von Google zurücklegt. Mit Cloud Load Balancing können Sie Inhalte so nah wie möglich bei Ihren Nutzern bereitstellen.

Google Cloud bietet die folgenden Load-Balancing-Features:

  • Einzelne Anycast-IP-Adresse. Mit Cloud Load Balancing ist eine einzige Anycast-IP-Adresse das Front-End für alle Ihre Back-End-Instanzen in verschiedenen Regionen der Welt. Sie profitieren von einem regionenübergreifenden Load-Balancing, einschließlich automatischen Failovers auf mehrere Regionen. Dabei wird der Traffic zu Failover-Back-Ends verschoben, wenn Ihre primären Back-Ends fehlerhaft werden. Cloud Load Balancing reagiert sofort auf Änderungen hinsichtlich Nutzern, Traffic, Netzwerk, Back-End-Zustand und anderen damit verbundenen Bedingungen.

  • Softwarebasiertes Load-Balancing. Cloud Load Balancing ist ein vollständig verteilter, softwarebasierter verwalteter Dienst für Ihren gesamten Traffic. Da Cloud Load Balancing nicht auf Instanzen oder Geräten beruht, sind Sie an keine physische Load-Balancing-Infrastruktur gebunden. Auch die Herausforderungen hinsichtlich Hochverfügbarkeit, Skalierung und Verwaltung, wie sie bei instanzbasierten Load-Balancern auftreten, entfallen.

  • Nahtloses Autoscaling. Mit Cloud Load Balancing wird einfach dem Nutzer- und Trafficaufkommen entsprechend skaliert. Dies gilt auch für die Verarbeitung unerwarteter und plötzlich auftretender starker Spitzen. Der Traffic wird dabei weltweit auf andere Regionen mit verfügbaren Kapazitäten umgeleitet. Autoscaling erfordert keine Vorbereitung. Sie können innerhalb von Sekunden von null auf vollen Traffic skalieren.

  • Layer-4- und Layer-7-Load-Balancing. Verwenden Sie Layer-4-basiertes Load-Balancing zum Weiterleiten von Traffic basierend auf Daten aus Netzwerk- und Transportschichtprotokollen wie TCP, UDP, ESP oder ICMP. Verwenden Sie Layer-7-basiertes Load-Balancing zum Hinzufügen von Entscheidungen über das Anfragerouting basierend auf Attributen wie HTTP-Header und Uniform Resource Identifier.

  • Externes und internes Load-Balancing Sie können externes Load-Balancing verwenden, wenn Ihre Nutzer über das Internet auf Ihre Anwendungen zugreifen, und internes Load-Balancing einsetzen, wenn sich Ihre Kunden in Google Cloud befinden.

  • Globales und regionales Load-Balancing Verteilen Sie Ihre Load-Balancing-Ressourcen auf eine oder mehrere Regionen, um Verbindungen in der Nähe Ihrer Nutzer zu beenden und Ihre Hochverfügbarkeitsanforderungen zu erfüllen.

  • Unterstützung erweiterter Features. Cloud Load Balancing unterstützt Features wie globales IPv6-Load-Balancing, WebSockets, benutzerdefinierte Anfrageheader und Protokollweiterleitung für private VIPs.

    Darüber hinaus sind darin folgende Einbindungen für externes HTTP(S)-Load-Balancing enthalten:

    • Integration mit Cloud CDN für die Inhaltsübermittlung aus dem Cache
    • Integration in Google Cloud Armor zum Schutz Ihrer Infrastruktur vor DDoS-Angriffen (Distributed Denial-of-Service) und anderen gezielten Anwendungsangriffen.

Zusammenfassung der Load-Balancer von Google Cloud

Das folgende Diagramm fasst die verfügbaren Cloud Load Balancing-Produkte zusammen.

Übersicht über Cloud Load-Balancing (zum Vergrößern klicken)
Übersicht über Cloud Load-Balancing (zum Vergrößern klicken)

Die folgende Tabelle enthält detaillierte Informationen zu den einzelnen Load-Balancern.

Load-Balancer-Typ Traffictyp Global oder regional Netzwerkdienststufe Load-Balancing-Schema Load-Balancer-Front-End-Ports Proxy oder Passthrough
Globaler externer HTTP(S)-Load-Balancer (Vorschau) HTTP oder HTTPS Global Nur Premium EXTERNAL_MANAGED HTTP an 80 oder 8080; HTTPS an 443 Proxy
Globaler externer HTTP(S)-Load-Balancer (klassisch) HTTP oder HTTPS Global in der Premium-Stufe. Regional in der Standard-Stufe. Premium oder Standard EXTERN HTTP an 80 oder 8080; HTTPS an 443 Proxy
Regionaler externer HTTP(S)-Load-Balancer (Vorschau) HTTP oder HTTPS Regional Nur Standard EXTERNAL_MANAGED HTTP an 80 oder 8080; HTTPS an 443 Proxy
Interne HTTP(S)-Load-Balancer HTTP oder HTTPS Regional Nur Premium INTERNAL_MANAGED HTTP an 80 oder 8080; HTTPS an 443 Proxy
SSL-Proxy-Load-Balancer TCP mit SSL-Übertragung Global in der Premium-Stufe. Regional in der Standard-Stufe. Premium oder Standard EXTERN 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 3389, 5222, 5432, 5671, 5672, 5900, 5901, 6379, 8085, 8099, 9092, 9200 und 9300 Proxy
TCP-Proxy-Load-Balancer TCP ohne SSL-Übertragung Global in der Premium-Stufe. Regional in der Standard-Stufe. Premium oder Standard EXTERN 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 3389, 5222, 5432, 5671, 5672, 5900, 5901, 6379, 8085, 8099, 9092, 9200 und 9300 Proxy
Externer TCP/UDP-Netzwerk-Load-Balancer TCP, UDP, ESP oder ICMP (Vorschau) Regional Premium oder Standard EXTERN Alle Passthrough
Interne TCP/UDP-Load-Balancer TCP oder UDP Regionale Back-Ends, regionale Front-Ends (globaler Zugriff unterstützt) Nur Premium INTERN Alle Passthrough

Einen Load-Balancer auswählen

Um zu bestimmen, welches Cloud Load Balancing-Produkt verwendet werden soll, müssen Sie zunächst festlegen, welche Art von Traffic Ihre Load-Balancer verarbeiten müssen und ob Sie ein globales oder regionales Load-Balancing, ein externes oder internes Load-Balancing und ein Proxy- oder Pass-Through-Load-Balancing benötigen. Einzelheiten zu jeder dieser Entscheidungen finden Sie unter Einen Load Balancer auswählen.

Verwenden Sie dann diesen Entscheidungsbaum, um zu bestimmen, welche Load-Balancer für Ihre Client-, Protokoll- und Netzwerkkonfiguration verfügbar sind.

Entscheidungsbaum zur Auswahl eines Load-Balancers (zum Vergrößern klicken)
Entscheidungsbaum zur Auswahl eines Load-Balancers (zum Vergrößern klicken)

Die zugrunde liegende Technologie von Google Cloud Load Balancing

In diesem Abschnitt finden Sie weitere Informationen zu den einzelnen Typen der Google Cloud-Load-Balancer, einschließlich Links zur Übersichtsdokumentation für ein tieferes Verständnis.

  • Google Front Ends (GFEs) sind softwarebasierte, verteilte Systeme, die sich an Google-PoPs (Points of Presence) befinden und globales Load-Balancing in Verbindung mit anderen Systemen und Steuerungsebenen ausführen.
  • Andromeda ist der softwarebasierte Netzwerkvirtualisierungs-Stack von Google Cloud.
  • Maglev ist ein verteiltes System für das Netzwerk-Load-Balancing.
  • Envoy Proxy ist ein Open-Source-Edge- und -Dienstproxy, der für cloudnative Anwendungen entwickelt wurde.
Load-Balancer Zugrunde liegende Technologie
Globaler externer HTTP(S)-Load-Balancer (Vorschau) GFEs, Envoy
Globaler externer HTTP(S)-Load-Balancer (klassisch) GFEs
Regionaler externer HTTP(S)-Load-Balancer (Vorschau) Envoy, Maglev
Interner HTTP-Load-Balancer Andromeda, Envoy
Externer TCP/UDP-Netzwerk-Load-Balancer Maglev
Interne TCP/UDP-Load-Balancer Andromeda
TCP-Proxy-Load-Balancer GFEs
SSL-Proxy-Load-Balancer GFEs

Internes HTTP(S)-Load-Balancing

Das interne HTTP(S)-Load-Balancing baut auf dem Andromeda-Netzwerkvirtualisierungs-Stack auf und ist ein verwalteter Dienst, der auf dem Open Source-Envoy-Proxy basiert. Dieser Load-Balancer bietet internes Proxy-basiertes Load-Balancing für Layer-7-Anwendungsdaten. Mit URL-Zuordnungen legen Sie fest, wie der Traffic weitergeleitet wird. Der Load-Balancer verwendet eine interne IP-Adresse, die als Front-End für Ihre Back-Ends fungiert.

Externes HTTP(S)-Load-Balancing

Die Implementierung von HTTP(S)-Load-Balancing variiert je nach Load-Balancer-Modus.

Der globale externe HTTP(S)-Load-Balancer mit erweiterter Trafficverwaltungsfunktion ist auf GFEs implementiert. GFEs sind global verteilt und arbeiten über das globale Netzwerk und die Steuerungsebene von Google zusammen. GFEs bieten multiregionales Load-Balancing, bei dem Traffic an das nächstgelegene fehlerfreie Back-End mit Kapazität weitergeleitet und HTTP(S)-Traffic so nahe wie möglich bei den Nutzern beendet wird. Darüber hinaus verwendet der globale externe HTTP(S)-Load-Balancer den Open-Source-Envoy-Proxy, um erweiterte Trafficverwaltungsfunktionen zu aktivieren. Der globale externe HTTP(S)-Load-Balancer wird nur in der Premium-Stufe unterstützt.

Der globale externe HTTP(S)-Load-Balancer (klassisch) ist ebenfalls auf GFEs implementiert. Dies ist ein globaler Load-Balancer in der Premium-Stufe, der jedoch praktisch regional in der Standardstufe konfiguriert werden kann. Praktisch regional bedeutet, dass der Back-End-Dienst immer global ist, wenn Sie die Standardstufe auswählen. Die externe Weiterleitungsregel und die externe IP-Adresse müssen jedoch regional sein und die an den globalen Back-End-Dienst angehängten Back-Ends müssen sich in derselben Region wie die Weiterleitungsregel und die IP-Adresse befinden.

Der regionale externe HTTP(S)-Load-Balancer ist ein verwalteter Dienst, der auf dem Open-Source-Envoy-Proxy basiert und erweiterte Trafficverwaltungsfunktionen bietet. Dies ist ein regionaler HTTP(S)-Load-Balancer, der nur in der Standardstufe unterstützt wird.

Internes TCP/UDP-Load-Balancing

Das interne TCP/UDP-Load-Balancing basiert auf dem Andromeda-Netzwerkvirtualisierungs-Stack. Mit internem TCP/UDP-Load-Balancing können Sie TCP/UDP-Traffic hinter einer internen Load-Balancing-IP-Adresse, die nur für Ihre internen VM-Instanzen zugänglich ist, gleichmäßig verteilen. Beim internen TCP/UDP-Load-Balancing wird eine interne IP-Adresse für das Load-Balancing konfiguriert, die als Front-End für Ihre internen Back-End-Instanzen fungiert. Für Ihren Dienst mit Load-Balancing verwenden Sie nur interne IP-Adressen. So wird Ihre Konfiguration einfacher.

Das interne TCP/UDP-Load-Balancing unterstützt regionale verwaltete Instanzgruppen, sodass Sie Ihren Dienst durch Autoscaling für eine ganze Region vor zonalen Ausfällen schützen können.

Externes TCP/UDP-Netzwerk-Load-Balancing

Netzwerk-Load-Balancing basiert auf MagleV. Mit diesem Load-Balancer können Sie Traffic auf Ihren Systemen anhand von eingehenden IP-Protokolldaten wie Adresse, Protokoll und Port ausgleichen (optional). Dieses regionale Load-Balancing-System kommt ohne Proxy aus. Das bedeutet, dass ein Netzwerk-Load-Balancer ein Pass-Through-Load-Balancer ist, der keine Proxy-Verbindungen von Clients herstellt.

Back-End-Dienst-basierte Netzwerk-Load-Balancer unterstützen TCP-, UDP-, ESP- und ICMP-Traffic.

Zielpoolbasierte Netzwerk-Load-Balancer unterstützen nur TCP- oder UDP-Traffic.

SSL-Proxy-Load-Balancing

Das SSL-Proxy-Load-Balancing ist auf global verteilten GFEs implementiert. Wenn Sie sich für die Premium-Stufe der Netzwerkdienststufen entscheiden, ist ein SSL-Proxy-Load-Balancer global. Mit der Premium-Stufe können Back-Ends in mehreren Regionen bereitgestellt werden. Der Load-Balancer leitet dann Nutzertraffic automatisch an die nächstgelegene Region mit Kapazität weiter. Wenn Sie sich für die Standard-Stufe entscheiden, kann ein SSL-Proxy-Load-Balancer Traffic nur zwischen Back-Ends in einer einzelnen Region weiterleiten.

TCP-Proxy-Load-Balancing

Das TCP-Proxy-Load-Balancing ist auf global verteilten GFEs implementiert. Wenn Sie sich für die Premium-Stufe der Netzwerkdienststufen entscheiden, ist ein TCP-Proxy-Load-Balancer global. Mit der Premium-Stufe können Back-Ends in mehreren Regionen bereitgestellt werden. Der Load-Balancer leitet dann Nutzertraffic automatisch an die nächstgelegene Region mit Kapazität weiter. Wenn Sie sich für die Standard-Stufe entscheiden, kann ein TCP-Proxy-Load-Balancer Traffic nur zwischen Back-Ends in einer einzelnen Region weiterleiten.

Interfaces

Sie können Ihre Load-Balancer über folgende Oberflächen konfigurieren und aktualisieren:

  • gcloud-Befehlszeilentool: Ein Befehlszeilentool, das im Cloud SDK enthalten ist. In der Dokumentation wird dieses Tool häufig zum Ausführen von Aufgaben erwähnt. Eine vollständige Übersicht über das Tool finden Sie im Leitfaden für das gcloud-Tool. Befehle für das Load-Balancing finden Sie in der Befehlsgruppe gcloud compute.

    Ausführliche Hilfe zu jedem gcloud-Befehl erhalten Sie auch mit dem Flag --help:

    gcloud compute http-health-checks create --help
    
  • Die Google Cloud Console: Load-Balancing-Aufgaben können über die Cloud Console ausgeführt werden.

  • Die REST API: Alle Load-Balancing-Aufgaben können mit der Cloud Load Balancing API ausgeführt werden. In der API-Referenzdokumentation werden die verfügbaren Ressourcen und Methoden beschrieben.

Nächste Schritte