写在前面
前期回顾
本期简介
本章将会讲解云计算中的弹性伸缩概念,应用场景,工作原理,与产品优势。
弹性伸缩 是根据业务需求和策略自动调整计算能力(实例数量)的服务。
课程目标
重点:了解弹性伸缩的应用场景,工作原理。
一.弹性伸缩基本概念
1,弹性伸缩
是根据业务需求和策略自动调整计算能力(实例数量)服务。可以指定实例的类型,即ECS实例或ECI实例。
业务需求增长时,弹性伸缩自动增加指定类型的实例。来保证计算能力,在业务需求下降时,自动减少指定类型实例,节约成本。
2.伸缩组
是具有相同应用场景,相同实例的实例集合。伸缩组定义了组中可容纳实例数的最大最小值,关联负载均衡实例,关联RDS实例属性。
3.伸缩模式
- 定时伸缩
- 动态伸缩
- 固定数量模式
- 自定义模式
- 健康模式
- 多模式并行
4.组内配置信息来源
根据选择的组内实例配置信息来获取实例配置信息,并根据配置信息创建实例。
5.伸缩规则
- 步进规则,目标追踪规则,简单规则:触发伸缩活动时控制增加,减少实例数量
- 预测规则:基于历史监控数据预测未来的指标值,并智能设置伸缩组边界值
6.自动触发任务
定时任务:可以在指定的时间扩缩容
报警任务:指定的监控动态扩缩容
7.伸缩活动
记录伸缩组实例数,伸缩边界值,期望实例数等的变化情况,执行伸缩规则,修改边界值,修改期望实例数等操作都会触发伸缩活动。
8.期望实例数
为伸缩组开启期望实例数功能后,伸缩组会自动将实例数量维持在期望实例数,无需人工干预。
9.并行伸缩活动
手动执行伸缩规则,通过定时任务活动为并行伸缩活动
手动添加ECS实例,手动移除ECS
期望实例数检查任务,最大最小值检查任务
如果有执行中的并行伸缩活动,可以再次触发它并行伸缩活动。
10.非并行伸缩活动
并行伸缩活动以为的活动均属于非并行伸缩活动,如果有执行中的非并行伸缩活动,不能再触发其他伸缩活动。
11.稳态实例
指伸缩组中处于服务中,保护中和备用中状态的ECS实例。
12,伸缩组流程
手动暂停,恢复的流程,扩容流程,定时任务,报警任务。
13.伸缩组内实例的生命周期
伸缩组内ECS实例或ECI实例从创建开始到释放结束的过程。ECS实例或ECI实例的生命周期管理方式和创建类型有关。
1,弹性伸缩,自动创建ECS实例或ECI实例:
2,手动创建的ECS实例或ECI实例:
14.生命周期挂钩
用于挂起加入或移出中的ECS实例或ECI实例。挂起期间对ECS实例或ECI实例进行自定义操作。
15.冷却时间
是指同一伸缩组内成功完成一个伸缩活动后的一段锁定时间。
在冷却时间内,伸缩组会拒绝云监控报警任务触发伸缩活动的请求,避免因监控指标值波动导致频繁触发伸缩活动。
二.弹性伸缩产品优势
弹性伸缩具有自动化,降成本,高可用,灵活智能以及易审计等优势。
自动化:无需人工干预,避免手动操作而引发错误
降低成本:节约了人力资源成本和时间成本
审计:弹性伸缩自动记录每一个伸缩活动的详细信息,有助于快速定位问题根源,降低排查难度。
高可用:弹性伸缩支持检测ECS实例的健康状况。
灵活智能
弹性伸缩的功能丰富,灵活智能,高可用,可以有效降低手动配置的复杂度,提高操作效率。
弹性伸缩应用场景
场景一
无规律的业务量波动
某新闻网站播出了热点新闻,访问量突增,新闻的时效性降低后,访问量回落。由于该新闻网站的业务量波动无规律,访问量突增和回落的具体时间难以预测,所以手动调整实例很难做到及时性,而且调整数量也不确定。
场景二
有规律的业务量波动
某游戏公司每天18:00业务需求急速增长进入高峰期,到22:00业务需求降低,高峰期结束。该游戏公司的业务量波动有规律,但是每天手动调整计算能力浪费人力和时间成本。
场景三
无明显的业务量波动
某通信公司的业务支撑系统需要全天运作,业务量一段时间内无明显波动。如果现有计算资源突然出现故障,会导致业务受到影响,很难及时进行故障修复或者替换。
场景四
混合型的业务场景
如果某公司的业务场景比较复杂,日常业务量波动不明显,且在某个时间段内,业务量是在一定基础上波动的,您已经订购了一部分包年包月的实例,只是想针对波动的业务量合理调整实例数量。
三.弹性伸缩工作原理
弹性伸缩增加ECS实例的工作流程如下所示,如果某Web应用使用ECS实例处理业务请求。系统架构分为三层(如上图右侧虚线框所示)。其中,最上层的负载均衡负责将客户端的请求转发给伸缩组内的ECS实例,中间层的伸缩组内的ECS实例负责处理客户端请求,最下层的RDS数据库负责存储来自ECS实例的业务数据。
配置
自动根据配置适时触发伸缩活动,增加或移出伸缩组内的实例。
弹性伸缩示意图
弹性伸缩支持为伸缩组关联负载均衡和RDS实例。当您从终端(例如移动端或PC端)发起请求时,负载均衡负责将您的请求转发给伸缩组内的某台ECS实例,ECS实例接收并处理请求,并将应用数据保存在云数据库RDS实例上。弹性伸缩根据业务需求和配置方式自动调整伸缩组内的ECS实例数量,以下分别是扩容、缩容和弹性自愈(即健康检查)场景下弹性伸缩的示意图。