可以在 Azure Stack Hub 上使用 scale 命令通过 AKS 引擎扩展 Kubernetes 群集。 该 scale 命令将输出目录中的群集配置文件(apimodel.json)作为新的 Azure 资源管理器部署的输入重复使用。 引擎针对指定的代理池执行缩放操作。 完成缩放作后,引擎会更新同 一apimodel.json 文件中的群集定义,以反映新的节点计数,以反映更新的当前群集配置。
缩放群集
对于 AKS 引擎版本 0.73.0 及更低版本:该 aks-engine scale 命令可以增加或减少 Kubernetes 群集中现有代理池中的 aks-engine 节点数。
对于 AKS 引擎版本 0.75.3 及更高版本:该 aks-engine-azurestack scale 命令可以增加或减少 Kubernetes 群集中现有代理池中的 aks-engine 节点数。
节点将始终从代理池的末尾添加或删除。 删除之前,将封锁和清空节点。
scale 命令的参数
缩放命令使用以下参数来查找群集定义文件并更新群集。
| 参数 | Example | Description |
|---|---|---|
| azure-env | AzureStackCloud | 在 Azure Stack Hub 上,环境名称应为 AzureStackCloud。 |
| 位置 | 本地的 | Azure Stack Hub 实例的区域。 对于 ASDK,区域设置为 local. |
| resource-group | kube-rg | 包含群集的资源组的名称。 |
| 订阅ID | 包含群集使用的资源的订阅的 GUID。 确保您的订阅有足够的配额以进行扩展。 | |
| 客户端ID | 用于从 AKS 引擎创建群集的服务主体的客户端 ID。 | |
| client-secret | 创建群集时使用的服务主体机密。 | |
| API模型 | kube-rg/apimodel.json | 群集定义文件的路径(apimodel.json)。 该文件可能位于: _output/<dnsPrefix>/apimodel.json |
| 新节点计数 | 9 | 所需节点计数。 |
| apiserver | 主服务器 FQDN。 缩小规模时需要。 | |
| 身份识别系统 | adfs | 可选。 如果使用 Active Directory 联合服务(AD FS),请指定标识管理解决方案。 |
在 Azure Stack Hub 中缩放群集时,必须指定 --azure-env 参数。 有关 AKS 引擎 缩放 命令中使用的参数及其值的详细信息,请参阅 Scale - parameters。
用于扩展集群的命令
若要缩放群集,请运行以下命令:
注释
对于 AKSe 版本 0.75.3 及更高版本,用于缩放群集的命令是 aks-engine-azurestack scale。
aks-engine scale \
--azure-env AzureStackCloud \
--location <for an ASDK is local> \
--resource-group <cluster resource group>
--subscription-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--client-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--client-secret xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--api-model <path to your apomodel.json file>
--new-node-count <desired node count> \
--apiserver <master FQDN> \
--identity-system adfs # required if using AD FS