Managed Kubernetes with direct access to the Kubernetes API and control plane.
Choose AKS when you need full Kubernetes — direct access to the Kubernetes API, custom controllers and operators, a service mesh, or specific networking plugins — and your team has the expertise to operate a cluster. It suits complex microservices platforms and workloads that depend on the broader Kubernetes ecosystem.
Avoid AKS if you want containers without managing Kubernetes. Container Apps runs containers with scaling and revisions but hides the cluster; Container Instances runs single containers with no orchestration. Both remove the upgrade, security, and node-management overhead that AKS requires.
| Hosting model | Managed Kubernetes |
|---|---|
| Container support | Container-only |
| Minimum nodes | 6 recommended for production (3 system + 3 per user pool) |
| State management | Stateless or stateful |
| Web hosting | Agnostic |
| Autoscaling | Pod autoscaling and cluster autoscaling |
| Load balancer | Azure Load Balancer or Application Gateway |
| Scale limit | 5,000 nodes (Standard or Premium tier) |
| Multiregion | Single region only — external router plus multiple clusters |
| Virtual network integration | Supported |
| Hybrid connectivity | Supported |
| GPU support | Supported |
| TLS | Ingress controller |
| Architecture styles | Microservices, event-driven architecture |
| Required skills | Kubernetes administration, container orchestration |
| Operational overhead | High — cluster management, upgrades, security |
| Best for teams | DevOps teams with Kubernetes expertise |
A production cluster typically uses at least six nodes — three in a system node pool and three in a user node pool — to separate platform components from application workloads and tolerate node failures.
Yes. AKS supports Windows Server node pools alongside Linux node pools, so you can run Windows and Linux containers in the same cluster.
AKS exposes the full Kubernetes API and control plane, which you operate yourself. Container Apps is built on Kubernetes but hides it, giving serverless scaling without cluster management — at the cost of direct API access.
This is one candidate from the Azure compute decision guide. The right choice depends on your full requirements — evaluate scaling, cost, and operational fit before committing.
Browse all tools →