You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> Any cluster actions taken by Microsoft/AKS are made with your consent under a built-in Kubernetes role `aks-service` and built-in role binding `aks-service-rolebinding`. This role enables AKS to troubleshoot and diagnose cluster issues, but can't modify permissions nor create roles or role bindings, or other high privilege actions. Role access is only enabled under active support tickets with just-in-time (JIT) access.
# Manage system node pools in Azure Kubernetes Service (AKS)
10
10
11
-
In Azure Kubernetes Service (AKS), nodes of the same configuration are grouped together into *node pools*. Node pools contain the underlying VMs that run your applications. System node pools and user node pools are two different node pool modes for your AKS clusters. System node pools serve the primary purpose of hosting critical system pods such as `CoreDNS` and `metrics-server`. User node pools serve the primary purpose of hosting your application pods. However, application pods can be scheduled on system node pools if you wish to only have one pool in your AKS cluster. Every AKS cluster must contain at least one system node pool with at least one node.
11
+
In Azure Kubernetes Service (AKS), nodes of the same configuration are grouped together into *node pools*. Node pools contain the underlying VMs that run your applications. System node pools and user node pools are two different node pool modes for your AKS clusters. System node pools serve the primary purpose of hosting critical system pods such as `CoreDNS` and `metrics-server`. User node pools serve the primary purpose of hosting your application pods. However, application pods can be scheduled on system node pools if you wish to only have one pool in your AKS cluster. Every AKS cluster must contain at least one system node pool with at least two nodes.
12
12
13
13
> [!Important]
14
14
> If you run a single system node pool for your AKS cluster in a production environment, we recommend you use at least three nodes for the node pool.
@@ -47,10 +47,10 @@ System node pools have the following restrictions:
47
47
* System node pools must support at least 30 pods as described by the [minimum and maximum value formula for pods][maximum-pods].
48
48
* System pools osType must be Linux.
49
49
* User node pools osType may be Linux or Windows.
50
-
* System pools must contain at least one node, and user node pools may contain zero or more nodes.
51
-
* System node pools require a VM SKU of at least 2 vCPUs and 4GB memory.
50
+
* System pools must contain at least two nodes, and user node pools may contain zero or more nodes.
51
+
* System node pools require a VM SKU of at least 4 vCPUs and 4GB memory.
52
52
*[B series VMs][b-series-vm] are not supported for system node pools.
53
-
* A minimum of two nodes 4 vCPUs is recommended (for example, Standard_DS4_v2), especially for large clusters (Multiple CoreDNS Pod replicas, 3-4+ add-ons, etc.).
53
+
* A minimum of three nodes of 8 vCPUs or two nodes of at least 16 vCPUs is recommended (for example, Standard_DS4_v2), especially for large clusters (Multiple CoreDNS Pod replicas, 3-4+ add-ons, etc.).
54
54
* Spot node pools require user node pools.
55
55
* Adding another system node pool or changing which node pool is a system node pool *does not* automatically move system pods. System pods can continue to run on the same node pool, even if you change it to a user node pool. If you delete or scale down a node pool running system pods that were previously a system node pool, those system pods are redeployed with preferred scheduling to the new system node pool.
56
56
@@ -69,36 +69,36 @@ You can do the following operations with node pools:
69
69
70
70
### [Azure CLI](#tab/azure-cli)
71
71
72
-
When you create a new AKS cluster, you automatically create a system node pool with a single node. The initial node pool defaults to a mode of type system. When you create new node pools with `az aks nodepool add`, those node pools are user node pools unless you explicitly specify the mode parameter.
72
+
When you create a new AKS cluster, the initial node pool defaults to a mode of type `system`. When you create new node pools with `az aks nodepool add`, those node pools are user node pools unless you explicitly specify the mode parameter.
73
73
74
74
The following example creates a resource group named *myResourceGroup* in the *eastus* region.
75
75
76
76
```azurecli-interactive
77
77
az group create --name myResourceGroup --location eastus
78
78
```
79
79
80
-
Use the [az aks create][az-aks-create] command to create an AKS cluster. The following example creates a cluster named *myAKSCluster* with one dedicated system pool containing one node. For your production workloads, ensure you're using system node pools with at least three nodes. This operation may take several minutes to complete.
80
+
Use the [az aks create][az-aks-create] command to create an AKS cluster. The following example creates a cluster named *myAKSCluster* with one dedicated system pool containing two nodes. For your production workloads, ensure you're using system node pools with at least three nodes. This operation may take several minutes to complete.
81
81
82
82
```azurecli-interactive
83
83
# Create a new AKS cluster with a single system pool
84
-
az aks create -g myResourceGroup --name myAKSCluster --node-count 1 --generate-ssh-keys
84
+
az aks create -g myResourceGroup --name myAKSCluster --node-count 2 --generate-ssh-keys
85
85
```
86
86
87
87
### [Azure PowerShell](#tab/azure-powershell)
88
88
89
-
When you create a new AKS cluster, you automatically create a system node pool with a single node. The initial node pool defaults to a mode of type system. When you create new node pools with `New-AzAksNodePool`, those node pools are user node pools. A node pool's mode can be [updated at any time][update-node-pool-mode].
89
+
When you create a new AKS cluster, the initial node pool defaults to a mode of type `system`. When you create new node pools with `New-AzAksNodePool`, those node pools are user node pools. A node pool's mode can be [updated at any time][update-node-pool-mode].
90
90
91
91
The following example creates a resource group named *myResourceGroup* in the *eastus* region.
Use the [New-AzAksCluster][new-azakscluster] cmdlet to create an AKS cluster. The following example creates a cluster named *myAKSCluster* with one dedicated system pool containing one node. For your production workloads, ensure you're using system node pools with at least three nodes. The create operation may take several minutes to complete.
97
+
Use the [New-AzAksCluster][new-azakscluster] cmdlet to create an AKS cluster. The following example creates a cluster named *myAKSCluster* with one dedicated system pool containing two nodes. For your production workloads, ensure you're using system node pools with at least three nodes. The create operation may take several minutes to complete.
98
98
99
99
```azurepowershell-interactive
100
100
# Create a new AKS cluster with a single system pool
0 commit comments