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/private-clusters.md
+22-36Lines changed: 22 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Create a private Azure Kubernetes Service cluster
3
3
description: Learn how to create a private Azure Kubernetes Service (AKS) cluster
4
4
services: container-service
5
5
ms.topic: article
6
-
ms.date: 8/30/2021
6
+
ms.date: 11/30/2021
7
7
8
8
---
9
9
@@ -13,6 +13,8 @@ In a private cluster, the control plane or API server has internal IP addresses
13
13
14
14
The control plane or API server is in an Azure Kubernetes Service (AKS)-managed Azure subscription. A customer's cluster or node pool is in the customer's subscription. The server and the cluster or node pool can communicate with each other through the [Azure Private Link service][private-link-service] in the API server virtual network and a private endpoint that's exposed in the subnet of the customer's AKS cluster.
15
15
16
+
When you provision a private AKS cluster, AKS by default creates a private FQDN with a private DNS zone and an additional public FQDN with a corresponding A record in Azure public DNS. The agent nodes still use the A record in the private DNS zone to resolve the private IP address of the private endpoint for communication to the API server.
17
+
16
18
## Region availability
17
19
18
20
Private cluster is available in public regions, Azure Government, and Azure China 21Vianet regions where [AKS is supported](https://azure.microsoft.com/global-infrastructure/services/?products=kubernetes-service).
@@ -22,22 +24,11 @@ Private cluster is available in public regions, Azure Government, and Azure Chin
22
24
23
25
## Prerequisites
24
26
25
-
* The Azure CLI version 2.2.0 or later
27
+
* Azure CLI >= 2.28.0 or Azure CLI with aks-preview extension 0.5.29 or later.
28
+
* If using ARM or the rest API, the AKS API version must be 2021-05-01 or later.
26
29
* The Private Link service is supported on Standard Azure Load Balancer only. Basic Azure Load Balancer isn't supported.
27
30
* To use a custom DNS server, add the Azure DNS IP 168.63.129.16 as the upstream DNS server in the custom DNS server.
28
31
29
-
### Install the `aks-preview` Azure CLI
30
-
31
-
You need the *aks-preview* Azure CLI extension. Install the *aks-preview* Azure CLI extension by using the [az extension add][az-extension-add] command. Or install any available updates by using the [az extension update][az-extension-update] command.
32
-
33
-
```azurecli-interactive
34
-
# Install the aks-preview extension
35
-
az extension add --name aks-preview
36
-
37
-
# Update the extension to make sure you have the latest version installed
38
-
az extension update --name aks-preview
39
-
```
40
-
41
32
## Create a private AKS cluster
42
33
43
34
### Create a resource group
@@ -53,6 +44,7 @@ az group create -l westus -n MyResourceGroup
53
44
```azurecli-interactive
54
45
az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster
55
46
```
47
+
56
48
Where `--enable-private-cluster` is a mandatory flag for a private cluster.
57
49
58
50
### Advanced networking
@@ -74,6 +66,22 @@ Where `--enable-private-cluster` is a mandatory flag for a private cluster.
74
66
> [!NOTE]
75
67
> If the Docker bridge address CIDR (172.17.0.1/16) clashes with the subnet CIDR, change the Docker bridge address appropriately.
76
68
69
+
## Disable Public FQDN
70
+
71
+
The following parameters can be leveraged to disable Public FQDN.
72
+
73
+
### Disable Public FQDN on a new AKS cluster
74
+
75
+
```azurecli-interactive
76
+
az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster --enable-managed-identity --assign-identity <ResourceId> --private-dns-zone <private-dns-zone-mode> --disable-public-fqdn
77
+
```
78
+
79
+
### Disable Public FQDN on an existing cluster
80
+
81
+
```azurecli-interactive
82
+
az aks update -n <private-cluster-name> -g <private-cluster-resource-group> --disable-public-fqdn
83
+
```
84
+
77
85
## Configure Private DNS Zone
78
86
79
87
The following parameters can be leveraged to configure Private DNS Zone.
@@ -150,28 +158,6 @@ az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --lo
150
158
az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster --enable-managed-identity --assign-identity <ResourceId> --private-dns-zone <custom private dns zone ResourceId> --fqdn-subdomain <subdomain>
151
159
```
152
160
153
-
### Create a private AKS cluster with a Public FQDN
154
-
155
-
Prerequisites:
156
-
157
-
* Azure CLI >= 2.28.0 or Azure CLI with aks-preview extension 0.5.29 or later.
158
-
* If using ARM or the rest API, the AKS API version must be 2021-05-01 or later.
159
-
160
-
The Public DNS option can be leveraged to simplify routing options for your Private Cluster.
1. When you provision a private AKS cluster, AKS by default creates an additional public FQDN and corresponding A record in Azure public DNS. The agent nodes still use the A record in the private DNS zone to resolve the private IP address of the private endpoint for communication to the API server.
165
-
166
-
2. If you use `--private-dns-zone none`, the cluster will only have a public FQDN. When using this option, no Private DNS Zone is created or used for the name resolution of the FQDN of the API Server. The IP of the API is still private and not publicly routable.
167
-
168
-
3. If the public FQDN is not desired, you could use `--disable-public-fqdn` to disable it ("none" private dns zone is not allowed to disable public FQDN).
169
-
170
-
```azurecli-interactive
171
-
az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster --enable-managed-identity --assign-identity <ResourceId> --private-dns-zone <private-dns-zone-mode> --disable-public-fqdn
172
-
az aks update -n <private-cluster-name> -g <private-cluster-resource-group> --disable-public-fqdn
173
-
```
174
-
175
161
## Options for connecting to the private cluster
176
162
177
163
The API server endpoint has no public IP address. To manage the API server, you'll need to use a VM that has access to the AKS cluster's Azure Virtual Network (VNet). There are several options for establishing network connectivity to the private cluster.
Copy file name to clipboardExpand all lines: articles/machine-learning/how-to-create-attach-kubernetes.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ Azure Machine Learning can deploy trained machine learning models to Azure Kuber
43
43
44
44
- If you want to use a private AKS cluster (using Azure Private Link), you must create the cluster first, and then **attach** it to the workspace. For more information, see [Create a private Azure Kubernetes Service cluster](../aks/private-clusters.md).
45
45
46
-
- Using a [public fully qualified domain name (FQDN) with a private AKS cluster](../aks/private-clusters.md#create-a-private-aks-cluster-with-a-public-fqdn) is __not supported__ with Azure Machine learning.
46
+
- Using a [public fully qualified domain name (FQDN) with a private AKS cluster](../aks/private-clusters.md) is __not supported__ with Azure Machine learning.
47
47
48
48
- The compute name for the AKS cluster MUST be unique within your Azure ML workspace. It can include letters, digits and dashes. It must start with a letter, end with a letter or digit, and be between 3 and 24 characters in length.
49
49
@@ -428,4 +428,4 @@ az aks get-credentials -g <rg> -n <aks cluster name>
428
428
429
429
*[Use Azure RBAC for Kubernetes authorization](../aks/manage-azure-rbac.md)
430
430
*[How and where to deploy a model](how-to-deploy-and-where.md)
431
-
*[Deploy a model to an Azure Kubernetes Service cluster](how-to-deploy-azure-kubernetes-service.md)
431
+
*[Deploy a model to an Azure Kubernetes Service cluster](how-to-deploy-azure-kubernetes-service.md)
Copy file name to clipboardExpand all lines: articles/machine-learning/how-to-secure-inferencing-vnet.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ In this article you learn how to secure the following inferencing resources in a
59
59
### Azure Kubernetes Service
60
60
61
61
* If your workspace has a __private endpoint__, the Azure Kubernetes Service cluster must be in the same Azure region as the workspace.
62
-
* Using a [public fully qualified domain name (FQDN) with a private AKS cluster](../aks/private-clusters.md#create-a-private-aks-cluster-with-a-public-fqdn) is __not supported__ with Azure Machine learning.
62
+
* Using a [public fully qualified domain name (FQDN) with a private AKS cluster](../aks/private-clusters.md) is __not supported__ with Azure Machine learning.
63
63
64
64
<aid="aksvnet"></a>
65
65
@@ -288,4 +288,4 @@ This article is part of a series on securing an Azure Machine Learning workflow.
288
288
*[Secure the training environment](how-to-secure-training-vnet.md)
289
289
*[Enable studio functionality](how-to-enable-studio-virtual-network.md)
290
290
*[Use custom DNS](how-to-custom-dns.md)
291
-
*[Use a firewall](how-to-access-azureml-behind-firewall.md)
291
+
*[Use a firewall](how-to-access-azureml-behind-firewall.md)
0 commit comments