Wat is Application Gateway voor containers?

Application Gateway for Containers is een beheerde toepassingslaag (laag 7) taakverdeling en toegangsbeheerservice voor Kubernetes-workloads. Het routeert HTTP-, HTTPS-, gRPC- en AI-deductieverkeer naar toepassingen in Azure Kubernetes Service (AKS) terwijl Azure het onderliggende gegevensvlak buiten het cluster gebruikt.

U configureert Application Gateway for Containers vanuit Kubernetes met behulp van ondersteunde Ingress- en Gateway API-resources. Met dit configuratiemodel kunnen platformteams een gedeelde Azure-beheerde ingresslaag bieden, terwijl applicatieteams Kubernetes-eigen resources gebruiken om te beschrijven hoe hun services verkeer ontvangen.

Voor AI-workloads biedt de inferentiegateway van Application Gateway for Containers ondersteuning voor zelfgehoste modelservers die modelbewuste routering en endpointselectie op aanvraagmoment nodig hebben. Zie voor meer informatie Application Gateway for Containers - inferentiegateway.

Application Gateway for Containers is een afzonderlijke Application Gateway-aanbieding die vanaf het begin is gebouwd voor Kubernetes, met een toegewezen besturingsvlak en gegevensvlak dat is gevormd door leer van Application Gateway Ingress Controller (AGIC). ALB Controller wordt uitgevoerd in het cluster en vertaalt Kubernetes-configuratie naar Application Gateway for Containers-configuratie in Azure.

Product samenvatting

Op hoog niveau biedt Application Gateway for Containers:

  • Systeemeigen Kubernetes-configuratie: Gebruik toegangsbeheer- en gateway-API-resources om te definiëren hoe aanvragen services in uw cluster bereiken.
  • Azure beheerd gegevensvlak voor inkomend verkeer: houd inkomend verkeer buiten het AKS-cluster terwijl Azure het gegevensvlak gebruikt dat clientaanvragen verwerkt.
  • Gedeeld toegangsbeheerplatform: Scheid de toegangsbeheerinfrastructuur in eigendom van het platform van de routeringsconfiguratie in toepassingseigendom.
  • Geleidelijke invoering: Gebruik Ingress- of Gateway API-resources, zodat workloads na verloop van tijd naar Application Gateway for Containers kunnen worden verplaatst.
  • Ondersteuning voor AI-deductie: routeer verkeer naar zelf-hostende modelservers met modelbewuste routering en aanvraagtijdeindpuntselectie, geconfigureerd via de gateway-API-deductie-extensie.
  • Beheeropties voor toepassingslevering: Gebruik layer 7-routering, verkeerssplitsing, health probes, opnieuw proberen, TLS, wederzijdse verificatie en Web Application Firewall-beleid (WAF).

Hoe werkt het?

Application Gateway for Containers scheidt de Kubernetes-configuratie van de verwerking van Azure-verkeer. De ALB-controller kijkt naar Kubernetes-resources zoals inkomend verkeer, gateway, HTTPRoute en ApplicationLoadBalancer en past de gewenste configuratie toe op Application Gateway for Containers in Azure.

Een implementatie van Application Gateway for Containers bestaat uit vier onderdelen:

  • Application Gateway for Containers-resource
  • Frontends
  • Verenigingen
  • Beveiligingsbeleid

Implementaties verwijzen ook naar de volgende afhankelijkheden:

  • Delegatie van subnet
  • Door de gebruiker toegewezen beheerde identiteit

De architectuur van Application Gateway for Containers wordt samengevat in de volgende afbeelding:

Diagram dat het verkeer van het internet toont dat binnenkomt via de Application Gateway for Containers en naar de achterliggende pods in AKS wordt gestuurd.

Zie Application Gateway for Containers-onderdelen voor meer informatie over hoe Application Gateway for Containers binnenkomende aanvragen accepteert en doorstuurt naar een back-enddoel.

Ondersteunde functies voor verkeersbeheer

Application Gateway for Containers ondersteunt de volgende functies voor verkeerbeheer:

  • Mogelijkheden van AI-gateway
    • Ondersteuning voor de Gateway API Inference Extension
    • Modelbewuste routering met een managed body-based router (BBR)
    • Load-aware routering naar de minst geladen modelreplica's voor lagere latentie met behulp van een Eindpuntkiezer (EPP)
    • Deductie beveiligen met Web Application Firewall (WAF)
  • Door AKS beheerde invoegtoepassing
  • Automatische nieuwe pogingen
  • Automatisch schalen
  • Veerkracht van beschikbaarheidszone
  • Aangepaste en standaard gezondheidscontroles
  • ECDSA- en RSA-certificaatondersteuning
  • Flexibele strategieën voor taakverdeling
    • Minste aanvraag
    • Belastingbewuste routing
    • Ringhash
    • Ronde-robin
    • Gewogen round robin
  • gRPC
  • Header opnieuw schrijven
  • HTTP/2
  • HTTPS-verkeersbeheer:
    • SSL-beëindiging
    • End-to-end SSL
  • Ondersteuning voor inkomend verkeer en gateway-API
  • Doorsturen van HTTP-/HTTPS-aanvragen op basis van voorvoegsel/exacte overeenkomst op:
    • Hostnaam
    • Pad
    • Koptekst
    • Querystring
    • Methoden
    • Poorten (80/443)
  • Wederzijdse verificatie (mTLS) voor front-end, back-end of eindpunt-tot-eindpunt
  • SSE-ondersteuning (Server Sent Event)
  • TLS-beleid
  • URL-doorverwijzing
  • URL opnieuw genereren
  • Firewall voor webapplicaties (WAF)
  • Ondersteuning voor WebSocket

Implementatiestrategieën

Er zijn twee implementatiestrategieën voor het beheer van Application Gateway voor containers:

  • Byo-implementatie (Bring Your Own): U beheert de implementatie en levenscyclus van de Application Gateway for Containers-resource, koppelingsresource en front-endresource met behulp van de Azure-portal, Azure CLI, Azure PowerShell of Terraform. U verwijst naar deze resources in de configuratie in Kubernetes.
    • In gateway-API: Telkens wanneer u een nieuwe gatewayresource in Kubernetes maakt, richt u eerst een front-endresource in Azure in en verwijst u ernaar vanuit de gatewayresource. De Azure-beheerder beheert het verwijderen van de Frontend-resource. De Frontend-resource wordt niet verwijderd wanneer de Gateway-resource in Kubernetes wordt verwijderd.
  • Beheerd door DE ALB-controller: DE ALB-controller die in Kubernetes is geïmplementeerd, is verantwoordelijk voor de levenscyclus van de Application Gateway for Containers-resource en de bijbehorende subresources. ALB Controller maakt de Application Gateway for Containers-resource wanneer op het cluster een aangepaste ApplicationLoadBalancer-resource wordt gedefinieerd. De levenscyclus ervan is gebaseerd op de levenscyclus van de aangepaste resource.
    • In gateway-API: Telkens wanneer u een gatewayresource maakt die verwijst naar de ApplicationLoadBalancer-resource, richt DE ALB-controller een nieuwe front-endresource in en beheert de levenscyclus ervan op basis van de levenscyclus van de gatewayresource.

Ondersteunde regio’s

Application Gateway for Containers is momenteel beschikbaar in de volgende regio's:

  • Australië - oost
  • Brazilië Zuid
  • Centraal-Canada
  • Centraal India
  • Central US
  • Azië - oost
  • Oost-VS
  • Oostelijke Verenigde Staten 2
  • Frankrijk - centraal
  • Duitsland - west-centraal
  • Centraal-Korea
  • VS - noord-centraal
  • Europa - noord
  • Noorwegen - oost
  • Zuid-Centraal VS
  • Azië - zuidoost
  • Sweden Central
  • Zwitserland - noord
  • VAE - noord
  • Verenigd Koninkrijk Zuid
  • Westelijke VS
  • Westelijke Verenigde Staten 2
  • Westelijke VS 3
  • West-Europa

Ondersteuning voor gateway-API

DE ALB-controller implementeert versie v1.5 van de gateway-API.

Gateway-API-resource Ondersteuning Opmerkingen
GatewayClass Ja
Gateway Ja Ondersteuning voor HET HTTP- en HTTPS-protocol op de listener. De enige poorten die zijn toegestaan op de listener zijn 80 en 443.
HTTPRoute Ja
GRPCRoute Ja
ReferenceGrant Ja Ondersteunt momenteel versie v1alpha1 van deze API
Inferentiepool Ja
InferenceObjective Ja Implementeert momenteel versie v1alpha1 van deze API

Ondersteuning voor Ingress API

ALB-controller biedt ondersteuning voor Ingress.

Ingress-API-resource Ondersteuning Opmerkingen
Ingang Ja Ondersteuning voor HET HTTP- en HTTPS-protocol op de listener.

Problemen melden en feedback geven

Voor feedback plaatst u een nieuw idee in feedback.azure.com. Voor problemen dient u een ondersteuningsaanvraag in via de Azure-portal op uw Application Gateway for Containers-resource.

Prijzen en Service Level Agreement (SLA)

Zie Prijzen voor Application Gateway voor prijsinformatie over Application Gateway voor containers.

Voor SLA-informatie over Application Gateway for Containers raadpleegt u Service Level Agreements (SLA) voor onlineservices.

Wat is nieuw

Zie Azure-updates voor meer informatie over wat er nieuw is met Application Gateway for Containers.

Volgende stappen