教程:在由 Azure Arc 启用的 AKS 中缩放应用程序
适用于:Azure Stack HCI 22H2 上的 AKS、Windows Server 上的 AKS
如果已完成前面的教程,则 AKS 中应有一个正常运行的 Kubernetes 群集,并且还部署了示例 Azure 投票应用。
本教程第 5 部分(共 7 部分)介绍了在应用中横向扩展 Pod。 将了解如何执行以下操作:
- 缩放 Kubernetes 节点
- 手动缩放运行应用程序的 Kubernetes Pod
在后面的教程中,Azure 投票应用程序将更新为新版本。
开始之前
前面的教程介绍了如何将应用程序打包到容器映像中,将映像上传到Azure 容器注册表,以及如何创建 Kubernetes 群集。 然后,将应用程序部署到了该群集。 如果尚未完成这些步骤,请从 教程 1 - 为 Arc 启用的 AKS 准备应用程序开始。
手动缩放 Pod
前面的教程介绍了如何部署 Azure 投票应用前端和 Redis 实例来创建单个副本。 若要查看群集中 Pod 的数目和状态,请使用以下 kubectl get 命令:
kubectl get pods
以下示例输出显示一个前端 Pod 和一个后端 Pod:
NAME READY STATUS RESTARTS AGE
azure-vote-back-2549686872-4d2r5 1/1 Running 0 31m
azure-vote-front-848767080-tf34m 1/1 Running 0 31m
若要手动更改 azure-vote-front 部署中的 Pod 数,请使用 kubectl scale 命令。 以下示例将前端 Pod 数增加到 5:
kubectl scale --replicas=5 deployment/azure-vote-front
再次运行 kubectl get pods,验证命令是否成功创建其他 Pod。 大约一分钟后,即可在群集中使用 Pod:
kubectl get pods
READY STATUS RESTARTS AGE
azure-vote-back-2606967446-nmpcf 1/1 Running 0 15m
azure-vote-front-3309479140-2hfh0 1/1 Running 0 3m
azure-vote-front-3309479140-bzt05 1/1 Running 0 3m
azure-vote-front-3309479140-fvcvm 1/1 Running 0 3m
azure-vote-front-3309479140-hrbf2 1/1 Running 0 15m
azure-vote-front-3309479140-qphz8 1/1 Running 0 3m
缩放节点池中的工作器节点
如果使用上一教程中的命令创建了 Kubernetes 群集,则部署具有名为 mycluster 的群集,其中包含一个名为 linuxnodepool 的 Linux 节点池,该池的节点计数为 1。
使用 Set-AksHciNodePool 命令缩放节点池。 以下示例将节点池从 1 个扩展到 3 个 Linux 节点:
Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3
如果需要缩放控制平面节点,请使用 Set-AksHciCluster 命令。
注意
Set-AksHciNodePool 命令用于缩放节点池中的辅助角色节点。 在不支持工作负载群集中的节点池的早期 AKS 版本中,使用了 Set-AksHciCluster 命令。 只能使用 Set-AksHciCluster
缩放使用 New-AksHciCluster 中的旧参数集创建的群集中的辅助角色节点。
运行以下命令,确认缩放是否成功:
Get-AksHciNodePool -clusterName mycluster
ClusterName : mycluster
NodePoolName : linuxnodepool
Version : v1.20.7
OsType : Linux
NodeCount : 3
VmSize : Standard_K8S3_v1
Phase : Deployed
后续步骤
在本教程中,在 Kubernetes 群集中使用了不同的缩放功能。 你已了解如何执行以下操作:
- 手动缩放运行应用程序的 Kubernetes Pod
- 手动缩放 Kubernetes 节点
请继续学习下一教程,了解如何在 Kubernetes 中更新应用程序。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈