Skip to main content

What is AKS?

Azure Kubernetes Service (AKS) is Microsoft's managed Kubernetes platform. It runs your containerized workloads on Azure with a free, Microsoft-managed control plane and worker nodes that live in your subscription.

AKS is the best managed Kubernetes option in Azure. Period. Do not look at self-managed K8s on VMs. Do not consider third-party K8s distributions on Azure. AKS gives you the full Kubernetes API with Azure-native integrations that no other option can match.

Architecture: what Microsoft manages vs. what you own

AKS Architecture

The split is clean:

ComponentWho Manages ItWhat That Means
API ServerMicrosoftAlways available (99.95% SLA on Standard tier). You never patch it.
etcdMicrosoftBacked up, replicated, encrypted at rest. You never touch it.
Scheduler + Controller ManagerMicrosoftUpgrades happen automatically on their side.
Worker Nodes (Node Pools)YouVMs in your subscription. You pick the SKU, count, and scaling rules.
Pods and WorkloadsYouYour containers, your responsibility.
Networking (VNet, LB, DNS)SharedAKS provisions Azure resources in your subscription. You configure the topology.
Key insight

You pay zero for the control plane. Your cost is only the worker node VMs, storage, and networking in your subscription. This makes AKS the cheapest entry point for production Kubernetes on any cloud.

Why AKS over other managed Kubernetes

DifferentiatorWhy It Matters
Entra ID integrationNo separate identity provider to manage. Your developers authenticate with their corporate credentials. Workload Identity gives Pods cloud-native identity without managing secrets.
Azure networking nativeYour cluster lives inside an Azure VNet. Private clusters, network policies, Azure Firewall integration -- all first-class. No overlay hacks.
Managed upgradesChoose from Stable, Rapid, or Node Image channels. Or go fully automatic. No more "we're 4 minor versions behind" situations.
Azure Monitor + Prometheus + GrafanaOne-click observability stack. Managed Prometheus for metrics, managed Grafana for dashboards, Container Insights for logs.
Defender for ContainersRuntime threat detection, vulnerability scanning, admission control -- integrated, not bolted on.
KEDA built-inEvent-driven autoscaling without installing and maintaining the KEDA operator yourself.
AI/ML readyGPU node pools, KAITO for model inference, AI Toolchain Operator for training pipelines.

Pricing tiers: pick the right one

Do not run production on the Free tier

The Free tier has no SLA, no uptime guarantee, and limited API server resources. It exists for learning and dev/test only. Running production on Free tier is asking for an outage at the worst possible time.

TierMonthly CostSLAUse CaseRecommendation
Free$0NoneDev/test, learning, experimentationUse for labs and sandboxes only
Standard~$73/month per cluster99.95% (with AZs)Production workloadsThis is your default for production.
Premium~$146/month per cluster99.95%Mission-critical, long-term supportUse when you need LTS versions or advanced features

The tier cost is ONLY for the control plane capabilities. You still pay for your node VMs separately.

Critical: node OS migration required

Azure Linux 2.0 deprecation -- November 2025

If your node pools run Azure Linux 2.0 (Mariner 2.0), you must migrate to Azure Linux 3.0 before November 2025. Azure Linux 2.0 reaches end of life and will stop receiving security patches. Do not delay this.

Check your current node OS:

# See what OS your nodes are running
az aks nodepool list --resource-group myRG --cluster-name myCluster \
--query "[].{Name:name, OsType:osType, OsSKU:osSku}" -o table

Migrate to Azure Linux 3:

# Update existing node pool OS SKU
az aks nodepool update --resource-group myRG --cluster-name myCluster \
--name mynodepool --os-sku AzureLinux

What AKS gives you out of the box

Every AKS cluster, regardless of SKU, comes with:

  • CoreDNS for in-cluster service discovery
  • Azure Disk and Azure Files CSI drivers for persistent storage
  • kube-proxy or Cilium for network routing (depending on your CNI choice)
  • Metrics Server for HPA/VPA to function
  • Azure Identity webhook for workload identity

What you opt into (and should):

  • Azure CNI Overlay with Cilium -- best networking option for most clusters. Use it.
  • Workload Identity -- stop using pod-managed identity. It is deprecated.
  • Azure Key Vault CSI driver -- mount secrets from Key Vault directly into Pods.
  • App Routing (managed NGINX) -- use it instead of installing your own ingress controller.

Common mistakes to avoid

MistakeWhy It HurtsWhat to Do Instead
Running Free tier in productionNo SLA, API server throttling under loadPay the $73/month for Standard tier
Using kubenet networkingLimited to 400 nodes, no network policies, SNAT exhaustionUse Azure CNI Overlay
Skipping Workload IdentityPods using shared secrets to access Azure resources = security incident waiting to happenEnable Workload Identity federation
Manual node upgradesYou will fall behind, accumulate CVEsEnable node image auto-upgrade at minimum
Oversizing node pools from day oneWasting money on idle computeStart small, enable cluster autoscaler with sensible min/max
Ignoring resource requests/limitsNoisy neighbor problems, OOMKills, scheduling failuresAlways set requests. Set limits for memory.

Your first cluster in 60 seconds

# Create a resource group
az group create --name aks-learning --location eastus2

# Create an AKS cluster (Standard tier, Azure CNI Overlay, 2 nodes)
az aks create \
--resource-group aks-learning \
--name my-first-cluster \
--tier standard \
--network-plugin azure \
--network-plugin-mode overlay \
--node-count 2 \
--node-vm-size Standard_D4s_v5 \
--enable-managed-identity \
--generate-ssh-keys

# Get credentials
az aks get-credentials --resource-group aks-learning --name my-first-cluster

# Verify
kubectl get nodes

Resources

Hands-on lab

Get hands-on

Kubernetes the Easy Way with AKS Automatic

Deploy your first application on AKS. The lab walks you through cluster creation, deployment, and scaling in about 45 minutes.


Next: AKS Automatic vs Standard -- the most important architectural decision you will make.