我们可以同时升级多个 EC2 实例中的版本吗?例如,假设我有 ELB 连接两个 EC2 实例。
- 实例 A(运行 PHP 5.3)
- 实例 B(运行 PHP 5.3)
这里如果我使用 PHP 5.4 升级实例 A,我是否必须在实例 B 中重复升级过程?
答案1
我们可以同时在多个 EC2 实例中升级版本吗?
简而言之,是的。您负责操作系统级别的一切(包括升级、软件、配置)。
你可以使用配置管理系统管理一组服务器,或者某种形式的编排同时对您的舰队执行行动。
这里如果我使用 PHP 5.4 升级实例 A,我是否必须在实例 B 中重复升级过程?
是的。您需要执行以下操作之一:
- 更新服务中所有现有的 EC2
- 终止所有现有的 EC2(并用新镜像替换它们)...不要一次性完成所有操作,否则你的网站可能会不堪重负
更多信息
如果您可以接受短时间内同时使用新旧应用程序,那么您有很多选择。以下是一个例子:
- 将 A 从 ELB-Service 中取出并升级到 5.4
- 重新投入使用前进行测试 A
- 将 A 放回 ELB 服务,确保流量成功到达
- 重复步骤,这次针对 B
您可能让其中一台服务器停机数秒或数分钟(对于更复杂的更新,停机时间会更长)。您还会有一段时间用户可能会从旧配置切换到新配置。
还有其他策略,例如您可能正在使用图像(AMI)和带有 Amazon ELB 的 AutoScaling,并且您可能想要(需要)更新图像、将其注册到 ELB 并终止 EC2(然后将被新实例图像替换)。
通常,与数据库相关的更改更难以规划,而且可能超出了您要求的范围。