You need to enable JavaScript to run this app.
导航
创建智能伸缩
最近更新时间:2024.10.21 17:31:17首次发布时间:2024.07.24 16:08:01

智能 HPA(Intelligent Horizontal Pod Autoscaler,IHPA)基于数据驱动预测扩缩容目标,提供精细化控制工作负载副本数的能力,降低原生 HPA 实际弹性滞后对业务影响。

说明

邀测·申请试用】:该功能目前处于邀测阶段,如需使用,请提交申请。

前提条件

  • 已创建集群,且集群版本满足如下要求:
    • v1.24 版本集群,需升级至 v1.24.15-vke.13 及以上版本。
    • v1.26 版本集群,需升级至 v1.26.10-vke.13 及以上版本。
    • v1.28 版本集群,需升级至 v1.28.3-vke.15 及以上版本。

    说明

    若您的集群版本不符要求,可以升级集群。详情请参见 升级集群

  • 已开启云原生观测,详情请参见 开启观测

操作步骤

步骤一:安装组件

说明

若您的集群中已安装 katalyst 组件,则需要将组件升级至 v0.5.6-vke.6 及以上版本。详情请参见 升级组件

  1. 登录 容器服务控制台
  2. 单击左侧导航栏中的 集群
  3. 在集群列表页面,单击需要配置的目标集群。
  4. 在集群管理页面的左侧导航栏中,选择 组件管理
  5. 选择 调度 页签,找到 katalyst 组件,选择该组件右上角的 ... > 安装
    alt
  6. 勾选开启 智能伸缩
    alt
  7. 单击 确认,完成组件安装。

步骤二:创建弹性伸缩策略

  1. 在集群管理页面的左侧导航栏中,选择 弹性伸缩 > 智能伸缩,单击 创建智能伸缩,使用控制台创建伸缩规则。

    • 基本信息
      alt
      配置项说明
      名称配置智能伸缩的名称,集群内名称唯一。

      预测模式

      配置智能伸缩的预测模式,包括:

      • 预览:仅基于配置的智能伸缩策略进行工作负载扩缩容预览,不会实际增加或减少工作负载的副本数。
      • 自动:支持基于配置的智能伸缩策略,自动完成工作负载的自动扩缩容。
      命名空间选择伸缩策略所属的命名空间。建议选择您自定义的命名空间或系统默认创建的 default 命名空间。命名空间相关介绍,请参见 命名空间概述
      标签对应 Kubernetes 中的 Label,用于指定该伸缩策略的标识属性。单击 添加标签,根据界面提示输入符合要求的  和 
      注解对应 Kubernetes 中的 Annotation,用于为伸缩策略附加任意非标识的元数据,包括 标签 不允许的字符,方便客户端能够检索此元数据。单击 添加注解,根据界面提示输入符合要求的  和 
    • 伸缩策略
      alt
      配置项说明
      伸缩对象配置需要伸缩的工作负载。在下拉菜单中选择工作负载的类型和具体的工作负载。工作负载类型支持 无状态负载有状态负载

      检测指标

      单击 添加监测指标,配置工作负载弹性伸缩的监测指标,系统基于此指标决定是否需要进行伸缩。包括:

      • CPU 利用率:按所有 Pod 实例 CPU 使用量 / 所有 Pod 实例 CPU 请求量的百分比作为监测指标,当 CPU 利用率达到该值,则进行伸缩。
      • 内存利用率:按所有 Pod 实例内存使用量 / 所有 Pod 实例内存请求量的百分比作为监测指标,当内存利用率达到该值,则进行伸缩。
      最小实例数配置伸缩时的最小实例数。策略触发时,工作负载实例将在最小和最大实例数范围内伸缩。
      最大实例数配置伸缩时的最大实例数。策略触发时,工作负载实例将在最小和最大实例数范围内伸缩。
      预测分位数预测分位数,业务指标实际值低于设定目标值的概率,越大表示越保守。正整数形态,取值范围为 1~100,推荐取值范围为 90~99。
      冷启动时间Pod 达到 Ready 状态所需要的时间。
    • 伸缩规则
      alt
      配置项说明
      扩缩容策略配置工作负载的扩缩容行为,勾选 扩容策略缩容策略,分别配置扩容策略行为和缩容策略行为。

      静默时间

      扩容策略或缩容策略的静默时间,整数形式,单位为秒。
      系统完成扩缩容后,在静默时间内,不会再次执行扩缩容策略,避免工作负载副本数频繁变更造成系统震荡。

      策略类型

      配置策略类型,包括:

      • 最大值:执行影响 Pod 数量最大的策略。
      • 最小值:执行影响 Pod 数量最小的策略。
      • 禁用:禁用该扩容策略或缩容策略。

      策略

      配置扩缩容的具体策略行为,包括:

      • 类型:配置扩缩容策略行为的类型。
        • 容器组:基于 Pod 数量执行扩缩容。
        • 百分比:基于 Pod 百分比执行扩缩容。
      • 阈值:配置扩缩容行为的阈值,与 类型 配合使用。例如:当 类型 配置为 容器组,阈值配置为 10 时,表示在 时间间隔 内扩容或缩容 10 个副本。
      • 时间间隔:配置扩缩容速率,整数形式,取值范围为 1~1800,单位为秒。
    • 生效时段
      alt
      配置项说明
      开始时间配置智能 HPA 的开始生效时间,精确到秒。

      结束时间

      配置智能 HPA 的结束时间,包括:

      • 永久:指结束时间为永久,即永不过期。
      • 具体时间:配置具体的结束时间,精确到秒。结束时间不得早于开始时间。

      定时伸缩策略

      配置定时伸缩策略,包括:

      • 定时重复:可选择 按小时按天按周按月 的某一时间点定时伸缩。也可以输入 Cron 语句定义重复时间,配置方法请参见 Cron 语句
      • 最小实例数:配置定时伸缩时的最小实例数。
      • 最大实例数:配置定时伸缩时的最大实例数。
  2. 单击 确定,完成配置。

结果验证

查看概览

  1. 在集群管理页面的左侧导航栏中,选择 弹性伸缩 > 智能伸缩,在智能伸缩策略列表中,单击策略名称,进入策略详情页面。
  2. 选择 概览 页签,查看智能伸缩策略的配置详情。

alt

查看事件

  1. 在集群管理页面的左侧导航栏中,选择 弹性伸缩 > 智能伸缩,在智能伸缩策略列表中,单击策略名称,进入策略详情页面。
  2. 选择 事件 页签,查看智能伸缩策略的事件详情。

alt