Durch die Integration von Google Cloud HTTP(S)-Load-Balancing für API Gateway können Ihre serverlosen Back-Ends alle Features von Cloud Load Balancing nutzen. Durch die Kombination von API Gateway und HTTP(S)-Load-Balancing mit einer serverlosen Netzwerk-Endpunktgruppe (serverlose NEG) können Sie:
- Gateways mit benutzerdefinierten Markendomains hosten
- TLS für Gateways mit von einer bevorzugten Zertifizierungsstelle ausgestellten Zertifikaten konfigurieren
- Gemeinsamen Einstiegspunkt für ein Gateway-Routing an mehrere Back-Ends erstellen
- Gateways in mehreren geografischen Regionen für Hochverfügbarkeit bereitstellen, ohne URLs für jede Region verwalten zu müssen
- Gateways mit Cloud Armor schützen
- Gateway-Antwortzeit durch Nutzung von Cloud CDN verbessern
Serverlose NEG für API-Gateway verwenden
Eine Netzwerk-Endpunktgruppe (NEG) ist eine Gruppe von Back-End-Endpunkten für einen Load-Balancer. Eine serverlose NEG ist ein Back-End, das auf ein von Google gehostetes serverlosen Back-End wie Cloud Run, App Engine oder API Gateway verweist. Ein serverloses NEG-Back-End für API Gateway kann Folgendes darstellen:
- Eine API-Gateway-Instanz
- Eine Gruppe von Gateways, die mit derselben API-Konfiguration konfiguriert wurden
Die folgende Abbildung zeigt, wie serverlose NEGs im Cloud Load Balancing-Modell verwendet werden können:
Wie oben dargestellt, kann ein Back-End-Dienst von mehreren serverlosen NEGs verwaltet werden. Jede serverlose NEG kann eine einzelne API-Gateway-Instanz enthalten oder eine URL-Maske verwenden, um auf mehrere Gateways zu verweisen. Da alle als Back-End-Dienst fungierenden NEGs für das Load-Balancing verwendet werden, sollten sie funktional äquivalente Gateway-Deployments darstellen. Zum Beispiel sollte für alle NEGs dieselbe API-Konfiguration in jedem Gateway in verschiedenen Regionen bereitgestellt werden. Wenn ein Back-End-Dienst mehrere NEGs enthält, sorgt der Load-Balancer für ausgewogenen Traffic zwischen diesen NEGs und minimiert so die Anfragelatenz.
Einschränkungen bei serverlosen NEGs und API-Gateway
Bei der Verwendung von serverlosen NEGs zum Einbinden von Cloud Load Balancing für API Gateway sollten einige Einschränkungen berücksichtigt werden. Beispiele:
- Serverlose NEGs können keine Netzwerkendpunkte wie IP-Adressen oder Ports anhängen.
- Serverlose NEGs können nur auf API-Gateway-Instanzen verweisen, die sich in derselben Region befinden, in der die NEG erstellt wird.
- Serverlose NEGs können nur mithilfe des serverlosen NEG-Back-Ends auf API Gateway-Instanzen verweisen, die im selben Projekt wie der Load-Balancer erstellt wurden.
- API Gateway unterstützt noch nicht die Einstellungen für eingehenden Traffic. Daher gibt es keine Möglichkeit, den Zugriff auf Ihr API-Gateway über die vom Dienst generierte Gateway-URL zu deaktivieren und sicherzustellen, dass der gesamte Traffic vom Load-Balancer verarbeitet wird.
Weitere Informationen zu Einschränkungen für serverlose NEGs und Back-End-Dienste finden Sie unter Einschränkungen.
Einschränkungen bei serverlosen NEGs in Back-End-Dienstkonfigurationen
Ein Back-End-Dienst definiert, wie Cloud Load Balancing Traffic verteilt. Die Back-End-Dienstkonfiguration enthält eine Reihe von Werten, z. B. das Protokoll für die Verbindung mit Back-Ends, verschiedene Verteilungs- und Sitzungseinstellungen, Systemdiagnosen und Zeitüberschreitungen. Bei serverlosen NEGs, die als Back-End-Dienst für API Gateway verwendet werden, bieten diese Einstellungen eine detaillierte Kontrolle über die Funktionsweise Ihres Load-Balancers.
Die Ressourcendefinition eines Back-End-Dienstes hat folgende Auswirkungen auf das Load-Balancing-Design:
- Serverlose NEGs können nicht mit anderen Arten von NEGs im selben Back-End-Dienst verwendet werden. Es ist beispielsweise nicht möglich, aus demselben Back-End-Dienst eine Weiterleitung an einen GKE-Cluster und eine API-Gateway-Instanz durchzuführen.
- Alle serverlosen NEGs, die in einem Back-End-Dienst kombiniert sind, müssen denselben Back-End-Typ verwenden. Serverlose NEGs mit API-Gateway können nur mit anderen serverlosen NEGs von API Gateway kombiniert werden. Serverlose NEGs von App Engine können nur mit serverlosen NEGs von App Engine kombiniert werden.
- Ein Back-End-Dienst darf pro Region nur eine serverlose NEG enthalten.
Beim Definieren einer Back-End-Dienstkonfiguration, die an eine serverlose NEG weitergeleitet wird, gelten die folgenden Feldeinschränkungen:
balancingMode
kann nicht angegeben werden- Das Feld
healthCheck
muss leer sein und kann nicht angegeben werden - Ports können nicht angegeben werden
- Nur HTTP- und HTTPS-Protokolle werden unterstützt.
- Die Werte in
utilization
- oderconnection
-bezogenen Feldern werden nicht unterstützt.
Die Felder IAP
, cdnPolicy
und securityPolicy
in der Back-End-Dienstkonfiguration sind für serverlose NEGs gültig. Diese Felder können verwendet werden, um Identity-Aware Proxy, Cloud CDN und Cloud Armor mit Ihrem API-Gateway-Dienst einzurichten.
Nächste Schritte
Load-Balancer mit Erste Schritte mit HTTP(S)-Load-Balancing für API-Gateway konfigurieren
Weitere Informationen zur Verwendung benutzerdefinierter Domains