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
Copy file name to clipboardExpand all lines: articles/aks/configure-azure-cni-static-block-allocation.md
+13-6Lines changed: 13 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,15 +65,22 @@ This feature is **_not_** available in the following regions:
65
65
66
66
## Plan IP addressing
67
67
68
-
Planning your IP addressing is much simpler with this feature. Since the nodes and pods scale independently, their address spaces can also be planned separately. Since pod subnets can be configured to the granularity of a node pool, you can always add a new subnet when you add a node pool. The system pods in a cluster/node pool also receive IPs from the pod subnet, so this behavior needs to be accounted for.
68
+
Planning your IP addressing is more flexible and granular. Since the nodes and pods scale independently, their address spaces can also be planned separately. Since pod subnets can be configured to the granularity of a node pool, you can always add a new subnet when you add a node pool. The system pods in a cluster/node pool also receive IPs from the pod subnet, so this behavior needs to be accounted for.
69
69
70
-
IPs are allocated to nodes based on your max pod settings and in CIDR blocks of /28 (16 IP Addresses). 1 IP is selected across all the CIDR blocks assigned to the node for DNS and node-level routing. Thus the calculation of max pods per node is:
70
+
In this scenario, CIDR blocks of /28 (16 IPs) are allocated to nodes based on your '--max-pod' configuration for your node pool which defines the maximum number of pods per node. 1 IP is reserved on each node from all the available IPs on that node for internal purposes.
71
+
72
+
Thus while determining and planning your IPs it is essential to define your '--max-pods' configuration and it can be calculated best as below:
71
73
`max_pods_per_node = (16 * N) - 1`
72
74
where N is any positive integer greater than 0
73
75
74
-
This means that if you define max pods per node set to 30, when a node is provisioned, two blocks of 16 IPs will be allocated to the node and are reserved for the lifetime of that node. Subnet IP allocation should be planned with a minimum of 16 IPs per node in the cluster and the max pod count per node when considering scaling.
76
+
Ideal values with no IP wastage would require the max pods value to conform to the above expression.
77
+
78
+
**Example 1:** max_pods = 30, CIDR Blocks allocated per node = 2, Total IPs available for pods = (16 * 2) - 1 = 32 - 1 = 31, IP wastage per node = 31 - 30 = 1 **[Low wastage - Acceptable Case]**
79
+
**Example 2:** max_pods = 31, CIDR Blocks allocated per node = 2, Total IPs available for pods = (16 * 2) - 1 = 32 - 1 = 31, IP wastage per node = 31 - 31 = 0 **[Ideal Case]**
80
+
**Example 3:** max_pods = 32, CIDR Blocks allocated per node = 3, Total IPs available for pods = (16 * 3) - 1 = 48 - 1 = 47, IP wastage per node = 47 - 32 = 15 **[High Wastage - Not Recommended Case]**
81
+
75
82
76
-
The planning of IPs for Kubernetes services and Docker bridge remain unchanged.
83
+
The planning of IPs for Kubernetes services remain unchanged.
77
84
78
85
## Deployment parameters
79
86
@@ -96,7 +103,7 @@ The [deployment parameters][azure-cni-deployment-parameters]for configuring basi
96
103
az extension add --name aks-preview
97
104
```
98
105
99
-
2. Update to the latest version of the extension using the [`az extension update`][az-extension-update] command.
106
+
2. Update to the latest version of the extension using the [`az extension update`][az-extension-update] command. The extension should have a version of '2.0..0b2' or later
100
107
101
108
```azurecli-interactive
102
109
az extension update --name aks-preview
@@ -215,7 +222,7 @@ az aks get-credentials -n $clusterName -g $resourceGroup
215
222
216
223
***Can I assign multiple pod subnets to a cluster?**
217
224
218
-
Multiple subnets can be assigned to a cluster but only one subnet can be assigned to each node pool. Different node pools across the same/different cluster can share the same subnet.
225
+
Yes, multiple subnets can be assigned to a cluster but only one subnet can be assigned to each node pool. Different node pools across the same/different cluster can share the same subnet.
219
226
220
227
***Can I assign Pod subnets from a different VNet altogether?**
0 commit comments