1. 节点调度不均问题
(1)概述
近期发现集群中有的节点资源使用率占用很高,有的节点资源使用率很低,基本处于空闲状态,在尝试重新部署应用后并没有解决实际问题,因此尝试寻找一些方式优化资源调度使节点负载更加均衡。
(2)原因分析
(3)解决方法
-
按实际用量配置 Pod 的 request
根据Kubernetes的调度策略可以得知,资源相关的打分算法 LeastRequestedPriority 和 MostRequestedPriority 都是基于 request 来进行评分,而不是按 Node 当前资源水位进行调度(在没有安装 Prometheus 等资源监控相关组件之前,kube-scheduler 也无法实时统计 Node 当前的资源情况),所以可以动态采 Pod 过去一段时间的资源使用率,据此来设置 Pod 的Request,才能契合 kube-scheduler 默认打分算法,让 Pod 的调度更均衡。 -
为资源占用较高的 Pod 设置反亲和
对一些资源使用率较高的 Pod ,进行反亲和,防止这些项目同时调度到同一个 Node,导致 Node 负载激增。