Skip to content

Commit 76a0469

Browse files
Merge pull request #54497 from MicrosoftDocs/main
Auto Publish – main to live - 2026-04-30 17:00 UTC
2 parents 2c5b2ec + 35a487a commit 76a0469

59 files changed

Lines changed: 1276 additions & 140 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/1-introduction.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: Introduction
44
metadata:
55
title: Introduction
66
description: "Introduction"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/2-scaling-options-azure-kubernetes-services.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
### YamlMime:ModuleUnit
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.scaling-options-azure-kubernetes-services
3-
title: Scaling options in Azure Kubernetes Services
3+
title: Scaling options in Azure Kubernetes Service
44
metadata:
5-
title: Scaling options in Azure Kubernetes Services
6-
description: "Scaling options in Azure Kubernetes Services"
7-
ms.date: 10/25/2023
5+
title: Scaling Options in Azure Kubernetes Service
6+
description: "Scaling options in Azure Kubernetes Service"
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/3-cluster-autoscaler.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.cluster-autoscaler
33
title: Cluster autoscaler
44
metadata:
5-
title: Cluster autoscaler
5+
title: Cluster Autoscaler
66
description: "Cluster autoscaler"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/4-burst-azure-container-instances.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: Burst to Azure Container Instances
44
metadata:
55
title: Burst to Azure Container Instances
66
description: "Burst to Azure Container Instances"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/5-about-cluster-autoscaler.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
### YamlMime:ModuleUnit
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.about-cluster-autoscaler
3-
title: When to use cluster autoscaler
3+
title: When to use the cluster autoscaler
44
metadata:
5-
title: When to use cluster autoscaler
6-
description: "When to use cluster autoscaler"
7-
ms.date: 10/25/2023
5+
title: When to Use the Cluster Autoscaler
6+
description: "When to use the cluster autoscaler"
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/6-autoscaler-node-pool.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
### YamlMime:ModuleUnit
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.autoscaler-node-pool
3-
title: Try-This exercise - Scale the node count in an Azure Kubernetes Service cluster
3+
title: Try-this exercise - Scale the node count in an Azure Kubernetes Service cluster
44
metadata:
5-
title: Try-This exercise - Scale the node count in an Azure Kubernetes Service cluster
5+
title: Try-This Exercise - Scale the Node Count in an Azure Kubernetes Service Cluster
66
description: "Try-This exercise - Scale the node count in an Azure Kubernetes Service cluster"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/7-automatically-scale-cluster-azure-kubernetes-service.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.automatically-scale-cluster-azure-kubernetes-service
33
title: Automatically scale a cluster on Azure Kubernetes Service
44
metadata:
5-
title: Automatically scale a cluster on Azure Kubernetes Service
5+
title: Automatically Scale a Cluster on Azure Kubernetes Service
66
description: "Automatically scale a cluster on Azure Kubernetes Service"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit
11-
durationInMinutes: 6
11+
durationInMinutes: 7
1212
content: |
1313
[!include[](includes/7-automatically-scale-cluster-azure-kubernetes-service.md)]

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/8-knowledge-check.yml

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,49 +2,60 @@
22
uid: learn.wwl.configure-scaling-azure-kubernetes-service.knowledge-check
33
title: Module assessment
44
metadata:
5-
title: Module assessment
5+
title: Module Assessment
66
description: "Knowledge check"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit
1111
module_assessment: true
12-
durationInMinutes: 7
12+
durationInMinutes: 9
1313
content: |
1414
[!include[](includes/8-knowledge-check.md)]
1515
quiz:
1616
title: "Check your knowledge"
1717
questions:
18-
- content: "What is the purpose of the Horizontal Pod Autoscaler in Azure Kubernetes Service?"
18+
- content: "What is the purpose of the horizontal pod autoscaler (HPA) in Azure Kubernetes Service?"
1919
choices:
20-
- content: "To provision a larger number of application instances"
20+
- content: "To add VM-backed nodes to the cluster when pods can't be scheduled"
2121
isCorrect: false
22-
explanation: "Incorrect. Provisioning a larger number of application instances is a separate concept from the purpose of the Horizontal Pod Autoscaler."
23-
- content: "To manually scale replicas or nodes based on a fixed cost"
22+
explanation: "Incorrect. Adding nodes is the role of the cluster autoscaler. The HPA changes the number of pod replicas for a workload; it doesn't expand node pools."
23+
- content: "To manually set replica or node counts to a fixed value"
2424
isCorrect: false
25-
explanation: "Incorrect. This describes manually scaling resources, not the purpose of the Horizontal Pod Autoscaler."
26-
- content: "To monitor resource demand and automatically scale the number of pods based on defined metrics such as CPU usage"
25+
explanation: "Incorrect. Manual scaling sets a chosen replica or node count directly. The HPA is automatic horizontal scaling that adjusts pod replicas based on metrics."
26+
- content: "To monitor workload metrics and automatically adjust the number of pod replicas"
2727
isCorrect: true
28-
explanation: "Correct. The Horizontal Pod Autoscaler monitors resource demand and automatically scales the number of pods based on defined metrics such as CPU usage, allowing for efficient use of resources."
28+
explanation: "Correct. The HPA increases or decreases pod replicas based on metrics such as CPU, memory, custom, or external metrics. For CPU or memory metrics, containers need resource requests so Kubernetes can calculate utilization."
2929
- content: "What is the purpose of the Kubernetes cluster autoscaler?"
3030
choices:
3131
- content: "To monitor the status of the Kubernetes API server"
3232
isCorrect: false
33-
explanation: "Incorrect. The cluster autoscaler monitors the Metrics API server, not the Kubernetes API server."
33+
explanation: "Incorrect. API server health is a monitoring and platform operations concern. The cluster autoscaler focuses on node pool capacity for scheduling workloads."
3434
- content: "To adjust the number of pods based on application demand"
3535
isCorrect: false
36-
explanation: "Incorrect. This is the purpose of the horizontal pod autoscaler."
37-
- content: "To adjust the number of nodes based on the requested compute resources in the node pool"
36+
explanation: "Incorrect. The horizontal pod autoscaler (HPA) adjusts pod replicas based on workload metrics. The cluster autoscaler changes node count when scheduling needs require more or fewer nodes."
37+
- content: "To adjust the number of nodes when pods can't be scheduled because their resource requests don't fit on existing nodes"
3838
isCorrect: true
39-
explanation: "Correct. The cluster autoscaler adjusts the number of nodes in the AKS cluster based on the requested compute resources in the node pool to ensure that there are enough resources to run the pods."
40-
- content: "What is the purpose of the cluster autoscaler component in AKS?"
39+
explanation: "Correct. The cluster autoscaler reacts to unschedulable pending pods when adding a node could make them schedulable. It adds nodes within node pool limits and can remove underutilized nodes when capacity is no longer needed."
40+
- content: "Your AKS application periodically experiences large traffic spikes that need additional pod capacity within seconds. The cluster autoscaler can take a few minutes to add new VM-backed nodes. Which AKS feature is designed for this rapid burst scenario?"
4141
choices:
42-
- content: "To manually enable or edit settings for scale set autoscale in the Azure portal or using the Azure CLI."
42+
- content: "Manually scaling the existing node pool to a higher fixed node count before the spike."
4343
isCorrect: false
44-
explanation: "Incorrect. This is not the purpose of the cluster autoscaler component in AKS."
45-
- content: "To create a resource group using the az group create command."
44+
explanation: "Incorrect. Manual scaling requires advance knowledge of the spike and keeps extra VM-backed nodes running between spikes, which adds cost and isn't reactive."
45+
- content: "Increasing the cluster autoscaler `max-count` for the node pool."
4646
isCorrect: false
47-
explanation: "Incorrect. This is not the purpose of the cluster autoscaler component in AKS."
48-
- content: "Enables the automation and validation of the creation and teardown of environments to help deliver secure and stable application hosting platforms."
47+
explanation: "Incorrect. Raising `max-count` only changes the upper bound. The cluster autoscaler still needs time to provision new VM-backed nodes, so it doesn't address the per-second responsiveness the scenario requires."
48+
- content: "Enabling virtual nodes so AKS can schedule burst pods on Azure Container Instances (ACI)."
4949
isCorrect: true
50-
explanation: "Correct. The cluster autoscaler component can watch for pods in your cluster that can't be scheduled because of resource constraints. When issues are detected, the number of nodes in a node pool increases to meet the application demand. Nodes are also regularly checked for a lack of running pods, with the number of nodes then decreased as needed. This ability to automatically scale up or down the number of nodes in your AKS cluster lets you run an efficient, cost effective cluster."
50+
explanation: "Correct. Virtual nodes use the Virtual Kubelet to present ACI as a Kubernetes node, letting AKS schedule burst pods on ACI in seconds without waiting for the cluster autoscaler to add new VM-backed nodes."
51+
- content: "You want to run exactly five replicas of a Deployment for a controlled test and set an AKS node pool to three nodes without automatic scaling. Which approach uses manual scaling correctly?"
52+
choices:
53+
- content: "Configure the horizontal pod autoscaler and cluster autoscaler with matching minimum and maximum values."
54+
isCorrect: false
55+
explanation: "Incorrect. HPA and the cluster autoscaler are automatic scaling features. Manual scaling sets a fixed replica or node count directly."
56+
- content: "Use `kubectl scale deployment <name> --replicas=5` for the workload and `az aks nodepool scale --node-count 3` for the node pool."
57+
isCorrect: true
58+
explanation: "Correct. `kubectl scale` changes the desired replica count for a workload, and `az aks nodepool scale` sets a fixed node count for an AKS node pool."
59+
- content: "Delete Kubernetes nodes with `kubectl delete node` until three nodes remain."
60+
isCorrect: false
61+
explanation: "Incorrect. AKS node counts should be changed through AKS scaling operations such as `az aks nodepool scale` or `az aks scale`. Removing AKS nodes directly with `kubectl` isn't supported."

learn-pr/wwl-azure/configure-scaling-azure-kubernetes-service/9-summary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: Summary
44
metadata:
55
title: Summary
66
description: "Summary"
7-
ms.date: 10/25/2023
7+
ms.date: 04/20/2026
88
author: Orin-Thomas
99
ms.author: orthomas
1010
ms.topic: unit
Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
1-
This module covers the scaling applications in Azure Kubernetes Service (AKS), including manually scaling pods or nodes and integrating with Azure Container Instances (ACI).
1+
This module covers how to scale applications in Azure Kubernetes Service (AKS). You learn when to scale workload replicas, when to scale AKS node pools, and how to use Azure Container Instances (ACI) for burst capacity. You also see where event-driven autoscaling and node auto-provisioning fit for scenarios beyond the core exercises.
22

33
## Scenario
44

5-
Imagine you're a software developer working for a company that has recently migrated its applications to AKS. Your team is responsible for ensuring that the applications can handle varying levels of traffic and usage. You need to understand how to scale the applications to meet demand and optimize resource usage. This module helps you learn the different scaling options available in AKS and how to use them effectively.
5+
Imagine you're a platform engineer for a retail company that runs its checkout service on AKS. During weekday lunchtimes and seasonal promotions, traffic to the checkout service can grow tenfold within minutes, while traffic at night drops to a small fraction of peak. Today, your team responds to spikes by leaving extra VM-backed nodes running around the clock, which inflates the cluster bill. During larger promotions, pods still spend several minutes in `Pending` while new VM-backed nodes provision, which puts checkout SLAs at risk.
6+
7+
Your goal is to use AKS scaling features so the cluster matches demand at each layer: the right number of pod replicas for the current load, the right number of nodes to host those replicas, and a fast path for short-lived bursts that can't wait for new VM-backed nodes. This module helps you compare the available AKS scaling options and choose the right one for each scenario.
68

79
## Learning objectives
810

911
After completing this module, you'll be able to:
1012

11-
- Manually scaling pods or nodes
12-
- Using the Horizontal pod autoscaler
13-
- Using the Cluster autoscaler
14-
- Integrating with Azure Container Instances (ACI)
15-
16-
## Goals
17-
18-
The goal of this module is to teach you how to scale your AKS applications to meet changing demands and optimize resource usage.
13+
- Manually scale workload replicas and AKS node pools
14+
- Use the horizontal pod autoscaler (HPA) to scale workload replicas
15+
- Use the cluster autoscaler to scale AKS node pools
16+
- Use virtual nodes to run burst workloads in Azure Container Instances (ACI)

0 commit comments

Comments
 (0)