Upgrade¶
Use this checklist when an AKS control-plane or node-pool upgrade might still be progressing, or might have stalled after it started.
Main Content¶
flowchart TD
A[Upgrade symptom] --> B[Check cluster provisioning state]
B --> C[Check node versions and surge progress]
C --> D[Check recent events and add-on readiness]
D --> E[Escalate to upgrade-failure playbook if stalled] - Confirm whether the cluster is actively upgrading or already back in
Succeededwith broken workloads. - Compare control-plane version, node versions, and node count for partial completion.
- Look for stalled drains, add-on failures, or persistent unschedulable workloads.
- Route to the upgrade playbook only after you know whether the upgrade is still moving.
az aks show --resource-group "$RG" --name "$CLUSTER_NAME" --query "{provisioningState:provisioningState,kubernetesVersion:currentKubernetesVersion,powerState:powerState.code}" --output yaml
az aks nodepool list --resource-group "$RG" --cluster-name "$CLUSTER_NAME" --output table
kubectl get nodes
kubectl get pods --all-namespaces
kubectl get events --all-namespaces --sort-by=.lastTimestamp
| Command | Purpose |
|---|---|
az aks show | Show provisioning state, version, and power state. |
--resource-group | Resource group that contains the AKS cluster. |
--name | Name of the AKS cluster. |
--query | Selects provisioning state, version, and power state. |
--output | Output format for the result. |
az aks nodepool list | List the node pools in the cluster. |
--resource-group | Resource group that contains the AKS cluster. |
--cluster-name | Name of the AKS cluster. |
--output | Output format for the result. |
kubectl get nodes | List cluster nodes. |
kubectl get pods | List pods across namespaces. |
kubectl get events | List Kubernetes events for troubleshooting. |