Load-Balancing für API Gateway
Durch die Einbindung des globalen externen Application Load Balancers und des klassischen Application Load Balancers in API Gateway können Ihre serverlosen Back-Ends alle Features von Cloud Load Balancing nutzen. Wenn Sie API Gateway mit einem globalen externen Application Load Balancer oder einem klassischen Application Load Balancer mit einer serverlosen Netzwerk-Endpunktgruppe (serverlose NEG) kombinieren, können Sie Folgendes tun:
- Gateways mit benutzerdefinierten Markendomains hosten
- TLS für Gateways mit Zertifikaten konfigurieren, die von einer bevorzugten Zertifizierungsstelle ausgestellt wurden
- Einen gemeinsamen Einstiegspunkt für ein Gateway erstellen, das an mehrere Back-Ends weiterleitet
- Gateways in mehreren geografischen Regionen für hohe Verfügbarkeit bereitstellen, ohne URLs für jede Region verwalten zu müssen
- Gateways mit Cloud Armor schützen
- Die Antwortzeit des Gateways mit Cloud CDN verbessern
Serverlose NEG für API Gateway verwenden
Eine Netzwerk-Endpunktgruppe (NEG) ist eine Gruppe von Backend-Endpunkten für einen Load-Balancer. Eine serverlose NEG ist ein Backend, das auf ein von Google gehostetes serverloses Backend wie Cloud Run, App Engine oder API Gateway verweist. Ein serverloses NEG-Backend 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 in einem früheren Beispiel gezeigt, kann ein Backend-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 NEGs, die als Backend-Dienst fungieren, für das Load-Balancing verwendet werden, sollten sie funktional äquivalente Gateway-Bereitstellungen darstellen. Beispielsweise sollten alle NEGs dieselbe API-Konfiguration haben, die in jedem Gateway in verschiedenen Regionen bereitgestellt wird. Wenn ein Backend-Dienst mehrere NEGs enthält, verteilt der Load-Balancer den Traffic zwischen diesen NEGs und minimiert so die Anfragelatenz.
Einschränkungen für serverlose NEGs und API Gateway
Bei der Verwendung serverloser NEGs zur Einbindung von Cloud Load Balancing für API Gateway sind einige Einschränkungen zu berücksichtigen. Die wichtigsten sind:
- Serverlose NEGs können keine Netzwerkendpunkte wie IP-Adressen oder Ports haben.
- 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 auf API Gateway-Instanzen verweisen, die im selben Projekt wie der Load-Balancer erstellt wurden, der das serverlose NEG-Backend verwendet.
- API Gateway unterstützt keine Ingress-Steuerungseinstellungen. Daher ist es nicht möglich, den Zugriff auf Ihr API Gateway über eine vom Dienst generierte Gateway-URL zu deaktivieren und dafür zu sorgen, dass der gesamte Traffic vom Load-Balancer verarbeitet wird.
Weitere Informationen zu Einschränkungen für serverlose NEGs und Backend-Dienste im Allgemeinen finden Sie unter Einschränkungen.
Einschränkungen für serverlose NEGs in Backend-Dienstkonfigurationen
Ein Backend-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 Backend-Dienst für API Gateway verwendet werden, können Sie mit diesen Einstellungen das Verhalten Ihres Load-Balancers genau steuern.
Die Ressourcendefinition eines Backend-Dienstes hat folgende Auswirkungen auf Ihr Load-Balancing-Design:
- Serverlose NEGs können nicht mit anderen Arten von NEGs im selben Backend-Dienst verwendet werden. Beispielsweise können Sie nicht vom selben Backend-Dienst an einen GKE-Cluster und eine API Gateway-Instanz weiterleiten.
- Alle serverlosen NEGs, die in einem Backend-Dienst kombiniert sind, müssen denselben Backend-Typ verwenden. Das bedeutet, dass serverlose API Gateway-NEGs nur mit anderen serverlosen API Gateway-NEGs kombiniert werden können. Serverlose NEGs von App Engine können nur mit serverlosen NEGs von App Engine kombiniert werden.
- Ein Backend-Dienst darf pro Region nur eine serverlose NEG enthalten.
Wenn Sie eine Backend-Dienstkonfiguration definieren, die an eine serverlose NEG weiterleitet, gelten die folgenden Einschränkungen für Felder:
balancingModekann nicht angegeben werden- Das Feld
healthCheckmuss leer sein und kann nicht angegeben werden - Ports können nicht angegeben werden
- Nur die Protokolle HTTP und HTTPS werden unterstützt.
- Werte, die in Feldern für
utilizationoderconnectionangegeben sind, werden nicht unterstützt.
Die Felder IAP, cdnPolicy und securityPolicy in der Backend-Dienstkonfiguration sind für serverlose NEGs gültig. Mit diesen Feldern können Sie Identity-Aware Proxy, Cloud CDN und Cloud Armor für Ihren API Gateway-Dienst einrichten.
Nächste Schritte
Load-Balancer konfigurieren: Erste Schritte mit dem globalen externen Application Load Balancer für API Gateway
Multiregionale Bereitstellungen für API Gateway erstellen
Erfahren Sie mehr über Benutzerdefinierte Domains verwenden