你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
随着应用程序工作负荷需求的变化,可能需要缩放 Azure Kubernetes 服务(AKS)中节点池中的节点数。 本文介绍如何在 AKS 中手动自动缩放节点池。
AKS 节点池缩放的先决条件
- 具有至少一个节点池的现有 AKS 群集。 如果需要创建一个群集,请参阅 创建包含节点池的 AKS 群集。
- 需要安装并配置 Azure CLI 2.2.0 或更高版本。 运行
az --version即可查找版本。 如果需要安装或升级,请参阅 安装 Azure CLI。
手动缩放节点池
使用 [
az aks nodepool scale][az-aks-nodepool-scale] 命令缩放节点池中的节点数。 该--node-count标志指定节点池中所需的节点数。 在此示例中,节点池缩放为五个节点。az aks nodepool scale \ --resource-group <resource-group-name> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --node-count 5 \ --no-wait使用 [
az aks nodepool list][az-aks-nodepool-list] 命令检查节点池的状态。az aks nodepool list --resource-group <resource-group-name> --cluster-name <cluster-name>以下示例输出显示节点池处于 缩放 状态,新计数为 5 个节点:
[ { ... "count": 5, ... "name": "<node-pool-name>", "orchestratorVersion": "1.15.7", ... "provisioningState": "Scaling", ... "vmSize": "Standard_DS2_v2", ... }, { ... "count": 2, ... "name": "<node-pool-name-2>", "orchestratorVersion": "1.15.7", ... "provisioningState": "Succeeded", ... "vmSize": "Standard_DS2_v2", ... } ]需要花费几分钟时间来完成缩放操作。 缩放操作完成后,节点池的
provisioningState将更改为 成功。
使用群集自动缩放程序自动缩放节点池
可以将 群集自动缩放程序 与多个节点池配合使用,并且可以在单个节点池上启用它,并向其传递唯一的自动缩放规则。
使用带有
--update-cluster-autoscaler标志的 [az aks nodepool update][az-aks-nodepool-update] 命令在现有节点池上启用群集自动缩放器。 和--min-count--max-count标志指定节点池中的最小和最大节点数。 在此示例中,群集自动缩放程序启用,最小计数为一个节点,最大计数为五个节点:az aks nodepool update \ --resource-group <resource-group-name> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --update-cluster-autoscaler \ --min-count 1 \ --max-count 5
注释
如果要在节点池上禁用群集自动缩放程序,请使用 [--disable-cluster-autoscaler][az-aks-nodepool-update] 命令,并用 --disable-cluster-autoscaler 标志代替 --update-cluster-autoscaler 标志。
后续步骤:在 AKS 中管理节点池
若要详细了解如何在 AKS 中管理节点池,请参阅在 Azure Kubernetes 服务(AKS)中管理节点池。