使用云监控和弹性伸缩实现弹性架构设计
实验概述
需要创建2台部署了云监控插件的ECS实例。
配置负载均衡实例的监听配置,创建ECS实例的自定义镜像。
在创建弹性伸缩服务,配置报警任务,将已创建的ECS实例加入伸缩组和负载均衡实例后端。最后,增加ECS的CPU使用率达到100%,通过弹性伸缩服务,自动新建ECS实例并添加到负载均衡实例后端。
实验目标
完成此实验后,可以掌握的能力有:
创建弹性伸缩组;
创建报警任务;在CPU达到指定范围时,自动弹出ECS实例;
弹性伸缩服务与负载均衡服务和云监控的结合应用。
使用场景
视频公司,游戏公司,电商公司,经常会遇到如下的场景:
节假日热门节目,播放点击率很高;
在商品特卖,或者促销活动中,大量客户访问量,无法预估业务负载情况;
游戏公测期间,无法预估客户访问量;
面对如上的场景,需要一个可以根据用户的业务需求,自动调整其弹性资源的管理服务。在业务需求高峰期增长时,无需停止服务,无缝的增加计算资源。在业务量下降时,可以自动减少计算资源,从而节约成本。
阿里云提供弹性伸缩服务,该产品可以对根据客户的业务需求,对ECS实例进行增减。用户无需提前预估业务高峰期,或者突增的业务访问量,就可以自动的分配资源。
专业术语
关于阿里云的弹性伸缩服务,其涉及的术语如下:
伸缩组:具有相同应用场景的ECS实例的集合。伸缩组定义了组内ECS实例数的最大值,最小值及其相关的SLB和RDS实例等属性;
伸缩配置:定义了弹性伸缩的ECS实例的配置信息;
伸缩规则:定义了具体的扩展或收缩操作,例如:移入或移出N个ECS实例;
伸缩活动:伸缩规则成功出发后,就会产生一条伸缩活动。伸缩活动主要描述伸缩组内ECS实例的变化情况;
伸缩触发任务:用于触发伸缩规则的任务,如定时任务,云监控的报警任务;
冷却时间:在同一伸缩组内,一个伸缩活动执行完成后的一段锁定时间。在这段锁定时间,该伸缩组不执行其他的伸缩活动。
实验步奏
监听
添加2个ECS(我手贱,多创建了一台)

1) 后端协议[端口]:“HTTP”;80
2) 开启监听带宽限速:输入 1 M

后端服务器中选择默认服务器组,点击继续添加,选择平台创建好的ECS实例,配置端口:80 权重:50,90.100,完成监听配置。


配置弹性伸缩服务
本实验使用阿里云提供的“整体方案创建管理”的功能,该功能通过向导模式,创建整体伸缩方案。
创建完整的弹性伸缩方案,需要通过如下4步完成:
- 创建伸缩组,添加ECS实例;
- 创建伸缩配置;
- 创建报警任务。
创建伸缩组(顺带添加ECS实例)
- 点击页面顶部的“产品与服务”,在弹出的服务列表中,依次选择“弹性计算”,“弹性伸缩”服务。进入弹性伸缩服务管理控制台。
注意负载均衡要选上
查看实例列表
伸缩配置
创建报警任务
测试
安装测试工具yum install -y stress
然后执行压力测试命令
1 | stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10m |
