Cloud Parts

Azure Kubernetes Service

Microsoft’s managed Kubernetes: a control plane that can be free, node pools of Azure VMs, and an Automatic mode that runs the nodes too.

Type
Managed service on Azure
Made by
Microsoft
License
Proprietary
Facts checked
6 October 2026

What it is

When you create an Azure Kubernetes Service (AKS) cluster, Azure creates and runs the control plane for you, and in a region with availability zones it spreads it over several zones by default. Your applications run on worker nodes grouped into node pools, usually backed by Virtual Machine Scale Sets in a separate node resource group in your subscription. Every cluster has a system node pool for critical Pods such as CoreDNS; you add user node pools for applications with different VM sizes, operating systems (Ubuntu by default, Azure Linux or Windows Server) or GPUs, and scale each pool by hand, with the cluster autoscaler, or with node autoprovisioning, which runs Karpenter for you. For untrusted code, Pod Sandboxing uses Kata Containers on Azure Linux nodes to run each Pod in a lightweight VM with its own guest kernel.

What you pay for the control plane depends on the tier. The Free tier charges nothing for it but has no SLA and is meant for clusters under about 10 nodes. The Standard tier adds a financially backed API server SLA and room for 5,000 nodes. The Premium tier adds Long Term Support, which keeps a Kubernetes version patched for two years in total, a year beyond the community support window. AKS Automatic, generally available since August 2025, is a preset cluster type on the Standard tier: Azure manages the system node pool, provisions nodes from Pod requests, and turns on Cilium-based networking, managed NGINX ingress, autoscalers and policy safeguards from the start.

Why teams pick it

  • A free control plane tier for development and small clusters, with a paid SLA one setting away
  • Long Term Support keeps one Kubernetes minor version patched for two years on the Premium tier
  • Several node pools per cluster, including Windows Server and GPU pools, each with its own VM size and OS
  • AKS Automatic gives a production baseline (node autoprovisioning, Cilium networking, ingress, safeguards) with one flag

Watch out for

  • The Free tier has no SLA and isn’t meant for more than about 10 nodes; production clusters need Standard at $0.10 per cluster per hour
  • AKS supports only the three newest minor versions (N-2); staying longer means paying $0.60 per hour for Premium
  • AKS Automatic costs $0.16 per cluster per hour plus a per-vCPU management charge on its nodes, and gives up some node-level control
  • New AKS Automatic clusters can be created only in regions where API Server VNet Integration is generally available

More of the Kubernetes family

What all container orchestration have in common →
Amazon EKSAWSManaged servicesAWS runs the Kubernetes control plane for you; you choose how much of the worker side to hand over too.Google Kubernetes EngineGoogle CloudManaged servicesGoogle’s managed Kubernetes, the oldest one: Google runs the control plane, and in Autopilot mode the nodes too.K3sOpen sourceDistributionsA certified Kubernetes distribution in one small binary, built for edge, IoT and other places where a full cluster is too heavy, with SQLite or embedded etcd for state.MicroK8sOpen sourceDistributionsCanonical’s Kubernetes in one snap package: installs with one command on Linux, forms a highly available cluster by itself at three nodes, and adds features as addons.Red Hat OpenShiftCommercialDistributionsRed Hat’s Kubernetes platform: Kubernetes plus its own OS, operators that install and upgrade everything, and stricter security defaults, sold by subscription.RKE2Open sourceDistributionsSUSE’s security-focused Kubernetes distribution: one binary per node, hardened defaults, FIPS-validated crypto and close alignment with upstream.Talos LinuxOpen sourceDistributionsA Linux distribution that only runs Kubernetes: immutable, minimal, with no shell or SSH, and managed entirely through an API.kindOpen sourceFor local developmentKubernetes IN Docker: each cluster node is a container, so a conformant multi-node cluster starts and disappears inside a CI job.minikubeOpen sourceFor local developmentA local Kubernetes cluster for developers on Linux, macOS or Windows, in a container, a VM or on the host itself, with laptop-friendly extras.kubeadmOpen sourceToolsThe official tool for turning Linux machines you already have into a Kubernetes cluster: `kubeadm init`, then `kubeadm join`.RancherOpen sourceToolsSUSE’s open-source control plane for fleets of Kubernetes clusters: one place to create, import, secure and upgrade them.AgonesOpen sourceBuilt on itRuns dedicated multiplayer game servers on Kubernetes: keeps a fleet of them warm, hands one to each match, and never kills a server while players are on it.KlutchOpen sourceBuilt on itA young open-source control plane, built on Crossplane, that lets many application clusters order databases from one central Kubernetes cluster.

How it fits with other technologies

Create a Standard-tier cluster and add a second node pool, or one Automatic cluster · bash

az aks create --resource-group rg --name prod --tier standard \
  --node-count 3 --generate-ssh-keys

# a user node pool for applications, with its own VM size and OS
az aks nodepool add --resource-group rg --cluster-name prod --name apps \
  --node-vm-size Standard_DS2_v2 --os-sku AzureLinux --node-count 3

# or let Azure run the nodes as well
az aks create --resource-group rg --name auto --sku automatic

Control plane tiers (checked 2026-10-06)#

These prices cover the control plane only. Worker nodes are billed as ordinary Azure VMs, with any reservations or discounts applied.

Control plane priceSLANode limitUse
Free$0None (best effort)1,000 (not recommended above 10)Development, testing, learning
Standard$0.10 per cluster per hour99.95% with zones, 99.9% without5,000Production
Premium$0.60 per cluster per hourAs Standard5,000Production that needs two-year Long Term Support
AKS Automatic$0.16 per cluster per hour, plus a per-vCPU node chargeAs Standard, plus a Pod readiness SLA5,000Production with Azure-managed nodes
  • Prices from the AKS pricing page (US regions), checked on 2026-10-06. AKS Automatic billing began on October 19, 2025.

See it in a real stack

No architecture uses Azure Kubernetes Service yet. Drop it into the playground and wire it up yourself.Open playground →
Where it came from2015–2025

Microsoft’s first container service, Azure Container Service (ACS), launched in 2015 as a deployment engine for several open-source orchestrators, such as Docker Enterprise, Mesosphere DC/OS and Kubernetes. By October 2017 Kubernetes had pulled ahead: Microsoft said its use on ACS had grown 300% in six months.

On October 24, 2017, Microsoft announced a preview of AKS, a managed service focused only on Kubernetes, and promised that “you will pay nothing for the management of your Kubernetes cluster, ever”, while other clouds charged by the hour. AKS became generally available on June 13, 2018, in ten regions, announced by Brendan Burns, a Kubernetes co-founder who had moved from Google to Microsoft. Customers on the old service had to move to AKS by January 31, 2020.

AKS kept the free control plane as its Free tier but added paid ones: a Standard tier with an SLA for production, and a Premium tier with two-year Long Term Support. In August 2025 it made AKS Automatic generally available, a cluster type where Azure also manages the nodes using node autoprovisioning built on Karpenter, with billing starting in October 2025.

Why it’s built this way

Kubernetes only, not a menu of orchestrators
ACS supported several orchestrators. Microsoft said Kubernetes had “emerged as the open source standard for container orchestration”, so AKS focused its managed features on Kubernetes alone.
A free control plane
Microsoft argued that customers should pay only for the VMs that run their applications, not for the management infrastructure. That later became the Free tier, with SLAs and longer support sold as paid tiers on top.
System and user node pools
Keeping critical Pods such as CoreDNS on their own pool stops a busy or misconfigured application pool from taking down the cluster’s own services.
Build node autoprovisioning on Karpenter
Rather than write its own node provisioner, AKS adopted the open-source Karpenter and an Azure provider for it, so nodes are chosen from waiting Pods’ requests instead of fixed pool sizes.

Timeline

  1. 2015

    Azure Container Service launches with a choice of orchestrators

  2. 2017

    AKS preview announced on October 24, with a free control plane

  3. 2018

    Generally available on June 13 in ten regions

  4. 2020

    Azure Container Service retired; customers move to AKS by January 31

  5. 2025

    AKS Automatic generally available in August; its billing starts in October

Sources13 · facts checked 6 October 2026

Improve this page on GitHub