Upgrades Are a Feature: Designing AKS Clusters That Survive Day 2
A cluster that can't be upgraded calmly isn't finished. It's a liability with a countdown. Treat upgradability as a design goal and the scariest part of running AKS becomes routine.
A cluster that can't be upgraded calmly isn't finished. It's a liability with a countdown. Treat upgradability as a design goal and the scariest part of running AKS becomes routine.
Every AKS cluster has a clock on it. Kubernetes ships a new minor version every few months, Azure supports a rolling window of recent versions, and the moment you fall off the back of that window you're running unsupported infrastructure underneath your production traffic. The clock doesn't care that you're busy.
So the real question isn't whether you upgrade. It's whether upgrading is a Tuesday or a trauma. That outcome is decided long before the upgrade starts, in how the cluster was designed.
An AKS upgrade isn't a magic in-place swap. To upgrade a node pool, AKS brings up a surge node on the new version, cordons and drains an old node, evicting its pods so they reschedule elsewhere, then deletes the old node and repeats. The control-plane upgrade is Azure's problem. The node upgrade is a controlled, rolling eviction of your workloads, and your workloads get a vote on how that goes.
If your pods can be evicted and rescheduled without anyone noticing, the upgrade is a non-event. If they can't, the upgrade is an outage you scheduled yourself.
An upgrade is just your disaster-recovery design being tested on a calendar instead of by surprise. Most "upgrade outages" are really resilience bugs that were always there.
Everything that makes a rolling upgrade safe also makes a random node failure safe, which is the point.
The teams who dread AKS upgrades are usually running clusters that were never designed to lose a node gracefully, and an upgrade is just losing nodes, on purpose, in sequence. Build for the drain and you get two things for the price of one: upgrades that feel like maintenance, and a cluster that survives the node failures you didn't schedule. Upgradability isn't overhead. It's resilience you can see.
Want this distilled for your role? Ask the assistant for the key takeaways or related reading.
Cross-posted? Set a canonicalUrl in the article frontmatter. (none set: this is the canonical home.)
Sathpal-OS