Skip to content

Commit c7ef27c

Browse files
authored
Merge pull request #181391 from miwithro/patch-96
Update private-clusters.md
2 parents 9fea44a + 3642bb1 commit c7ef27c

File tree

3 files changed

+26
-40
lines changed

3 files changed

+26
-40
lines changed

articles/aks/private-clusters.md

Lines changed: 22 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Create a private Azure Kubernetes Service cluster
33
description: Learn how to create a private Azure Kubernetes Service (AKS) cluster
44
services: container-service
55
ms.topic: article
6-
ms.date: 8/30/2021
6+
ms.date: 11/30/2021
77

88
---
99

@@ -13,6 +13,8 @@ In a private cluster, the control plane or API server has internal IP addresses
1313

1414
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.
1515

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+
1618
## Region availability
1719

1820
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
2224
2325
## Prerequisites
2426

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.
2629
* The Private Link service is supported on Standard Azure Load Balancer only. Basic Azure Load Balancer isn't supported.
2730
* 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.
2831

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-
4132
## Create a private AKS cluster
4233

4334
### Create a resource group
@@ -53,6 +44,7 @@ az group create -l westus -n MyResourceGroup
5344
```azurecli-interactive
5445
az aks create -n <private-cluster-name> -g <private-cluster-resource-group> --load-balancer-sku standard --enable-private-cluster
5546
```
47+
5648
Where `--enable-private-cluster` is a mandatory flag for a private cluster.
5749

5850
### Advanced networking
@@ -74,6 +66,22 @@ Where `--enable-private-cluster` is a mandatory flag for a private cluster.
7466
> [!NOTE]
7567
> If the Docker bridge address CIDR (172.17.0.1/16) clashes with the subnet CIDR, change the Docker bridge address appropriately.
7668
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+
7785
## Configure Private DNS Zone
7886

7987
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
150158
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>
151159
```
152160

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.
161-
162-
![Public DNS](https://user-images.githubusercontent.com/50749048/124776520-82629600-df0d-11eb-8f6b-71c473b6bd01.png)
163-
164-
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-
175161
## Options for connecting to the private cluster
176162

177163
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.

articles/machine-learning/how-to-create-attach-kubernetes.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Azure Machine Learning can deploy trained machine learning models to Azure Kuber
4343

4444
- 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).
4545

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.
4747

4848
- 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.
4949

@@ -428,4 +428,4 @@ az aks get-credentials -g <rg> -n <aks cluster name>
428428

429429
* [Use Azure RBAC for Kubernetes authorization](../aks/manage-azure-rbac.md)
430430
* [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)

articles/machine-learning/how-to-secure-inferencing-vnet.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ In this article you learn how to secure the following inferencing resources in a
5959
### Azure Kubernetes Service
6060

6161
* 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.
6363

6464
<a id="aksvnet"></a>
6565

@@ -288,4 +288,4 @@ This article is part of a series on securing an Azure Machine Learning workflow.
288288
* [Secure the training environment](how-to-secure-training-vnet.md)
289289
* [Enable studio functionality](how-to-enable-studio-virtual-network.md)
290290
* [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

Comments
 (0)