弹性伸缩是根据业务需求和策略,经济地自动调整弹性计算资源的管理方式。本文介绍弹性伸缩的背景信息和弹性伸缩的组件信息。
背景介绍
弹性伸缩是K8s上被广泛采用的功能,典型的场景包含在线业务弹性、定时周期性负载变化等。ACS目前支持HPA和CronHPA弹性,通过感知应用负载或设定时间表,动态调整应用副本数,以确保资源的高效利用和服务的稳定性。
弹性伸缩组件介绍
组件名称 | 组件介绍 | 适用场景 | 使用限制 | 参考文档 |
HPA | Kubernetes内置组件,主要面向在线业务。 | 在线业务 | 适用于Deployment、StatefulSet等实现了scale接口的对象。 | |
CronHPA | 开源组件,主要面向应用资源使用率存在周期性变化的场景。 | 周期性负载业务 | 适用于Deployment、StatefulSet等,实现了scale接口的对象。此外CronHPA提供了HPA对象的兼容能力,您可以同时使用CronHPA与HPA。 | |
AHPA | 开源组件,主要面向有明显周期性场景。例如直播、在线教育、游戏服务等。 | 周期性负载业务 | 适用于Deployment、StatefulSet等实现了scale接口的对象。此外,AHPA弹性预测需要至少七天的应用历史数据作为预测基础。 |