Oktatóanyag: Új AKS-fürt bejövőforgalom-vezérlő bővítményének engedélyezése új Application Gateway-példánysal

Az Azure CLI használatával engedélyezheti az Application Gateway bejövőforgalom-vezérlő (AGIC) bővítményét egy új Azure Kubernetes Services-fürthöz .

Ebben az oktatóanyagban egy AKS-fürtöt fog létrehozni, amelyen engedélyezve van az AGIC bővítmény. A fürt létrehozása automatikusan létrehoz egy Azure Application Gateway-példányt. Ezután üzembe helyez egy mintaalkalmazást, amely a bővítmény használatával teszi elérhetővé az alkalmazást az Application Gatewayen keresztül.

A bővítmény sokkal gyorsabban teszi lehetővé az AGIC üzembe helyezését az AKS-fürtön, mint korábban a Helmen keresztül. Teljes körűen felügyelt felületet is kínál.

Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:

  • Hozzon létre egy erőforráscsoportot.
  • Hozzon létre egy új AKS-fürtöt az AGIC bővítmény engedélyezésével.
  • Mintaalkalmazás üzembe helyezése az AKS-fürt bejövő forgalmához az AGIC használatával.
  • Ellenőrizze, hogy az alkalmazás elérhető-e az Application Gatewayen keresztül.

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

Előfeltételek

Erőforráscsoport létrehozása

Az Azure-ban hozzárendelhet kapcsolódó erőforrásokat egy erőforráscsoporthoz. Erőforráscsoport létrehozása az az group create használatával. Az alábbi példa létrehoz egy myResourceGroup nevű erőforráscsoportot az USA keleti régiójában:

az group create --name myResourceGroup --location eastus

AKS-fürt üzembe helyezése a bővítmény engedélyezésével

Most egy új AKS-fürtöt fog üzembe helyezni, amelyen engedélyezve van az AGIC bővítmény. Ha nem ad meg egy meglévő Application Gateway-példányt a folyamathoz, automatikusan létrehoz és beállít egy új Application Gateway-példányt az AKS-fürt felé irányuló forgalom kiszolgálásához.

Feljegyzés

Az Application Gateway bejövőforgalom-vezérlő bővítménye csak az Application Gateway v2 termékváltozatokat (Standard és WAF) támogatja, az Application Gateway v1 termékváltozatokat nem. Amikor új Application Gateway-példányt helyez üzembe az AGIC-bővítményen keresztül, csak egy Application Gateway-Standard_v2 termékváltozatot helyezhet üzembe. Ha engedélyezni szeretné a bővítményt egy Application Gateway WAF_v2 termékváltozathoz, használja az alábbi módszerek egyikét:

  • Engedélyezze a WAF-t az Application Gatewayen a portálon keresztül.
  • Először hozza létre az WAF_v2 Application Gateway-példányt, majd kövesse az AGIC-bővítmény meglévő AKS-fürttel és meglévő Application Gateway-példányokkal való engedélyezésére vonatkozó utasításokat.

Az alábbi példában egy myCluster nevű új AKS-fürtöt fog üzembe helyezni az Azure CNI és a felügyelt identitások használatával. Az AGIC-bővítmény engedélyezve lesz a létrehozott erőforráscsoportban, a myResourceGroup-ban.

Ha egy új AKS-fürtöt helyez üzembe az AGIC-bővítmény engedélyezésével egy meglévő Application Gateway-példány megadása nélkül, automatikusan létrehoz egy Standard_v2 SKU-alkalmazásátjáró-példányt. Meg kell adnia egy nevet és alhálózati címteret az új Application Gateway-példányhoz. A címtérnek az AKS virtuális hálózat által használt 10.224.0.0/12 előtagból kell származnia anélkül, hogy átfedésbe kerül az AKS-alhálózat által használt 10.224.0.0/16 előtaggal. Ebben az oktatóanyagban használja a myApplicationGatewayt az Application Gateway nevére, a 10.225.0.0/16-os alhálózati címtérre.

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

[MEGJEGYZÉS!] Győződjön meg arról, hogy az AGIC által használt identitás rendelkezik a Microsoft.Network/virtualNetworks/alhálózatok/csatlakozás/művelet engedélyekkel, amelyeket az alhálózati Application Gatewayre delegált. Ha egy egyéni szerepkör nincs meghatározva ezzel az engedéllyel, használhatja a beépített hálózati közreműködői szerepkört, amely a Microsoft.Network/virtualNetworks/alhálózatok/csatlakozás/művelet engedélyét tartalmazza.

# 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"

A fenti parancs további paramétereinek konfigurálásához tekintse meg az az aks create parancsot.

Feljegyzés

A létrehozott AKS-fürt megjelenik a létrehozott erőforráscsoportban, a myResourceGroupban. Az automatikusan létrehozott Application Gateway-példány azonban a csomópont erőforráscsoportjában lesz, ahol az ügynökkészletek találhatók. A csomópont erőforráscsoport neve alapértelmezés szerint MC_resource-group-name_cluster-name_location , de módosítható.

Mintaalkalmazás üzembe helyezése az AGIC használatával

Most egy mintaalkalmazást fog üzembe helyezni a létrehozott AKS-fürtben. Az alkalmazás az AGIC bővítményt használja a bejövő forgalomhoz, és csatlakoztatja az Application Gateway-példányt az AKS-fürthöz.

Először kérje le a hitelesítő adatokat az AKS-fürthöz a az aks get-credentials parancs futtatásával:

az aks get-credentials -n myCluster -g myResourceGroup

Most, hogy rendelkezik hitelesítő adatokkal, futtassa a következő parancsot egy mintaalkalmazás beállításához, amely AGIC-t használ a fürtbe való bemenő forgalomhoz. Az AGIC frissíti a korábban beállított Application Gateway-példányt a telepített mintaalkalmazáshoz tartozó útválasztási szabályokkal.

kubectl apply -f https://raw.githubusercontent.com/Azure/application-gateway-kubernetes-ingress/master/docs/examples/aspnetapp.yaml 

Ellenőrizze, hogy az alkalmazás elérhető-e

Most, hogy az Application Gateway-példány be van állítva az AKS-fürt felé irányuló forgalom kiszolgálására, ellenőrizzük, hogy az alkalmazás elérhető-e. Először kérje le a bejövő forgalom IP-címét:

kubectl get ingress

Ellenőrizze, hogy a létrehozott mintaalkalmazás a következővel fut-e:

  • Az előző parancs futtatásából kapott Application Gateway-példány IP-címének felkeresése.
  • A curl használata.

Az Application Gateway frissítése eltarthat egy percig. Ha az Application Gateway továbbra is frissítési állapotban van a portálon, hagyja befejezni, mielőtt megpróbálná elérni az IP-címet.

Az erőforrások eltávolítása

Ha már nincs rájuk szüksége, törölje az oktatóanyagban létrehozott összes erőforrást a myResourceGroup és MC_myResourceGroup_myCluster_eastus erőforráscsoportok törlésével:

az group delete --name myResourceGroup
az group delete --name MC_myResourceGroup_myCluster_eastus

Következő lépések

Az oktatóanyag során az alábbi lépéseket fogja végrehajtani:

  • Új AKS-fürt létrehozása az AGIC-bővítmény engedélyezésével
  • Mintaalkalmazás üzembe helyezése az AKS-fürt bejövő forgalmához az AGIC használatával

Az AGIC-ről további információt az Application Gateway bejövőforgalom-vezérlője és az AKS-fürt AGIC-bővítményének letiltása és újbóli engedélyezése című témakörben talál.

Ha szeretné megtudni, hogyan engedélyezheti az Application Gateway bejövőforgalom-vezérlő bővítményét egy meglévő AKS-fürthöz egy meglévő application gateway használatával, folytassa a következő oktatóanyaggal.