Gyakorlat – Fürt méretezhetőségének engedélyezése az AKS-ben
A fürt automatikus skálázásának engedélyezése AKS-fürtön
Nyissa meg az Azure Cloud Shellt a böngészőben, és válassza a Bash lehetőséget.
Hozzon létre egy Azure-erőforráscsoportot a
az group create
paranccsal.az group create --name myResourceGroup --location eastus
Hozzon létre egy új AKS-fürtöt, amelyen engedélyezve van a fürt automatikus skálázása a parancs és a
az aks create
--enable-cluster-autoscaler
jelző használatával.az aks create --resource-group myResourceGroup --name myAKSCluster --enable-addons monitoring --enable-msi-auth-for-monitoring --enable-cluster-autoscaler --min-count 1 --max-count 10 --generate-ssh-keys
A fürt létrehozása néhány percet vesz igénybe.
Csatlakozás a fürthöz a
az aks get-credentials
parancs használatával.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
A parancs használatával
kubectl get nodes
megtekintheti a fürt csomópontjait.kubectl get nodes
A kimenetnek a következő példakimenethez hasonlóan kell kinéznie:
NAME STATUS ROLES AGE VERSION aks-nodepool1-12345678-vmss000000 Ready agent 1m v1.26.6 aks-nodepool1-12345678-vmss000001 Ready agent 1m v1.26.6 aks-nodepool1-12345678-vmss000002 Ready agent 1m v1.26.6
A mintaalkalmazás üzembe helyezése
A Cloud Shellben hozzon létre egy jegyzékfájlt a Kubernetes deployment,deployment.yml parancs használatával
touch
.touch deployment.yml
Nyissa meg a jegyzékfájlt a
code
paranccsal.code deployment.yml
Illessze be a következő kódot a jegyzékfájlba.
apiVersion: apps/v1 kind: Deployment metadata: name: contoso-website spec: replicas: 35 selector: matchLabels: app: contoso-website template: metadata: labels: app: contoso-website spec: containers: - image: mcr.microsoft.com/mslearn/samples/contoso-website name: contoso-website resources: requests: cpu: 100m memory: 128Mi limits: cpu: 250m memory: 256Mi ports: - containerPort: 80 name: http
Mentse a fájlt, majd zárja be a szerkesztőt.
A fürt automatikus skálázási profiljának frissítése
Az automatikus skálázási profilok finomhangolhatók úgy, hogy a konfigurációban több jelölőt is beállítanak. Tekintse meg az elérhető jelzők listáját a Fürt automatikus skálázási profiljának használata lapon. Ebben a példában frissítenie kell az automatikus skálázót, hogy csökkentse a lekérdezési időt a függőben lévő podok ellenőrzéséhez, és csökkentse azt az időtartamot, amíg várnia kell, mielőtt leskáláz egy korábbi állapotról.
Frissítse a fürt automatikus skálázási profilját a
az aks update
jelölővel ellátott--cluster-autoscaler-profile
paranccsal.az aks update --resource-group myResourceGroup --name myAKSCluster --cluster-autoscaler-profile scan-interval=5s scale-down-unready-time=5m scale-down-delay-after-add=5m
Skálázza le az üzembe helyezést a
kubectl scale deployment
paranccsal.kubectl scale deployment contoso-website --replicas 5
Ellenőrizze a fürt automatikus skálázási naplóit és a fürt automatikus skálázási állapotának konfigurációs leképezését a
kubectl describe cm
paranccsal.kubectl describe cm cluster-autoscaler-status -n kube-system
A leskálázás előtt a kimenetnek az alábbi példakimenethez hasonlóan kell kinéznie:
Cluster-autoscaler status at 2023-11-09 20:08:14.892961701 +0000 UTC: Cluster-wide: Health: Healthy (ready=3 unready=0 notStarted=0 longNotStarted=0 registered=3 longUnregistered=0) LastProbeTime: 2023-11-09 19:56:57.890988498 +0000 UTC m=+1673.465985892 LastTransitionTime: 2023-11-09 19:45:09.593593337 +0000 UTC m=+774.168590731 ScaleUp: NoActivity (ready=3 registered=3) LastProbeTime: 2023-11-09 19:56:57.890988498 +0000 UTC m=+1673.465985892 LastTransitionTime: 2023-11-09 19:45:09.593593337 +0000 UTC m=+774.168590731 ScaleDown: CandidatesPresent (candidates=3) LastProbeTime: 2023-11-09 19:56:57.890988498 +0000 UTC m=+1673.465985892 LastTransitionTime: 2023-11-09 19:56:52.440038763 +0000 UTC m=+1101.015036157
Várjon körülbelül öt percet, amíg az automatikus skálázó befejezi a skálázást, majd futtassa újra az előzőt
kubectl describe cm
.A leskálázás után a kimenetnek a következő példakimenethez hasonlóan kell kinéznie:
Cluster-autoscaler status at 2023-11-09 20:14:39.123206413 +0000 UTC: Cluster-wide: Health: Healthy (ready=1 unready=0 (resourceUnready=0) notStarted=0 longNotStarted=0 registered=1 longUnregistered=0) LastProbeTime: 2023-11-09 20:14:39.113206413 +0000 UTC m=+2150.697175601 LastTransitionTime: 2023-11-09 19:45:09.593593337 +0000 UTC m=+774.168590731 ScaleUp: NoActivity (ready=1 registered=1) LastProbeTime: 2023-11-09 20:14:39.113206413 +0000 UTC m=+2150.697175601 LastTransitionTime: 2023-11-09 19:45:09.593593337 +0000 UTC m=+774.168590731 ScaleDown: NoCandidates (candidates=0) LastProbeTime: 2023-11-09 20:14:39.113206413 +0000 UTC m=+2150.697175601 LastTransitionTime: 2023-11-09 20:07:08.79828656 +0000 UTC m=+1718.924760896
A parancs használatával
kubectl get nodes
megtekintheti a fürt csomópontjait.kubectl get nodes
A kimenetnek a következő példakimenethez hasonlóan kell kinéznie, és a csomópontok száma egyre csökken:
NAME STATUS ROLES AGE VERSION aks-nodepool1-12345678-vmss000000 Ready agent 37m v1.26.6