云容器引擎 CCE-节点伸缩原理:AutoScaler架构

时间:2023-11-01 16:25:55

AutoScaler架构

AutoScaler架构如图1所示,主要由以下几个核心模块组成:

图1 AutoScaler架构图

说明如下:

  • Estimator: 负责扩容场景下,评估满足当前不可调度Pod时,每个节点池需要扩容的节点数量。
  • Simulator: 负责缩容场景下,找到满足缩容条件的节点。
  • Expander: 负责在扩容场景下,根据用户设置的不同的策略来,从Estimator选出的节点池中,选出一个最佳的选择。当前Expander有多种策略:
    • Random: 随机选择一个节点池,如果用户没有设置的话,默认是Random。
    • most-Pods: 选择此次扩容后能满足调度最多Pod的节点池,如果有相同的,再随机选择一个。
    • least-waste: 选择此次扩容完成后,具有最小浪费的CPU或者Mem资源的节点池。
    • price: 选择此次扩容所需节点金额最小的节点池。
    • priority: 根据用户自定义的权重,选择权重最高的节点池。

当前CCE提供除Price以外的所有的策略,当前CCE插件默认使用least-waste策略。

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