Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Je kunt de Azure CLI gebruiken om de application gateway ingress controller (AGIC)-add-on in te schakelen voor een nieuw Azure Kubernetes Services (AKS)-cluster.
In deze tutorial maak je een AKS-cluster met de ingeschakelde AGIC-add-on. Het maken van het cluster zal automatisch een Azure application gateway-instantie creëren om te gebruiken. Je gaat vervolgens een voorbeeldapplicatie implementeren die de add-on gebruikt om de applicatie via een application gateway bloot te stellen.
De add-on biedt een veel snellere manier om AGIC voor uw AKS-cluster te implementeren dan voorheen via Helm. Het biedt ook een volledig beheerde ervaring.
In deze tutorial leer je hoe je:
- Maak een resourcegroep.
- Maak een nieuw AKS-cluster met de AGIC-add-on ingeschakeld.
- Implementeer een voorbeeldtoepassing met behulp van AGIC voor ingress op de AKS-cluster.
- Controleer of de applicatie bereikbaar is via de applicatie-gateway.
Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
Vereiste voorwaarden
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Als je de voorkeur geeft aan het lokaal uitvoeren van CLI-referentiecommando's, installeer dan de Azure CLI. Als je op Windows of macOS werkt, overweeg dan om Azure CLI in een Docker-container uit te voeren. Voor meer informatie, zie Hoe de Azure CLI in een Docker-container uit te voeren.
Als je een lokale installatie gebruikt, meld je dan aan bij de Azure CLI met behulp van de az login opdracht. Om het authenticatieproces te voltooien, volgt u de stappen die op uw terminal worden weergegeven. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Wanneer u daarom wordt gevraagd, installeer de Azure CLI-extensie bij het eerste gebruik. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de versie en afhankelijkheidsbibliotheken te vinden die zijn geïnstalleerd. Om te upgraden naar de nieuwste versie, voer az upgrade uit.
Maak een bron groep
In Azure wijs je gerelateerde resources toe aan een resourcegroep. Maak een resourcegroep aan met behulp van az group create. Het volgende voorbeeld creëert een resourcegroep genaamd myResourceGroup in de locatie (regio) Oost VS.
az group create --name myResourceGroup --location eastus
Zet een AKS-cluster in met de add-on ingeschakeld.
Je gaat nu een nieuw AKS-cluster implementeren met de AGIC-add-on ingeschakeld. Als je geen bestaande applicatiegateway-instantie opgeeft om in dit proces te gebruiken, maak en configureer je automatisch een nieuwe applicatiegateway-instantie om verkeer naar de AKS-cluster te sturen.
Notitie
De application gateway ingress controller add-on ondersteunt alleen application gateway v2 SKU's (Standaard en WAF), en niet de application gateway v1 SKU's. Wanneer u een nieuwe instance van een application gateway implementeert via de AGIC-add-on, kunt u alleen een application gateway Standard_v2 SKU implementeren. Als je de add-on voor een applicatiegateway WAF_v2 SKU wilt inschakelen, gebruik dan een van deze methoden:
- Schakel WAF in op de application gateway via het portaal.
- Maak eerst de WAF_v2-toepassingsgateway-instantie en volg daarna de instructies om de AGIC-add-on in te schakelen met een bestaande AKS-cluster en bestaande toepassingsgateway-instantie.
In het volgende voorbeeld implementeer je een nieuw AKS-cluster genaamd myCluster met behulp van Azure CNI en beheerde identiteiten. De AGIC-add-on wordt ingeschakeld in de resourcegroep die je hebt aangemaakt, myResourceGroup.
Bij het implementeren van een nieuw AKS-cluster met de AGIC-add-on ingeschakeld zonder een bestaande application gateway-instantie op te geven, wordt automatisch een Standard_v2 SKU application gateway-instantie gemaakt. U moet een naam en een subnetadresruimte opgeven voor het nieuwe application gateway-exemplaar. Het adresbereik moet afkomstig zijn uit het netwerkvoorvoegsel 10.224.0.0/12 gebruikt door het AKS-virtuele netwerk zonder dat het overlapt met het netwerkvoorvoegsel 10.224.0.0/16 gebruikt door de AKS-subnet. In deze tutorial gebruikt u myApplicationGateway als naam voor de application gateway en 10.225.0.0/16 als adresruimte voor het subnet.
az aks create -n myCluster -g myResourceGroup --network-plugin azure --enable-managed-identity -a ingress-appgw --appgw-name myApplicationGateway --appgw-subnet-cidr "10.225.0.0/16" --generate-ssh-keys
Notitie
Zorg ervoor dat de identiteit die door AGIC wordt gebruikt de juiste machtigingen heeft. Een lijst van machtigingen die door de identiteit nodig zijn, is hier te vinden: Configureer Infrastructuur - Machtigingen. Als een aangepaste rol niet is gedefinieerd met de vereiste rechten, kunt u de rol Network Contributor gebruiken.
# Get application gateway id from AKS addon profile
appGatewayId=$(az aks show -n myCluster -g myResourceGroup -o tsv --query "addonProfiles.ingressApplicationGateway.config.effectiveApplicationGatewayId")
# Get Application Gateway subnet id
appGatewaySubnetId=$(az network application-gateway show --ids $appGatewayId -o tsv --query "gatewayIPConfigurations[0].subnet.id")
# Get AGIC addon identity
agicAddonIdentity=$(az aks show -n myCluster -g myResourceGroup -o tsv --query "addonProfiles.ingressApplicationGateway.identity.clientId")
# Assign network contributor role to AGIC addon identity to subnet that contains the Application Gateway
az role assignment create --assignee $agicAddonIdentity --scope $appGatewaySubnetId --role "Network Contributor"
Voor meer configuratieparameters voor het bovenstaande commando, zie az aks create.
Notitie
Het AKS-cluster dat je hebt aangemaakt, verschijnt in de resourcegroep die je hebt aangemaakt, myResourceGroup. De automatisch aangemaakte application gateway-instantie zal zich echter in de knooppuntresourcegroep bevinden, waar de agentenpools zich bevinden. De node-resourcegroep heet standaard MC_resource-group-name_cluster-name_location, maar kan worden aangepast.
Implementeer een voorbeeldapplicatie met behulp van AGIC.
Je gaat nu een voorbeeldapplicatie implementeren naar de AKS-cluster die je hebt aangemaakt. De applicatie zal de AGIC-addon gebruiken voor toegang en de applicatiegateway-instantie verbinden met de AKS-cluster.
Eerst krijg je toegang tot de AKS-cluster door het az aks get-credentials-commando te uitvoeren.
az aks get-credentials -n myCluster -g myResourceGroup
Nu je over inloggegevens beschikt, voer je het volgende commando uit om een voorbeeldtoepassing op te zetten die AGIC gebruikt voor de ingress naar het cluster. AGIC zal de instance van de application gateway die je eerder hebt opgezet bijwerken met bijbehorende routeringsregels voor de voorbeeldapplicatie die je aan het implementeren bent.
kubectl apply -f https://raw.githubusercontent.com/Azure/application-gateway-kubernetes-ingress/master/docs/examples/aspnetapp.yaml
Controleer of de applicatie bereikbaar is
Nu de applicatiegateway-instance is ingesteld om verkeer naar het AKS-cluster te leiden, laten we controleren of uw applicatie bereikbaar is. Allereerst, vraag het IP-adres van de inkomende verbinding op:
kubectl get ingress
Controleer of de voorbeeldapplicatie die je hebt gemaakt, draait door:
- Bezoek het IP-adres van het application gateway-instantie dat je hebt verkregen door het vorige commando uit te voeren.
- Het gebruik van
curl.
De applicatiegateway kan een minuut duren om de update te ontvangen. Als de application gateway nog steeds in een Bijwerken-status op het portaal staat, laat het dan voltooid worden voordat je probeert het IP-adres te bereiken.
Reinig bronnen
Wanneer je ze niet langer nodig hebt, verwijder dan alle bronnen die in deze tutorial zijn aangemaakt door de resourcegroepen myResourceGroup en MC_myResourceGroup_myCluster_eastus te verwijderen.
az group delete --name myResourceGroup
az group delete --name MC_myResourceGroup_myCluster_eastus
Volgende stappen
In deze handleiding:
- Nieuwe AKS-cluster gemaakt met de AGIC-add-on ingeschakeld.
- Een voorbeeldapplicatie geïmplementeerd met gebruik van AGIC voor ingress op de AKS-cluster.
Voor meer informatie over AGIC, zie Wat is Application Gateway Ingress Controller en AGIC-add-on uitschakelen en opnieuw inschakelen voor uw AKS-cluster.
Om te leren hoe je de invoegcontroller-add-on voor een toepassingsgateway kunt inschakelen voor een bestaande AKS-cluster met een bestaande toepassingsgateway, ga verder naar de volgende tutorial.