弹性伸缩
使用弹性伸缩(Auto Scaling),您可以根据业务需求和策略设置伸缩规则,在业务需求增长时自动为您增加ECS实例以保证计算能力,在业务需求下降时自动减少ECS实例以节约成本。
弹性伸缩不仅适合业务量不断波动的应用程序,同时也适合业务量稳定的应用程序。
弹性伸缩效果示例
您需要提前设置触发弹性伸缩的条件。
下图中,监控项为伸缩组内ECS实例的vCPU使用率平均值,并假设触发弹性扩张的阈值为80%,触发弹性收缩的阈值为30%。
弹性扩张
当您的业务升级时,弹性伸缩为您自动完成底层资源升级,避免访问延时和资源超负荷运行。
您可以配置云监控实时关注您的ECS实例使用情况。
例如,当云监控检测到伸缩组内的ECS实例vCPU使用率突破80%时,弹性伸缩根据您配置的伸缩规则弹性扩张ECS资源,自动创建合适数量的ECS实例,并自动添加ECS实例到负载均衡实例的后端服务器和RDS实例的访问白名单中。
弹性扩张时,弹性伸缩使用伸缩组的组内实例配置信息自动创建ECS实例,实例配置信息支持实例的规格、操作系统、用户自定义数据等,更多说明请参见组内实例配置信息来源概述。
您可以登录ECS管理控制台启动、停止已创建的ECS实例,也可以远程登录ECS实例修改系统配置。
弹性收缩
当您的业务需求下降时,弹性伸缩为您自动完成底层资源释放,避免资源浪费。
您可以配置云监控实时关注您的ECS实例使用情况。
例如,当云监控检测到伸缩组内的ECS实例vCPU使用率低于30%时,弹性伸缩根据您配置的伸缩规则弹性收缩ECS资源,自动释放合适数量的ECS实例,并自动从负载均衡实例的后端服务器和RDS实例的访问白名单中移除ECS实例。
弹性自愈
弹性伸缩提供健康检查功能,自动监控伸缩组内的ECS实例的健康状态,避免伸缩组内健康ECS实例低于您设置的最小值。
当检测到某台ECS实例处于不健康状态时。
弹性伸缩自动释放不健康ECS实例并创建新的ECS实例,自动添加新ECS实例到负载均衡实例的后端服务器和RDS实例的访问白名单中。
产品优势
功能概述
根据客户业务需求自动调整ECS实例数量。
自动向负载均衡的后端服务器组中添加或移除相应的ECS实例。
自动向RDS访问白名单中添加或移除ECS实例的IP。
产品特点
随需应变:根据需求“恰到好处”地分配资源,无需您提前预测需求变化,实时应对需求突增。
自动化:无需人工干预,自动创建和释放ECS实例,自动配置负载均衡和RDS访问白名单。
伸缩模式丰富:多模式兼容,可同时配置定时、动态、自定义、固定、健康模式,可通过API对接外在监控系统。
智能:智能调度云计算资源,应对各种复杂场景。
应用场景
某视频公司:春晚或每周五热门节目来临时,负载激增,需及时、自动扩展云计算资源。
某视频直播公司:业务负载变化难以预测,需要阿里云自动根据CPU利用率、应用负载、带宽利用率作为衡量指标进行弹性伸缩。
某游戏公司:每天中午12点及晚上6点到9点间需求增长,需要定时扩容。
某电商:在大促中,临时激增大量云服务器需求,需要在数分钟内实现从创建到可用。
功能限制
使用弹性伸缩时具有以下功能限制:
弹性伸缩只支持自动增加或减少伸缩组内ECS实例的数量,不支持自动提升或降低单台ECS实例的vCPU、内存、带宽等配置。
部署在伸缩组内ECS实例上的应用必须是无状态并且可横向扩展的。
伸缩组内ECS实例可能会被自动释放,因此不适合保存会话记录、应用数据、日志等信息。如有需要,您可以将会话记录等状态信息保存到独立的状态服务器,将应用数据保存到云数据库RDS,将日志存储到日志服务,更多说明请参见什么是云数据库RDS和什么是日志服务。
弹性伸缩不支持自动将ECS实例添加到Memcache实例的访问白名单,您需要自行添加,具体操作请参见设置IP白名单。
基本概念
弹性伸缩
弹性伸缩是根据用户的业务需求和策略,自动调整其弹性计算资源的管理服务。其能够在业务增长时自动增加 ECS 实例,并在业务下降时自动减少 ECS 实例。
伸缩组
伸缩组是具有相同应用场景的 ECS 实例的集合。伸缩组定义了组内 ECS 实例数的最大值、最小值及其相关联的负载均衡实例和 RDS 实例等属性。
伸缩配置
伸缩配置定义了用于弹性伸缩的 ECS 实例的配置信息。
伸缩规则
伸缩规则定义了具体的扩展或收缩操作,例如加入或移出 N 个 ECS 实例。
伸缩活动
伸缩规则成功触发后,就会产生一条伸缩活动。伸缩活动主要用来描述伸缩组内 ECS 实例的变化情况。
伸缩触发任务
用于触发伸缩规则的任务,如定时任务、云监控的报警任务。
冷却时间
冷却时间是指,在同一伸缩组内,一个伸缩活动执行完成后的一段锁定时间。在这段锁定时间内,该伸缩组不执行其他的伸缩活动。
备注
伸缩组包含伸缩配置、伸缩规则、伸缩活动。
伸缩配置、伸缩规则、伸缩活动依赖伸缩组的生命周期管理,删除伸缩组的同时会删除与伸缩组相关联的伸缩配置、伸缩规则和伸缩活动。
伸缩触发任务有定时任务、云监控报警任务等类型。
定时任务独立于伸缩组存在,不依赖伸缩组的生命周期管理,删除伸缩组不会删除定时任务。
云监控报警任务独立于伸缩组存在,不依赖伸缩组的生命周期管理,删除伸缩组不会删除报警任务。