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
@@ -18,11 +18,11 @@ The new static block allocation capability in Azure CNI solves this problem by a
18
18
19
19
It offers the following benefits:
20
20
21
-
***Better IP Scalability**: CIDR blocks are statically allocated to the cluster nodes and are present for the lifetime of the node, as opposed to the traditional dynamic allocation of individual IPs with traditional CNI. This enables routing based on CIDR blocks and helps scale the cluster limit up to 1 million pods from the traditional 65K pods per cluster. Your Azure Virtual Network must be large enough to accommodate the scale of your cluster.
22
-
***Flexibility**: Node and pod subnets can be scaled independently. A single pod subnet can be shared across multiple node pools of a cluster or across multiple AKS clusters deployed in the same VNet. You can also configure a separate pod subnet for a node pool.
23
-
***High performance**: Since pods are assigned virtual network IPs, they have direct connectivity to other cluster pods and resources in the VNet.
24
-
***Separate VNet policies for pods**: Since pods have a separate subnet, you can configure separate VNet policies for them that are different from node policies. This enables many useful scenarios such as allowing internet connectivity only for pods and not for nodes, fixing the source IP for pod in a node pool using an Azure NAT Gateway, and using NSGs to filter traffic between node pools.
25
-
***Kubernetes network policies**: Cilium, Azure NPM, and Calico work with this new solution.
21
+
-**Better IP Scalability**: CIDR blocks are statically allocated to the cluster nodes and are present for the lifetime of the node, as opposed to the traditional dynamic allocation of individual IPs with traditional CNI. This enables routing based on CIDR blocks and helps scale the cluster limit up to 1 million pods from the traditional 65K pods per cluster. Your Azure Virtual Network must be large enough to accommodate the scale of your cluster.
22
+
-**Flexibility**: Node and pod subnets can be scaled independently. A single pod subnet can be shared across multiple node pools of a cluster or across multiple AKS clusters deployed in the same VNet. You can also configure a separate pod subnet for a node pool.
23
+
-**High performance**: Since pods are assigned virtual network IPs, they have direct connectivity to other cluster pods and resources in the VNet.
24
+
-**Separate VNet policies for pods**: Since pods have a separate subnet, you can configure separate VNet policies for them that are different from node policies. This enables many useful scenarios such as allowing internet connectivity only for pods and not for nodes, fixing the source IP for pod in a node pool using an Azure NAT Gateway, and using NSGs to filter traffic between node pools.
25
+
-**Kubernetes network policies**: Cilium, Azure NPM, and Calico work with this new solution.
26
26
27
27
This article shows you how to use Azure CNI Networking for static allocation of CIDRs and enhanced subnet support in AKS.
28
28
@@ -31,12 +31,13 @@ This article shows you how to use Azure CNI Networking for static allocation of
31
31
> [!NOTE]
32
32
> When using static block allocation of CIDRs, exposing an application as a Private Link Service using a Kubernetes Load Balancer Service isn't supported.
33
33
34
-
* Review the [prerequisites][azure-cni-prereq] for configuring basic Azure CNI networking in AKS, as the same prerequisites apply to this article.
35
-
* Review the [deployment parameters][azure-cni-deployment-parameters] for configuring basic Azure CNI networking in AKS, as the same parameters apply.
36
-
* AKS Engine and DIY clusters aren't supported.
37
-
* Azure CLI version `2.37.0` or later with extension aks-preview of version '2.0.0b2' or later
38
-
* If you have an existing cluster, you need to enable Container Insights for monitoring IP subnet usage. You can enable Container Insights using the [`az aks enable-addons`][az-aks-enable-addons] command, as shown in the following example:
39
-
* Register the subscription-level feature flag for your subscription: 'Microsoft.ContainerService/AzureVnetScalePreview'
34
+
- Review the [prerequisites][azure-cni-prereq] for configuring basic Azure CNI networking in AKS, as the same prerequisites apply to this article.
35
+
- Review the [deployment parameters][azure-cni-deployment-parameters] for configuring basic Azure CNI networking in AKS, as the same parameters apply.
36
+
- AKS Engine and DIY clusters aren't supported.
37
+
- Azure CLI version `2.37.0` or later with extension aks-preview of version '2.0.0b2' or later
38
+
- If you have an existing cluster, you need to enable Container Insights for monitoring IP subnet usage. You can enable Container Insights using the [`az aks enable-addons`][az-aks-enable-addons] command, as shown in the following example:
39
+
- Register the subscription-level feature flag for your subscription: 'Microsoft.ContainerService/AzureVnetScalePreview'
40
+
40
41
```azurecli-interactive
41
42
az aks enable-addons --addons monitoring --name <cluster-name> --resource-group <resource-group-name>
42
43
```
@@ -86,9 +87,9 @@ The planning of IPs for Kubernetes services remain unchanged.
86
87
87
88
The [deployment parameters][azure-cni-deployment-parameters]for configuring basic Azure CNI networking in AKS are all valid, with two exceptions:
88
89
89
-
* The **vnet subnet id** parameter now refers to the subnet related to the cluster's nodes.
90
-
* The parameter **pod subnet id** is used to specify the subnet whose IP addresses will be statically or dynamically allocated to pods in the node pool.
91
-
* The **pod ip allocation mode** parameter specifies whether to use dynamic individual or static block allocation.
90
+
- The **vnet subnet id** parameter now refers to the subnet related to the cluster's nodes.
91
+
- The parameter **pod subnet id** is used to specify the subnet whose IP addresses will be statically or dynamically allocated to pods in the node pool.
92
+
- The **pod ip allocation mode** parameter specifies whether to use dynamic individual or static block allocation.
92
93
93
94
## Before you begin
94
95
@@ -125,7 +126,7 @@ The [deployment parameters][azure-cni-deployment-parameters]for configuring basi
125
126
az feature show --namespace "Microsoft.ContainerService" --name "AzureVnetScalePreview"
126
127
```
127
128
128
-
3. When the status reflects *Registered*, refresh the registration of the *Microsoft.ContainerService* resource provider using the [`az provider register`][az-provider-register] command.
129
+
3. When the status reflects *Registered*, refresh the registration of the _Microsoft.ContainerService_ resource provider using the [`az provider register`][az-provider-register] command.
129
130
130
131
```azurecli-interactive
131
132
az provider register --namespace Microsoft.ContainerService
@@ -187,25 +188,25 @@ az aks nodepool add --cluster-name $clusterName -g $resourceGroup -n newnodepoo
187
188
188
189
## Static allocation of CIDR blocks and enhanced subnet support FAQs
189
190
190
-
***Can I assign multiple pod subnets to a cluster?**
191
+
-**Can I assign multiple pod subnets to a cluster?**
191
192
192
193
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.
193
194
194
-
***Can I assign Pod subnets from a different VNet altogether?**
195
+
-**Can I assign Pod subnets from a different VNet altogether?**
195
196
196
197
No, the pod subnet should be from the same VNet as the cluster.
197
198
198
-
***Can some node pools in a cluster use Dynamic IP allocation while others use the new Static Block allocation?**
199
+
-**Can some node pools in a cluster use Dynamic IP allocation while others use the new Static Block allocation?**
199
200
200
201
Yes, different node pools can use different allocation modes. However, once a subnet is used in one allocation mode it can only be used in the same allocation mode across all the node pools it is associated.
201
202
202
203
## Next steps
203
204
204
205
Learn more about networking in AKS in the following articles:
205
206
206
-
*[Use a static IP address with the Azure Kubernetes Service (AKS) load balancer](static-ip.md)
207
-
*[Use an internal load balancer with Azure Kubernetes Service (AKS)](internal-lb.md)
208
-
*[Use the application routing addon in Azure Kubernetes Service (AKS)](app-routing.md)
207
+
-[Use a static IP address with the Azure Kubernetes Service (AKS) load balancer](static-ip.md)
208
+
-[Use an internal load balancer with Azure Kubernetes Service (AKS)](internal-lb.md)
209
+
-[Use the application routing addon in Azure Kubernetes Service (AKS)](app-routing.md)
0 commit comments