繁体   English   中英

Kubernetes Horizo​​ntal Pod Autoscaler不使用节点资源

[英]Kubernetes Horizontal Pod Autoscaler not utilising node resources

我目前正在运行Kubernetes 1.9.7,并成功使用了Cluster Autoscaler和多个Horizo​​ntal Pod Autoscaler

但是,我最近开始注意到,在缩减副本时,HPA会倾向于使用较新的Pod。

例如,我有一个服务A的副本,它在节点上与其他几个服务一起运行。 该节点具有大量可用资源。 在加载期间,服务A的目标CPU利用率上升到配置的阈值之上,因此HPA决定将其扩展到2个副本。 由于没有其他可用节点,因此CAS跨越了一个新节点,在该节点上已成功调度了新副本-到目前为止一切顺利!

问题是,当目标CPU利用率降回到配置的阈值以下时,HPA决定缩减为1个副本。 我希望看到新节点上的新副本已删除,从而使CAS能够关闭该新节点。 但是,HPA删除了具有大量可用资源的,正在节点上运行的现有服务A副本。 这意味着我现在可以在新节点上单独运行服务A,即使有足够的空间在现有节点上安排服务A,CAS也无法删除它。

HPA或Kubernetes调度程序是否存在问题? 服务A现在已经在新节点上运行了48个小时,尽管现有节点上有足够的资源,但仍未重新计划。

在仔细研究了集群配置之后,我设法得出了为什么这样做的结论。

服务A配置为在公共子网上运行,并且CA创建的新节点为公共。 运行服务A原始副本的现有节点是私有的,因此导致HPA删除此副本。

我不确定首先如何将服务A调度到此节点上,但这是一个不同的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM