云容器引擎 CCE-重调度(Descheduler):重调度功能介绍

时间:2024-05-31 08:37:37

重调度功能介绍

负载感知重调度(LoadAware)

在K8s集群治理过程中,常常会因CPU、内存等高使用率状况而形成热点,既影响了当前节点上Pod的稳定运行,也会导致节点发生故障的几率的激增。为了应对集群节负载不均衡等问题,动态平衡各个节点之间的资源使用率,需要基于节点的相关监控指标,构建集群资源视图,在集群治理阶段,通过实时监控,在观测到节点资源率较高、节点故障、Pod 数量较多等情况时,可以自动干预,迁移资源使用率高的节点上的一些Pod到利用率低的节点上。

图1 LoadAware策略示意图

使用该插件时,highThresholds需要大于lowThresholds,否则重调度器无法启用。

  • 正常节点:资源利用率大于等于30%且小于等于80%的节点。此节点的负载水位区间是期望达到的合理区间范围。
  • 热点节点:资源利用率高于80%的节点。热点节点将驱逐一部分Pod,降低负载水位,使其不超过80%。重调度器会将热点节点上面的Pod调度到空闲节点上面。
  • 空闲节点:资源利用率低于30%的节点。

CPU和内存资源碎片率整理策略(HighNodeUtilization)

从分配率低的节点上驱逐Pod。这个策略必须与Volcano调度器的binpack策略或者kube-scheduler调度器的MostAllocated策略一起使用。阈值可以分为CPU和内存两种资源角度进行配置。

support.huaweicloud.com/usermanual-cce/cce_10_0766.html