更新时间:2024-11-08 GMT+08:00

HPA策略

HPA策略即Horizontal Pod Autoscaling,是Kubernetes中实现POD水平自动伸缩的功能。该策略在Kubernetes社区HPA功能的基础上,增加了应用级别的冷却时间窗和扩缩容阈值等功能。

前提条件

使用HPA需要安装能够提供Metrics API的插件:

创建HPA策略

  1. 在CCE控制台,单击集群名称进入集群。
  2. 单击左侧导航栏的“策略”,切换至“HPA策略”页签,在右上角单击“创建HPA策略”
  3. 填写HPA基本信息。

    • 策略名称:新建策略的名称,请自定义。
    • 命名空间:请选择工作负载所在的命名空间。
    • 关联工作负载:请选择要设置HPA策略的工作负载。

  4. 填写HPA策略配置参数。

    表1 HPA策略配置

    参数

    参数说明

    实例范围

    请输入最小实例数和最大实例数。

    策略触发时,工作负载实例将在此范围内伸缩。

    伸缩配置

    • 系统默认:采用社区推荐的默认行为进行负载伸缩,详情请参见社区默认行为说明
    • 自定义:自定义扩/缩容配置的稳定窗口、步长、优先级等策略,实现更灵活的配置。未配置的参数将采用社区推荐的默认值。
      • 禁止扩/缩容:选择是否禁止扩容或缩容。
      • 稳定窗口:需要伸缩时,会在一段时间(设定的稳定窗口值)内持续检测,如在该时间段内始终需要进行伸缩(不满足设定的指标期望值)才进行伸缩,避免短时间的指标抖动造成异常。
      • 步长策略:扩/缩容的步长,可设置一定时间内扩/缩容Pod数量或百分比。在存在多条策略时,可以选择使Pod数量最多或最少的策略。

    系统策略

    • 指标:可选择“CPU利用率”“内存利用率”
      说明:

      利用率 = 工作负载容器组(Pod)的实际使用量 / 申请量

    • 期望值:请输入期望资源平均利用率。

      期望值表示所选指标的期望值,通过向上取整(当前指标值 / 期望值 × 当前实例数)来计算需要伸缩的实例数。

      说明:

      HPA在计算扩容、缩容实例数时,会选择最近5分钟内实例数的最大值。

    • 容忍范围:指标处于范围内时不会触发伸缩,期望值必须在容忍范围之间。

      当指标值大于缩容阈值且小于扩容阈值时,不会触发扩容或缩容。阈值仅在1.15及以上版本的集群中支持

  5. 设置完成后,单击“创建”