One Big Cluster or Many: The AKS Tenancy Decision
Consolidate into one cluster and you fight noisy neighbors and blast radius. Split into many and you drown in upgrade toil. The right answer isn't a number. It's an isolation boundary you can defend.
Consolidate into one cluster and you fight noisy neighbors and blast radius. Split into many and you drown in upgrade toil. The right answer isn't a number. It's an isolation boundary you can defend.
Every platform team eventually holds the same meeting. One camp wants a single big cluster: efficient, one thing to upgrade, easy to reason about. The other wants a cluster per team or per service: clean blast radius, no noisy neighbors, real isolation. Both sides are right, which is why the meeting never ends.
The argument is unwinnable because "how many clusters" is the wrong question. The right one is: what's the smallest boundary you're willing to let a failure or a breach cross?
Soft isolation lives inside one cluster: namespaces, RBAC, network policies, resource quotas. It's cheap, dense, and one upgrade covers everyone. But the isolation is only as strong as your configuration, and some things are simply shared: the control plane, the node OS, the CNI, a cluster-wide CRD a careless controller can wedge.
Hard isolation is separate clusters. The boundary is real. A compromised or broken cluster can't touch its siblings, and each can run its own version, node strategy, and blast radius. The cost is multiplication: every cluster is another thing to upgrade, monitor, secure, and pay a baseline for. Ten clusters is roughly ten times the day-2 surface.
Namespaces separate workloads that trust each other. Clusters separate workloads that don't. Decide which sentence describes your tenants.
Don't split on instinct. Split when a real boundary demands it:
If none of these apply, you're usually paying the multi-cluster tax for a boundary you didn't need.
Not one cluster, not one-per-team. A tiered model:
This keeps day-2 toil bounded while giving you real isolation exactly where it's required, and nowhere it isn't.
The teams who consolidated into one cluster and got burned, and the teams who sprawled into forty clusters and drowned, made the same mistake: they picked a number instead of a boundary. Start from what must never share fate, draw your hard lines there, and let namespaces handle everything else. The cluster count falls out of the boundary, not the other way around.
Want this distilled for your role? Ask the assistant for the key takeaways or related reading.
Keep reading
AKS hides the control plane so well that teams forget it exists, until an upgrade, an outage, or a bill reminds them. Here's the mental model that makes the managed boundary obvious.
Most AKS clusters run every workload on one undifferentiated pool of VMs and call it simple. It isn't simple. It's expensive, fragile, and one bad neighbor away from an outage. Node pools are where workload intent becomes infrastructure.
Cross-posted? Set a canonicalUrl in the article frontmatter. (none set: this is the canonical home.)
Sathpal-OS