更新时间:2024-09-29 GMT+08:00

Kubernetes Metrics Server

从Kubernetes 1.8开始,Kubernetes通过Metrics API提供资源使用指标,例如容器CPU和内存使用率。这些度量可以由用户直接访问(例如,通过使用kubectl top命令),或者由集群中的控制器(例如,Horizontal Pod Autoscaler)使用来进行决策,具体的组件为Metrics-Server,用来替换之前的heapster,heapster从1.11开始逐渐被废弃。

Metrics Server是集群核心资源监控数据的聚合器,您可以在CCE控制台快速安装本插件。

安装本插件后,可创建HPA策略,具体请参见创建HPA策略

社区官方项目及文档:https://github.com/kubernetes-sigs/metrics-server

安装插件

  1. 登录CCE控制台,单击集群名称进入集群,单击左侧导航栏的“插件中心”,在右侧找到Kubernetes Metrics Server插件,单击“安装”
  2. 在安装插件页面,根据需求选择“规格配置”

    • 选择“系统预置规格”时,您可根据需求选择“单实例”或“高可用”,系统会根据不同的预置规格配置插件的实例数及资源配额,具体配置值请以控制台显示为准。

      “单实例”不具备高可用能力;“高可用”具有高可用能力,但多实例部署需占用更多的计算资源。

    • 选择“自定义规格”时,您可根据需求调整插件实例数和资源配额。实例数为1时插件不具备高可用能力,当插件实例所在节点异常时可能导致插件功能无法正常使用,请谨慎选择。

  3. 设置插件实例的部署策略。

    • 调度策略对于DaemonSet类型的插件实例不会生效。
    • 设置多可用区部署或节点亲和策略时,需保证集群中存在满足调度策略的节点且拥有足够的资源,否则插件实例将无法运行。
    表1 插件调度配置

    参数

    参数说明

    多可用区部署

    • 优先模式:优先将插件的Deployment实例调度到不同可用区的节点上,如集群下节点不满足多可用区,插件实例将调度到单可用区下的不同节点。
    • 均分模式:插件Deployment实例均匀调度到当前集群下各可用区,增加新的可用区后建议扩容插件实例以实现跨可用区高可用部署;均分模式限制不同可用区间插件实例数相差不超过1,单个可用区资源不足会导致后续其他实例无法调度。
    • 强制模式:插件Deployment实例强制调度到不同可用区的节点上,每个可用区下最多运行一个实例。如集群下节点不满足多可用区,插件实例将无法全部运行。节点故障后,插件实例存在无法迁移风险。

    节点亲和

    • 不配置:插件实例不指定节点亲和调度。
    • 指定节点调度:指定插件实例部署的节点。若不指定,将根据集群默认调度策略进行随机调度。
    • 指定节点池调度:指定插件实例部署的节点池。若不指定,将根据集群默认调度策略进行随机调度。
    • 自定义亲和策略:填写期望插件部署的节点标签实现更灵活的调度策略,若不填写将根据集群默认调度策略进行随机调度。

      同时设置多条自定义亲和策略时,需要保证集群中存在同时满足所有亲和策略的节点,否则插件实例将无法运行。

    容忍策略

    容忍策略与节点的污点能力配合使用,允许(不强制)插件的 Deployment 实例调度到带有与之匹配的污点的节点上,也可用于控制插件的 Deployment 实例所在的节点被标记污点后插件的 Deployment 实例的驱逐策略。

    插件会对实例添加针对node.kubernetes.io/not-readynode.kubernetes.io/unreachable污点的默认容忍策略,容忍时间窗为60s。

    详情请参见设置容忍策略

  4. 单击“安装”

组件说明

表2 metrics-server组件

容器组件

说明

资源类型

metrics-server

集群核心资源监控数据的聚合器,用于收集和聚合集群中通过Metrics API提供的资源使用指标。

Deployment

版本记录

表3 Kubernetes Metrics Server插件版本记录

插件版本

支持的集群版本

更新特性

社区版本

1.3.68

v1.21

v1.23

v1.25

v1.27

v1.28

v1.29

v1.30

适配CCE v1.30集群

0.6.2

1.3.60

v1.21

v1.23

v1.25

v1.27

v1.28

v1.29

适配CCE v1.29集群

0.6.2

1.3.39

v1.21

v1.23

v1.25

v1.27

v1.28

修复部分问题

0.6.2

1.3.37

v1.21

v1.23

v1.25

v1.27

v1.28

适配CCE v1.28集群

0.6.2

1.3.12

v1.19

v1.21

v1.23

v1.25

v1.27

-

0.6.2

1.3.8

v1.19

v1.21

v1.23

v1.25

插件挂载节点时区

0.6.2

1.3.6

v1.19

v1.21

v1.23

v1.25

  • 支持插件实例AZ反亲和配置
  • 默认污点容忍时长修改为60s

0.6.2

1.3.3

v1.19

v1.21

v1.23

v1.25

  • 适配CCE v1.25集群
  • CronHPA调整Deployment实例数,新增skip场景

0.6.2

1.3.2

v1.19

v1.21

v1.23

v1.25

适配CCE v1.25集群

0.6.2

1.2.1

v1.19

v1.21

v1.23

适配CCE v1.23集群

0.4.4

1.1.10

v1.15

v1.17

v1.19

v1.21

适配CCE v1.21集群

0.4.4

1.1.4

v1.15

v1.17

v1.19

资源规格配置单位统一化

0.4.4

1.1.2

v1.15

v1.17

v1.19

同步至社区v0.4.4版本

0.4.4

1.1.1

v1.13

v1.15

v1.17

v1.19

支持自定义资源规格配置,最大无效实例数改为1

0.3.7

1.1.0

v1.13

v1.15

v1.17

v1.19

适配CCE v1.19集群

0.3.7

1.0.5

v1.13

v1.15

v1.17

更新至社区v0.3.7版本

0.3.7