前段时间,AWS在中国区的服务新增了一项功能:Amazon EC2 Auto Scaling 实例刷新。使用这项新功能,您可以自动更新 Auto Scaling 组 (ASG) 中的实例,以发布新的应用程序版本或更改基础设施。
传统上,客户必须编写自定义脚本并构建系统才能使用新的 AMI 更新 ASG 配置。
现在,借助新的“实例刷新”功能,客户现在可以触发配置更新,例如移至新的 AMI 和更改实例类型。您可以通过一次性或逐个替换实例将这些更新推送到 ASG。
一、Auto Scaling 实例刷新
1. 创建一台EC2 做为Web 开发环境
2. 将 Web v1.0 版本制作成黄金镜像
3. 配置 ALB 提高环境高可用性
4. 使用 Web v1.0 黄金镜像启用 Auto Scaling
5. 确认透过 ALB 访问正常
6. 开发 Web v2.0
7. 将 Web v2.0 版本制作成黄金镜像
8. 使用 Web v2.0 黄金镜像修改Auto Scaling Group
9. 进行实例刷新
10. 确认无痛成功更新
1. 配置 EC2 开发环境 (本实验使用 Ubuntu + Apache)
2. 配置 ALB 及 Target Group
3. 制作 Web v1.0 镜像,配置 Auto Scaling
1. 透过 ALB 域名访问 Web v1.0,如图1-1
图1-1
1. 在开发环境中更新 Web v2.0,如图2-1
图2-1
2. 制作 Web v2.0 镜像,如图2-2
图2-2
3. 勾选不重启避免服务中断,如图2-3
图2-3
1. 进入 Auto Scaling 启动配置
2. 选取旧有启动配置,点击操作,点选复制启动配置,如图3-1
图3-1
3. 点选编辑 AMI,如图3-2
图3-2
4. 更改为 Web v2.0 镜像,如图3-3
图3-3
5. 选择 Auto Scaling组,点击操作并编辑,如图3-4
图3-4
6. 选择 Web v2.0 启动配置,点击保存,如图3-5
图3-5
1. 切换到新版 Auto Scaling组控制界面,如图4-1
图4-1
2. 选择 Auto Scaling组,点击下方实例刷新,如图4-2
图4-2
3. 配置最小运行正常百分比及实例预热时间,点击启动,如图4-3
图4-3
1. 等待实例滚动更新,如图5-1
图5-1
2. EC2界面中可以看到新的机器启动,如图5-2
图5-2
3. 在 Auto Scaling组中可见新的实例,使用v2启动配置,并实例增加为3,如图5-3
图5-3
4. 查看实例刷新状态,完成50%, 要更新的实例为1,如图5-4
图5-4
5. 这时访问 ALB 域名,已可以成功访问新版网站,如图5-5
图5-5
6. 查看实例界面,一台 Web v1.0 已删除,同时新增一台 Web v2.0,如图5-6
图5-6
7. 在 Auto Scaling组,实例管理中可见两台实例,使用v2启动配置,并v1实例减少为1,如图5-7
图5-7
8. 查看实例刷新状态,已改变为 Successful,完成百分比为 100%,如图5-8
图5-8
9. 查看 Auto Scaling组,实例管理只剩两台v2实例,如图5-9
图5-9
10. 查看实例界面,确认仅剩Web v2.0实例,并旧版已删除,如图5-10
图5-10
11. 再次访问 ALB 域名,确认皆为新版网站,如图5-11
图5-11
12. 应用程序无痛更版完成。