你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在 Azure Kubernetes 服务 (AKS) 中部署和管理节点资源组锁定

适用于:✔️ AKS Automatic ✔️ AKS Standard

AKS 可将基础结构部署到订阅中,以用于连接和运行应用程序。 对节点资源组中的资源直接进行更改可能会影响群集操作或导致未来出现问题。 例如,缩放、存储或网络配置应通过 Kubernetes API 进行,而不是直接在这些资源上进行。

若要防止对节点资源组进行更改,可以应用拒绝分配,并阻止用户修改在 AKS 群集中创建的资源。

对于大多数 AKS 工作负荷,AKS 自动是建议的生产就绪默认值。 在 AKS Automatic 中,节点资源组锁定机制已预先配置,这是完全托管的节点资源组模型的一部分。

在 AKS 标准版中,节点资源组锁定是可选的,可以使用限制级别对其进行配置。

有关 AKS 自动的详细信息,请参阅 什么是 AKS 自动?

准备阶段

如果要使用 Azure CLI 配置 AKS 标准版锁定,则需要:

  • Azure CLI版本 2.44.0 或更高版本。 运行 az --version 即可找到当前版本。 如果需要进行安装或升级,请参阅安装 Azure CLI

限制级别

限制级别 Behavior
ReadOnly 可以查看节点资源组资源,但拒绝分配会阻止直接更新。
无限制 允许直接更新节点资源组资源。

AKS 自动化

AKS Automatic 群集已预先配置节点资源组锁定。 无需运行单独的启用命令。

若要创建 AKS 自动群集,请参阅创建Azure Kubernetes 服务 (AKS)自动群集

AKS 标准版:创建节点资源组锁定的群集

使用 az aks create 命令创建启用了节点资源组锁定的 AKS 标准集群,并将 --nrg-lockdown-restriction-level 标志设置为 ReadOnly。 此配置允许查看资源,但不能对其进行修改。

# Set environment variables
export RESOURCE_GROUP_NAME=<your-resource-group-name>
export CLUSTER_NAME=<your-cluster-name>

# Create an AKS Standard cluster with node resource group lockdown
az aks create \
    --name $CLUSTER_NAME \
    --resource-group $RESOURCE_GROUP_NAME \
    --nrg-lockdown-restriction-level ReadOnly \
    --generate-ssh-keys

AKS 标准版:使用节点资源组锁定更新群集

使用 az aks update 命令并将 --nrg-lockdown-restriction-level 标志设置为 ReadOnly,更新启用了节点资源组锁定的现有 AKS Standard 群集。 此配置允许查看资源,但不能对其进行修改。

# Set environment variables
export RESOURCE_GROUP_NAME=<your-resource-group-name>
export CLUSTER_NAME=<your-cluster-name>

# Update an existing AKS Standard cluster with node resource group lockdown
az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP_NAME --nrg-lockdown-restriction-level ReadOnly

AKS 标准版:删除节点资源组锁定

使用 az aks update 命令,将 --nrg-lockdown-restriction-level 标志设置为 Unrestricted,从现有 AKS 标准群集中删除节点资源组锁定。 此配置允许查看和修改资源。

# Set environment variables
export RESOURCE_GROUP_NAME=<your-resource-group-name>
export CLUSTER_NAME=<your-cluster-name>

# Remove node resource group lockdown from an existing AKS Standard cluster
az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP_NAME --nrg-lockdown-restriction-level Unrestricted

常见问题 (FAQ)

在 AKS Automatic 中,节点资源组是否默认启用了锁定功能?

是的,它在 AKS 自动群集上预配置。

是否需要在 AKS 自动上运行锁定命令?

否,锁定命令适用于 AKS 标准配置。

何时应在 AKS 标准版上使用 ReadOnly?

如果你希望针对直接编辑基础结构提供更强的保护,并倾向于通过 AKS 和 Kubernetes API 进行群集更改,请使用 ReadOnly。