企业如何快速无痛的更换应用程序版本?

2020-09-02 10:38

前段时间,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. 确认无痛成功更新


二、配置 Auto Scaling 实例刷新

前期准备

1. 配置 EC2 开发环境 (本实验使用 Ubuntu + Apache)

2. 配置 ALB 及 Target Group

3. 制作 Web v1.0 镜像,配置 Auto Scaling


Web v1.0

1. 透过 ALB 域名访问 Web v1.0,如图1-1


图1-1


开发 Web v2.0

1. 在开发环境中更新 Web v2.0,如图2-1


图2-1


2. 制作 Web v2.0 镜像,如图2-2


图2-2


3. 勾选不重启避免服务中断,如图2-3


图2-3


使用Web v2.0 创建 Auto Scaling 启动模板

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. 应用程序无痛更版完成。




云代理伙伴
扫描关注微信公众号
获取更多云端资讯
联系我们
——

模板表单-2(1)

  • 姓名*

  • 电话*

  • 邮箱*

  • 职称*

  • 公司*

  • 地址*

  • 需求*

  • * 点击提交,即表示您同意我们存储和处理您提交的个人信息,以向您提供所请求的内容,该信息仅供公司提供服务使用。您的信息受到相关法律的安全保护。