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 eine 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
  • Dem Benutzer zugewiesene Managed Identity

In der folgenden Abbildung sehen Sie eine Übersicht über die Architektur von Application Gateway für Container:

Abbildung des Datenverkehrsflusses aus dem Internet durch Application Gateway für Container bis an Back-End-Pods in AKS

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 Entfernen von Pods, Routen und Tests

Das Anwendungsgateway für Container bietet einen elastischen und skalierbaren Eingang zu AKS-Clustern und umfasst eine neue Datenebene sowie eine Steuerungsebene mit neuen Gruppen von Azure Resource Manager-APIs, die sich von vorhandenem Anwendungsgateway unterscheiden. 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:

  • Verwaltetes AKS-Add-On
  • Automatische Wiederholungen
  • Automatische Skalierung
  • Resilienz von Verfügbarkeitszonen
  • Benutzerdefinierte und standardmäßige Integritätstests
  • ECDSA- und RSA-Zertifikatunterstützung
  • Flexible Lastenausgleichsstrategien
    • Geringste Anforderung
    • Lastbewusstes Routing
    • RingHash
    • RoundRobin
    • Gewichtetes Round-Robin
  • 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
    • `Path`
    • 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)
  • TLS-Richtlinien
  • URL Redirect
  • URL Rewrite
  • Webanwendungsfirewall (WAF)
  • WebSocket-Unterstützung

Bereitstellungsstrategien

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, sollten Sie zuvor eine Front-End-Ressource in Azure bereitstellen, auf die von der Gateway-Ressource verwiesen wird. Für das Löschen der Front-End-Ressource sind Azure-Admins 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.
    • In der Gateway-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)
  • Brasilien Süd
  • 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)
  • Westliches USA 2
  • Westliches USA 3
  • 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

Für Feedback 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

Weitere 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.

Neues

Weitere Informationen zu den Neuerungen von Application Gateway für Container finden Sie unter Azure-Updates.

Nächste Schritte