以下是我在Azure Kubernetes群集扩展上遇到的一个问题的要点:一个AKS群集定义了最多32个节点。有时,它需要超过32个节点,从以下四个中选择两个最佳选择:
集群自动缩放器
容器实例
卧式豆荚洁牙机
手动缩放
以下是Microsoft Azure网站上相关文档的链接:
https://docs.microsoft.com/en-us/azure/aks/concepts-scale
经历了它,我仍然不知道哪两个是最佳选择。如我所见,Cluster Autoscaler和Horizontal Pod Scaler可以一起工作以实现自动缩放,但是它们必须遵守部署时定义的最大32个节点限制吗?否则,您必须使用容器实例和手动缩放?
我没有足够的现实生活经验来尝试回答这种情况。有经验的人可以提出建议吗?
答案 0 :(得分:1)
要自动缩放AKS,最好的方法是在AKS群集和HPA中都使用自动缩放。 HPA是Pod的自动缩放,而AKS群集是节点的自动缩放。
HPA设置为满足您为豆荚定义的要求:在这种情况下,豆荚的数量应增加或减少。而AKS自动缩放,这是一个自动规则,如果资源不足,则将增加节点数,如果资源需求少于现有资源,则将减少节点数。群集自动缩放器通常与水平容器自动缩放器一起使用,它也显示在Cluster autoscaler中,如下所示:
集群自动缩放器通常与水平窗格一起使用 自动定标器。结合使用时,水平吊舱自动缩放器会增加或 根据应用程序需求减少Pod的数量,并且 群集自动缩放器可根据需要调整运行这些节点的节点数 相应地添加其他豆荚。
对于限制,有三点:
希望这将帮助您了解AKS中的自动缩放。还有其他问题,请让我知道。
答案 1 :(得分:0)
有两种缩放方式:手动缩放和自动缩放,如果您遵循手动缩放,则分别为清单文件和Azure AKS门户中的容器(Pods)和节点定义最小或最大限制。
对于自动扩展,增加容器(Pods)的数量成为 HPA(Horizontal Pod AutoScaler)和 cluster-autoscaler 用于自动扩展集群节点的职责。
通常,并非将体系结构中的所有组件都需要配置为HPA,因此,您需要专门计划并弄清楚哪些组件或服务需要HPA,哪些不需要。
当然,您不需要手动缩放,因为没人愿意在半夜起床并增加资源限制来应对流量高峰。 HPA没有限制,群集中的节点有限制,我想是100个节点而不是32个。您可以通过在Azure Support Request上进行请求来进一步增加。