Managed Gateway API CRD’s installeren op Azure Kubernetes Service (AKS)

De Kubernetes Gateway-API is een specificatie voor verkeerbeheer op Kubernetes-clusters. De specificatie verbetert de Ingress API, die een geïntegreerde en provideragnostische benadering voor geavanceerde verkeersroutering mist.

De installatie van de Managed Gateway API voor Azure Kubernetes Service (AKS) installeert de Custom Resource Definitions (CRDs) voor de Kubernetes Gateway API. U kunt deze CRD's onafhankelijk van elke specifieke gateway-API-implementatie installeren.

Opmerking

De installatie van de Managed Gateway-API installeert en beheert alleen de GATEWAY-API-CRD's. U kunt deze CRD's gebruiken met uw eigen gateway-API-implementatie, maar AKS-ondersteuning is alleen van toepassing wanneer u de installatie van de Managed Gateway-API gebruikt met een ondersteunde AKS-invoegtoepassing of -extensie waarmee de Gateway-API wordt geïmplementeerd. BYO-proxy's of andere zelfbeheerde gateway-API-implementaties worden niet ondersteund door AKS.

Vereiste voorwaarden

  • Als u al een bestaande installatie van de GATEWAY-API-CRD's in uw cluster hebt, moet u aan de volgende vereisten voldoen:

    • Alleen standard kanaal-CRD's kunnen op uw cluster worden geïnstalleerd. Experimental kanaal-CRD's zijn niet toegestaan en u moet ze verwijderen voordat u de Managed Gateway-API inschakelt.
    • De gateway-API-bundelversie moet compatibel zijn met de Kubernetes-versie van uw cluster. Zie de sectie Ondersteunde Kubernetes-versies voor gateway-API-bundelversies voor meer informatie.
  • U kunt eventueel een AKS-invoegtoepassing of -extensie implementeren die de Gateway-API implementeert, zoals de Istio-invoegtoepassing. Als u de Istio-invoegtoepassing gebruikt, moet u een kleine revisie asm-1-26 of later uitvoeren om compatibiliteit met de managed gateway-API-installatie te garanderen. Raadpleeg de implementatie van de Istio-gebaseerde service mesh add-on voor Azure Kubernetes Service (AKS) om de Istio add-on te implementeren.

Azure CLI-versie bijwerken

U moet versie azure-cli of hoger gebruiken2.86.0. Voer az --version uit om uw azure-cli-versie te vinden en voer az upgrade uit om te upgraden.

Ondersteunde Kubernetes-versies voor gateway-API-bundelversies

De volgende tabel bevat een overzicht van de ondersteunde Kubernetes-versies voor uw AKS-cluster voor elke gateway-API-bundelversie voor het standard kanaal:

Gateway-API-bundelversie Ondersteunde Kubernetes-versies
v1.2.1 v1.26.0 - v1.33.x
v1.3.0 v1.34.x
v1.4.1 v1.35.x
v1.5.1 v1.36.0+

Opmerking

Als u uw AKS-cluster upgraden naar een nieuwe kleine versie nadat u de beheerde Gateway API-CRD's hebt geïnstalleerd, upgraden de CRD's automatisch naar de nieuwe ondersteunde Gateway API-bundelversie voor die Kubernetes-versie. Als u bijvoorbeeld een upgrade uitvoert van AKS v1.33.0 naar v1.34.0 en eerder de Managed Gateway-API voor bundelversie v1.2.1had geïnstalleerd, upgraden de CRD's automatisch naar de bundelversie v1.3.0.

Een nieuw AKS-cluster maken met geïnstalleerde Managed Gateway API CRD's

  • Maak een nieuw AKS-cluster met beheerde gateway-API-CRD's die zijn geïnstalleerd met behulp van de az aks create opdracht met de --enable-gateway-api vlag. U kunt eventueel ook een ondersteunde invoegtoepassing inschakelen, zoals de invoegtoepassing Istio-service-mesh, in dezelfde opdracht. Met de volgende voorbeeldopdracht maakt u een nieuw AKS-cluster met de installatie van de Managed Gateway-API en de invoegtoepassing Istio-service-mesh ingeschakeld:

    az aks create --resource-group myResourceGroup --name myAKSCluster --enable-gateway-api --enable-azure-service-mesh
    

Beheerde Gateway API CRD's installeren op een bestaand AKS-cluster

  • Installeer beheerde gateway-API-CRD's op een bestaand cluster met behulp van de az aks update opdracht met de --enable-gateway-api vlag.

    az aks update --resource-group myResourceGroup --name myAKSCluster --enable-gateway-api
    

Controleer de installatie van de beheerde gateway-API CRD

  1. Bekijk de CRD's die op uw cluster zijn geïnstalleerd met behulp van de volgende kubectl get crds opdracht:

    kubectl get crds | grep "gateway.networking.k8s.io"
    

    In de uitvoer moeten de geïnstalleerde CRD's worden weergegeven, die deel uitmaken van de Kubernetes Gateway-API-specificatie. Voorbeeld:

    gatewayclasses.gateway.networking.k8s.io                           2025-08-29T17:52:36Z
    gateways.gateway.networking.k8s.io                                 2025-08-29T17:52:36Z
    grpcroutes.gateway.networking.k8s.io                               2025-08-29T17:52:36Z
    httproutes.gateway.networking.k8s.io                               2025-08-29T17:52:37Z
    referencegrants.gateway.networking.k8s.io                          2025-08-29T17:52:37Z
    
  2. Controleer of de CRD's de verwachte aantekeningen hebben en dat de bundelversie overeenkomt met de verwachte Kubernetes-versie voor uw cluster met behulp van de volgende kubectl get crds opdracht:

    kubectl get crd gateways.gateway.networking.k8s.io -ojsonpath={.metadata.annotations} | jq
    

    In de uitvoer moeten de verwachte aantekeningen worden weergegeven, inclusief de gateway.networking.k8s.io/bundle-version aantekening met de verwachte bundelversie voor de Kubernetes-versie van uw cluster. Als uw cluster bijvoorbeeld Kubernetes v1.33.0 uitvoert, is de verwachte bundelversie v1.2.1 en moet de uitvoer er als volgt uitzien:

    {
    "api-approved.kubernetes.io": "https://github.com/kubernetes-sigs/gateway-api/pull/3328",
    "app.kubernetes.io/managed-by": "aks",
    "app.kubernetes.io/part-of": <hash>,
    "gateway.networking.k8s.io/bundle-version": "v1.2.1",
    "gateway.networking.k8s.io/channel": "standard"
    }
    

Beheerde gateway-API-CRD's verwijderen op een AKS-cluster

  • Verwijder beheerde gateway-API-CRD's op een bestaand cluster met behulp van de az aks update opdracht met de --disable-gateway-api vlag.

    az aks update --resource-group myResourceGroup --name myAKSCluster --disable-gateway-api