Oktatóanyag – Alkalmazások méretezése az Azure Kubernetes Service-ben (AKS)
Ha követte az előző oktatóanyagokat, egy működő Kubernetes-fürt és az Azure Store Front alkalmazással rendelkezik.
Ebben az oktatóanyagban a hetedik rész 6. részében horizontálisan felskálázhatja a podokat az alkalmazásban, kipróbálhatja a podok automatikus skálázását, és skálázhatja az Azure-beli virtuálisgép-csomópontok számát a fürt számítási feladatok üzemeltetéséhez szükséges kapacitásának módosításához. Az alábbiak végrehajtásának módját ismerheti meg:
- Skálázza a Kubernetes-csomópontokat.
- Az alkalmazást futtató Kubernetes-podok manuális méretezése.
- Az alkalmazás előtérrendszerét futtató automatikus skálázási podok konfigurálása.
Mielőtt elkezdené
A korábbi oktatóanyagokban egy alkalmazást egy tárolórendszerképbe csomagolt, feltöltötte a lemezképet az Azure Container Registrybe, létrehozott egy AKS-fürtöt, üzembe helyezett egy alkalmazást, és az Azure Service Bus használatával újra üzembe helyezett egy frissített alkalmazást. Ha még nem végezte el ezeket a lépéseket, és követni szeretné a lépéseket, kezdje az 1. oktatóanyaggal – Alkalmazás előkészítése az AKS-hez.
Ehhez az oktatóanyaghoz az Azure CLI 2.34.1-es vagy újabb verziója szükséges. A verzió azonosításához futtassa a következőt: az --version
. Ha telepíteni vagy frissíteni szeretne: Az Azure CLI telepítése.
Podok manuális méretezése
A parancs használatával
kubectl get
megtekintheti a fürt podjait.kubectl get pods
Az alábbi példakimenet az Azure Store Front alkalmazást futtató podokat mutatja be:
NAME READY STATUS RESTARTS AGE order-service-848767080-tf34m 1/1 Running 0 31m product-service-4019737227-2q2qz 1/1 Running 0 31m store-front-2606967446-2q2qz 1/1 Running 0 31m
Manuálisan módosítsa a podok számát az áruház-előtér üzembe helyezésében a
kubectl scale
paranccsal.kubectl scale --replicas=5 deployment.apps/store-front
Ellenőrizze, hogy a további podok létre lettek-e hozva a
kubectl get pods
paranccsal.kubectl get pods
Az alábbi példakimenet az Azure Store Front alkalmazást futtató további podokat mutatja be:
READY STATUS RESTARTS AGE store-front-2606967446-2q2qzc 1/1 Running 0 15m store-front-3309479140-2hfh0 1/1 Running 0 3m store-front-3309479140-bzt05 1/1 Running 0 3m store-front-3309479140-fvcvm 1/1 Running 0 3m store-front-3309479140-hrbf2 1/1 Running 0 15m store-front-3309479140-qphz8 1/1 Running 0 3m
Podok automatikus méretezése
A podok automatikus horizontális skálázásának használatához minden tárolónak meghatározott CPU-kérésekkel és korlátozásokkal kell rendelkeznie, a podoknak pedig meghatározott kérésekkel kell rendelkezniük. Az üzembe helyezés során az aks-store-quickstart
előtérbeli tároló 1m CPU-t kér 1000 m-nyi cpu-korláttal.
Ezeket az erőforrás-kérelmeket és korlátokat minden tárolóhoz definiáljuk, ahogy az a következő, a YAML-hez tartozó tömörített példában is látható:
...
containers:
- name: store-front
image: ghcr.io/azure-samples/aks-store-demo/store-front:latest
ports:
- containerPort: 8080
name: store-front
...
resources:
requests:
cpu: 1m
...
limits:
cpu: 1000m
...
Podok automatikus méretezése jegyzékfájl használatával
Hozzon létre egy jegyzékfájlt az automatikus skálázási viselkedés és az erőforráskorlátok meghatározásához, ahogyan az a következő tömörített példajegyzékfájlban
aks-store-quickstart-hpa.yaml
látható:apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: store-front-hpa spec: maxReplicas: 10 # define max replica count minReplicas: 3 # define min replica count scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: store-front metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 50
Alkalmazza az automatikus méretezési jegyzékfájlt a
kubectl apply
paranccsal.kubectl apply -f aks-store-quickstart-hpa.yaml
Ellenőrizze az automatikus skálázó állapotát a
kubectl get hpa
paranccsal.kubectl get hpa
Néhány perc elteltével, az Azure Store Front alkalmazás minimális terhelésével a podreplikák száma háromra csökken. Ismét használhatja a
kubectl get pods
parancsot a szükségtelen podok eltávolításának megtekintéséhez.
Feljegyzés
Engedélyezheti a Kubernetes-alapú eseményvezérelt automatikus skálázási (KEDA) AKS-bővítményt a fürthöz, hogy a feldolgozandó események száma alapján skálázhassa a skálázást. További információ: Egyszerűsített alkalmazások automatikus skálázásának engedélyezése a Kubernetes eseményvezérelt automatikus skálázási (KEDA) bővítményével (előzetes verzió)
AKS-csomópontok manuális méretezése
Ha az előző oktatóanyagokban szereplő parancsokkal hozta létre a Kubernetes-fürtöt, a fürt két csomóponttal rendelkezik. Ha növelni vagy csökkenteni szeretné ezt az összeget, manuálisan módosíthatja a csomópontok számát.
A következő példában háromra növeljük a csomópontok számát a myAKSCluster nevű Kubernetes-fürtben. A parancs végrehajtása eltarthat néhány percig.
A fürtcsomópontok skálázása a
az aks scale
paranccsal.az aks scale --resource-group myResourceGroup --name myAKSCluster --node-count 3
A fürt sikeres skálázása után a kimenet a következő példakimenethez hasonló lesz:
"agentPoolProfiles": [ { "count": 3, "dnsPrefix": null, "fqdn": null, "name": "myAKSCluster", "osDiskSizeGb": null, "osType": "Linux", "ports": null, "vmSize": "Standard_D2_v2", "vnetSubnetId": null }
A fürt csomópontjait automatikusan skálázhatja is. További információ: A fürt automatikus skálázási eszközének használata csomópontkészletekkel.
Következő lépések
Ebben az oktatóanyagban különböző méretezési funkciókat használtunk a Kubernetes-fürtben. Megtanulta végrehajtani az alábbi műveleteket:
- Az alkalmazást futtató Kubernetes-podok manuális méretezése.
- Az alkalmazás előtérrendszerét futtató automatikus skálázási podok konfigurálása.
- A Kubernetes-csomópontok manuális méretezése.
A következő oktatóanyagban megtudhatja, hogyan frissítheti a Kubernetes-t az AKS-fürtön.