Azure Kubernetes Service (AKS) Uptime SLA

Uptime SLA is a tier to enable a financially backed, higher SLA for an AKS cluster. Clusters with Uptime SLA, also regarded as Paid tier in AKS REST APIs, come with greater amount of control plane resources and automatically scale to meet the load of your cluster. Uptime SLA guarantees 99.95% availability of the Kubernetes API server endpoint for clusters that use Availability Zones and 99.9% of availability for clusters that don't use Availability Zones. AKS uses master node replicas across update and fault domains to ensure SLA requirements are met.

AKS recommends use of Uptime SLA in production workloads to ensure availability of control plane components. Clusters on free tier by contrast come with fewer replicas and limited resources for the control plane and are not suitable for production workloads.

Customers can still create unlimited number of free clusters with a service level objective (SLO) of 99.5% and opt for the preferred SLO.

Important

For clusters with egress lockdown, see limit egress traffic to open appropriate ports.

Region availability

  • Uptime SLA is available in public regions and Azure Government regions where AKS is supported.
  • Uptime SLA is available for private AKS clusters in all public regions where AKS is supported.

SLA terms and conditions

Uptime SLA is a paid feature and is enabled per cluster. Uptime SLA pricing is determined by the number of discrete clusters, and not by the size of the individual clusters. You can view Uptime SLA pricing details for more information.

Before you begin

  • Install the Azure CLI version 2.8.0 or later

Creating a new cluster with Uptime SLA

To create a new cluster with the Uptime SLA, you use the Azure CLI.

The following example creates a resource group named myResourceGroup in the eastus location:

# Create a resource group
az group create --name myResourceGroup --location eastus

Use the az aks create command to create an AKS cluster. The following example creates a cluster named myAKSCluster with one node. This operation takes several minutes to complete:

# Create an AKS cluster with uptime SLA
az aks create --resource-group myResourceGroup --name myAKSCluster --uptime-sla --node-count 1

After a few minutes, the command completes and returns JSON-formatted information about the cluster. The following JSON snippet shows the paid tier for the SKU, indicating your cluster is enabled with Uptime SLA:

  },
  "sku": {
    "name": "Basic",
    "tier": "Paid"
  },

Modify an existing cluster to use Uptime SLA

You can optionally update your existing clusters to use Uptime SLA.

If you created an AKS cluster with the previous steps, delete the resource group:

# Delete the existing cluster by deleting the resource group 
az group delete --name myResourceGroup --yes --no-wait

Create a new resource group:

# Create a resource group
az group create --name myResourceGroup --location eastus

Create a new cluster, and don't use Uptime SLA:

# Create a new cluster without uptime SLA
az aks create --resource-group myResourceGroup --name myAKSCluster--node-count 1

Use the az aks update command to update the existing cluster:

# Update an existing cluster to use Uptime SLA
az aks update --resource-group myResourceGroup --name myAKSCluster --uptime-sla

The following JSON snippet shows the paid tier for the SKU, indicating your cluster is enabled with Uptime SLA:

  },
  "sku": {
    "name": "Basic",
    "tier": "Paid"
  },

Opt out of Uptime SLA

You can update your cluster to change to the free tier and opt out of Uptime SLA.

# Update an existing cluster to opt out of Uptime SLA
 az aks update --resource-group myResourceGroup --name myAKSCluster --no-uptime-sla

Clean up

To avoid charges, clean up any resources you created. To delete the cluster, use the az group delete command to delete the AKS resource group:

az group delete --name myResourceGroup --yes --no-wait

Next steps

Use Availability Zones to increase high availability with your AKS cluster workloads.

Configure your cluster to limit egress traffic.