Was ist Application Gateway für Container?
Application Gateway für Container ist eine Produkt auf der Anwendungsebene (Ebene 7) für Lastenausgleich und dynamische Datenverkehrsverwaltung für Workloads, die in einem Kubernetes-Cluster ausgeführt werden. Es erweitert das Azure-Portfolio für den Anwendungslastenausgleich und ist ein neues Angebot der Application Gateway Produktfamilie.
Application Gateway für Container ist die Weiterentwicklung des Application Gateway Ingress Controller (AGIC), einer Kubernetes-Anwendung, mit der Kunden von Azure Kubernetes Service (AKS) den nativen Anwendungslastenausgleich von Azure Application Gateway nutzen können. In der aktuellen Form überwacht AGIC eine Teilmenge von Kubernetes-Ressourcen auf Änderungen und wendet diese mithilfe von Azure Resource Manager (ARM) auf Application Gateway an.
Wie funktioniert dies?
Application Gateway für Container besteht aus drei Komponenten:
- Application Gateway für Container-Ressource
- Front-Ends
- Associations
In einer Application Gateway für Container-Bereitstellung wird auch auf die folgenden Abhängigkeiten verwiesen:
- Private IP-Adresse
- Subnetzdelegierung
- Vom Benutzer zugewiesene verwaltete Identität
In der folgenden Abbildung sehen Sie eine Übersicht über die Architektur von Application Gateway für Container:
Weitere Informationen dazu, wie Application Gateway für Container eingehende Anforderungen akzeptiert und an ein Back-End-Ziel weiterleitet, finden Sie unter Komponenten von Application Gateway für Container.
Features und Vorteile
Application Gateway für Container bietet bei der Veröffentlichung einige völlig neue Features, z. B.:
- Datenverkehrsaufteilung / gewichteter Roundrobin
- Gegenseitige Authentifizierung beim Back-End-Ziel
- Kubernetes-Unterstützung für Ingress und Gateway-API
- Flexible Bereitstellungsstrategien
- Höhere Leistung mit nahezu echtzeitbasierten Updates zum Hinzufügen oder Verschieben von Pods, Routen und Tests
Application Gateway für Container bietet elastischen und skalierbaren Dateneingang in AKS-Clustern und stellt sowohl eine neue Datenebene als auch eine Steuerungsebene mit neuen ARM-APIs. Diese APIs unterscheiden sich von der aktuellen Implementierung von Application Gateway. Application Gateway für Container befindet sich außerhalb der Datenebene des AKS-Clusters und ist für eingehende Daten verantwortlich. Der Dienst wird durch eine ALB-Controllerkomponente verwaltet, die im AKS-Cluster ausgeführt wird und mit Kubernetes-Gateway-APIs konform ist.
Lastenausgleichsfeatures
Application Gateway für Container unterstützt die folgenden Features für die Datenverkehrsverwaltung:
- Automatische Wiederholungen
- Automatische Skalierung
- Resilienz von Verfügbarkeitszonen
- Benutzerdefinierte und standardmäßige Integritätstests
- ECDSA- und RSA-Zertifikatunterstützung
- gRPC
- Erneutes Generieren von Headern
- HTTP/2
- HTTPS-Datenverkehrsverwaltung:
- SSL-Terminierung
- End-to-End-SSL
- Unterstützung für Ingress und Gateway-API
- HTTP/HTTPS-Anforderungsweiterleitung auf Layer 7 basierend auf Präfix/exakter Übereinstimmung für:
- Hostname
- Pfad
- Header
- Abfragezeichenfolge
- Methoden
- Ports (80/443)
- Gegenseitige Authentifizierung (mTLS) zum Frontend, Back-End oder End-to-End
- Unterstützung für vom Server gesendete Ereignisse (SSE)
- Datenverkehrsaufteilung/gewichteter Roundrobin
- TLS-Richtlinien
- Umleitungs-URL
- URL Rewrite
Bereitstellungsmethoden
Es gibt zwei Bereitstellungsstrategien für die Verwaltung von Application Gateway für Container:
- Bring Your Own Deployment (BYOD): Bei dieser Bereitstellungsstrategie werden Bereitstellung und Lebenszyklus der Ressourcen für Application Gateway für Container sowie der Ressourcen für Zuordnungen und Front-End über Azure-Portal, CLI, PowerShell, Terraform usw. als korrekt angenommen, und in der Konfiguration in Kubernetes wird darauf verwiesen.
- In der Gateway-API: Jedes Mal, wenn Sie eine neue Gateway-Ressource in Kubernetes erstellen möchten, sollte zuvor eine Front-End-Ressource in Azure bereitgestellt werden, auf die von der Gateway-Ressource verwiesen wird. Für das Löschen der Front-End-Ressource sind Azure-Administrator*innen zuständig. Beim Löschen der Gateway-Ressource in Kubernetes wird die Front-End-Ressource nicht gelöscht.
- Vom ALB-Controller verwaltet: Bei dieser Bereitstellungsstrategie ist der in Kubernetes bereitgestellte ALB-Controller für den Lebenszyklus der Application Gateway für Container-Ressourcen und deren untergeordnete Ressourcen zuständig. Der ALB-Controller erstellt die Application Gateway für Container-Ressource, wenn eine benutzerdefinierte Ressource für den Anwendungslastenausgleich im Cluster definiert ist und deren Lebenszyklus auf dem Lebenszyklus der benutzerdefinierten Ressource basiert.
- Gateway-interne API: Jedes Mal, wenn eine Gateway-Ressource erstellt wird, die auf die Ressource für den Anwendungslastenausgleich verweist, stellt der ALB-Controller eine neue Front-End-Ressource bereit und verwaltet deren Lebenszyklus basierend auf dem Lebenszyklus der Gateway-Ressource.
Unterstützte Regionen
Application Gateway für Container wird derzeit in den folgenden Regionen angeboten:
- Australien (Osten)
- Kanada, Mitte
- Indien, Mitte
- USA (Mitte)
- Asien, Osten
- East US
- USA (Ost 2)
- Frankreich, Mitte
- Deutschland, Westen-Mitte
- Korea, Mitte
- USA Nord Mitte
- Nordeuropa
- Norwegen, Osten
- USA Süd Mitte
- Asien, Südosten
- Schweiz, Norden
- Vereinigte Arabische Emirate, Norden
- UK, Süden
- USA (Westen)
- Europa, Westen
Implementierung der Gateway-API
Der ALB-Controller implementiert die Version v1 der Gateway-API.
Gateway-API-Ressource | Support | Kommentare |
---|---|---|
GatewayClass | Ja | |
Gateway | Ja | Unterstützung für das HTTP- und das HTTPS-Protokoll im Listener. Im Listener sind nur die Ports 80 und 443 zulässig. |
HTTPRoute | Ja | |
ReferenceGrant | Ja | Unterstützt derzeit Version v1alpha1 dieser API |
Implementierung der Ingress-API
Der ALB-Controller implementiert die Unterstützung für Ingress.
Ingress-API-Ressource | Support | Kommentare |
---|---|---|
Eingehend | Ja | Unterstützung für das HTTP- und das HTTPS-Protokoll im Listener. |
Melden von Problemen und Feedback
Um Feedback bereitzustellen, posten Sie eine neue Idee auf feedback.azure.com. Wenn Sie Probleme melden möchten, senden Sie über das Azure-Portal eine Supportanfrage zu Ihrer Application Gateway für Container-Ressource.
Preise und SLA
Informationen zu den Preisen für Application Gateway für Container finden Sie unter Application Gateway – Preise.
Informationen zum Anwendungsgateway für SLA-Container finden Sie unter Service Level Agreements (SLA) für Onlinedienste.
Neuigkeiten
Informationen zu den Neuerungen von Application Gateway für Container finden Sie unter Azure-Updates.