- 最新动态
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- UCS集群
- 容器舰队
- 集群联邦
- 镜像仓库
- 权限管理
-
策略中心
- 策略中心概述
- 策略定义与策略实例的基本概念
- 启用策略中心
- 创建和管理策略实例
- 示例:使用策略中心实现Kubernetes资源合规性治理
-
使用策略定义库
- 策略定义库概述
- k8spspvolumetypes
- k8spspallowedusers
- k8spspselinuxv2
- k8spspseccomp
- k8spspreadonlyrootfilesystem
- k8spspprocmount
- k8spspprivilegedcontainer
- k8spsphostnetworkingports
- k8spsphostnamespace
- k8spsphostfilesystem
- k8spspfsgroup
- k8spspforbiddensysctls
- k8spspflexvolumes
- k8spspcapabilities
- k8spspapparmor
- k8spspallowprivilegeescalationcontainer
- k8srequiredprobes
- k8srequiredlabels
- k8srequiredannotations
- k8sreplicalimits
- noupdateserviceaccount
- k8simagedigests
- k8sexternalips
- k8sdisallowedtags
- k8sdisallowanonymous
- k8srequiredresources
- k8scontainerratios
- k8scontainerrequests
- k8scontainerlimits
- k8sblockwildcardingress
- k8sblocknodeport
- k8sblockloadbalancer
- k8sblockendpointeditdefaultrole
- k8spspautomountserviceaccounttokenpod
- k8sallowedrepos
- 配置管理
- 服务网格
- 流量分发
- 可观测性
- 云原生服务中心
- 容器迁移
- 流水线
- 错误码
- 最佳实践
- API参考
- 常见问题
- 文档下载
- 通用参考
链接复制成功!
CronFederatedHPA工作原理
FederatedHPA是基于指标数据进行工作负载扩缩的,因此存在一定的时延。CronFederatedHPA策略基于固定的时间周期,而非指标数据对工作负载进行扩缩。
您可以对一些有周期性变化的工作负载应用CronFederatedHPA策略,在预期的业务高峰时提前扩容资源,预期的业务低谷时定时回收资源。
CronFederatedHPA工作原理
CronFederatedHPA的工作原理如图1。创建CronFederatedHPA策略时,可以设定一个具体的时间,基于设定的时间调整HPA策略的最大和最小Pod数,也可以直接定时调整工作负载中的Pod数量。
单独使用CronFederatedHPA
当不使用FederatedHPA策略,仅使用CronFederatedHPA策略时,CronFederatedHPA策略直接作用于工作负载,定时扩缩Pod数量。您可以通过设置CronFederatedHPA策略的生效时间与目标Pod数,实现在固定时间段将工作负载自动扩缩至期望数量。

具体流程为:
- 创建CronFederatedHPA策略,设置CronFederatedHPA的生效时间与目标Pod数。
- 生效时间:CronFederatedHPA策略会在该生效时间自动触发工作负载扩缩。
- 目标Pod数:在到达生效时间时,所期望的Pod数。
- 到达生效时间时,比较工作负载中的现有Pod数与1中设置的目标Pod数:目标Pod数大于现有Pod数时扩容工作负载,目标Pod数小于现有Pod数时缩容工作负载。
现有Pod数:CronFederatedHPA策略生效之前,工作负载中的Pod数量。
同时使用CronFederatedHPA与FederatedHPA
当同时使用FederatedHPA策略与CronFederatedHPA策略时,CronFederatedHPA策略不再直接作用于工作负载,而是在FederatedHPA策略的基础上生效,通过定时调整FederatedHPA策略的最大和最小实例数,实现定时扩缩工作负载的作用。

具体流程为:
- 创建CronFederatedHPA策略,设置CronFederatedHPA的生效时间与目标Pod数。
- 生效时间:CronFederatedHPA策略会在该生效时间自动触发工作负载扩缩。
- 目标Pod数:CronFederatedHPA设定的Pod数,在CronFederatedHPA生效时用于调整FederatedHPA的最大/最小Pod数,从而间接调整工作负载中的Pod数量。
- 到达生效时间时,比较工作负载的现有Pod数、FederatedHPA策略的最大Pod数、FederatedHPA策略的最小Pod数与1中设置的目标Pod数,根据上述四个指标的大小关系,调整FederatedHPA策略的最大和最小Pod数,FederatedHPA策略根据被调整后的最大和最小Pod数对工作负载进行扩缩。
- 现有Pod数:CronFederatedHPA策略生效之前,工作负载中的Pod数量。
- FederatedHPA策略的最大Pod数:工作负载的Pod数上限。
- FederatedHPA策略的最小Pod数:工作负载的Pod数下限。
图4与表1列出了在同时使用FederatedHPA策略与CronFederatedHPA策略的情况下可能出现的扩缩容场景。您可以通过表内的示例了解在现有Pod数、最大Pod 数、最小Pod数、目标Pod数的不同大小关系下,CronFederatedHPA策略会对使用FederatedHPA策略、工作负载产生怎样的影响。
场景 |
场景说明 |
目标Pod数 (CronFederatedHPA内设置) |
现有Pod数 (工作负载) |
最小Pod数/最大Pod数 (FederatedHPA内设置) |
最终结果 |
---|---|---|---|---|---|
场景一 |
目标Pod数 < 最小Pod数 ≤ 现有Pod数 ≤ 最大Pod数 |
3 |
5 |
4/10 |
|
场景二 |
目标Pod数 = 最小Pod数 ≤ 现有Pod数 ≤ 最大Pod数 |
4 |
5 |
4/10 |
|
场景三 |
最小Pod数 < 目标Pod数 < 现有Pod数 ≤ 最大Pod数 |
5 |
6 |
4/10 |
|
场景四 |
最小Pod数 < 目标Pod数 = 现有Pod数 ≤ 最大Pod数 |
5 |
5 |
4/10 |
|
场景五 |
最小Pod数 ≤ 现有Pod数 < 目标Pod数 < 最大Pod数 |
6 |
5 |
4/10 |
|
场景六 |
最小Pod数 ≤ 现有Pod数 < 目标Pod数 = 最大Pod数 |
10 |
4 |
4/10 |
|
场景七 |
最小Pod数 ≤ 现有Pod数 ≤ 最大Pod数< 目标Pod数 |
11 |
4 |
4/10 |
|