Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Om du har följt de tidigare självstudierna har du ett fungerande Kubernetes-kluster och Azure Store Front-app.
I den här självstudien skalar du ut poddarna i appen, provar automatisk skalning av poddar och skalar antalet virtuella Azure-noder för att ändra klustrets kapacitet för att hantera arbetsbelastningar. Du lär dig att:
- Skala Kubernetesnoderna.
- Skala Kubernetes-poddar manuellt som kör ditt program.
- Konfigurera poddar för automatisk skalning som kör appens frontend.
Innan du börjar
I tidigare självstudier paketerade du ett program i en containeravbildning, laddade upp avbildningen till Azure Container Registry, skapade ett AKS-kluster, distribuerade ett program och använde Azure Service Bus för att distribuera om ett uppdaterat program. Om du inte har slutfört de här stegen och vill följa med börjar du med Självstudie 1 – Förbereda programmet för AKS.
Den här handledningen kräver Azure CLI version 2.34.1 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera, se Installera Azure CLI.
Skala poddar manuellt
- Visa poddarna i klustret med hjälp av - kubectl getkommandot .- kubectl get pods- Följande exempelutdata visar poddarna som kör Azure Store Front-appen: - 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
- Ändra antalet poddar manuellt i driftsättningen av butiksfronten med hjälp av - kubectl scalekommandot.- kubectl scale --replicas=5 deployment.apps/store-front
- Kontrollera att ytterligare poddar har skapats med kommandot - kubectl get pods.- kubectl get pods --selector app=store-front- Följande exempelutdata visar de ytterligare poddar som kör Azure Store Front-appen: - NAME READY STATUS RESTARTS AGE 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
Autoskalning av poddar
Om du vill använda den horisontella autoskalaren för poddar måste alla containrar ha definierade CPU-förfrågningar och gränser, och poddar måste ha angivna förfrågningar. I distributionen aks-store-quickstart begär klientdelscontainern 1 milliCPU med en gräns på 1000 milliCPU.
Dessa resursbegäranden och begränsningar definieras för varje container, enligt följande komprimerade exempel YAML:
...
  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
...
Autoskalning av poddar med hjälp av en manifestfil
- Skapa en manifestfil för att definiera autoskalningsbeteendet och resursbegränsningarna, enligt följande komprimerade exempelmanifestfil - aks-store-quickstart-hpa.yaml:- 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
- Använd autoskalningsmanifestfilen med kommandot - kubectl apply.- kubectl apply -f aks-store-quickstart-hpa.yaml
- Kontrollera statusen för autoskalningen med hjälp av - kubectl get hpakommandot .- kubectl get hpa- Efter några minuter, när Azure Store Front-appen har minimal belastning, minskar antalet pod-repliker till tre. Du kan använda kommandot - kubectl get podsigen för att se de onödiga poddar som tas bort.
Note
Du kan aktivera AKS-tillägget Kubernetes-baserad Event-Driven Autoscaler (KEDA) till klustret för att driva skalning baserat på antalet händelser som behöver bearbetas. Mer information finns i Aktivera förenklad automatisk skalning av program med tillägget Kubernetes Event-Driven Autoscaling (KEDA) (förhandsversion).
Skala AKS-noder manuellt
Om du skapade Kubernetes-klustret med hjälp av kommandona i föregående handledningar har klustret två noder. Om du vill öka eller minska den här mängden kan du justera antalet noder manuellt.
I följande exempel ökar antalet noder till tre i Kubernetes-klustret med namnet myAKSCluster. Det tar några minuter att slutföra kommandot.
- Skala dina klusternoder med kommandot - az aks scale.- az aks scale --resource-group myResourceGroup --name myAKSCluster --node-count 3- När klustret har skalats kommer dina utdata att likna följande exempelutdata: - "aadProfile": null, "addonProfiles": null, "agentPoolProfiles": [ { ... "count": 3, "mode": "System", "name": "nodepool1", "osDiskSizeGb": 128, "osDiskType": "Managed", "osType": "Linux", "ports": null, "vmSize": "Standard_DS2_v2", "vnetSubnetId": null ... } ... ]
Du kan också autoskala noderna i klustret. Mer information finns i Använda autoskalning av kluster med nodpooler.
Nästa steg
I den här självstudien använde du olika skalningsfunktioner i ditt Kubernetes-kluster. Du har lärt dig att:
- Skala Kubernetes-poddar manuellt som kör ditt program.
- Konfigurera pods för automatisk skalning som kör appens frontend.
- Skala Kubernetes-noderna manuellt.
I nästa handledning kommer du att lära dig hur du uppgraderar Kubernetes i ditt AKS-kluster.
Azure Kubernetes Service