5

我们已收到 AWS 的“计划停用的实例”通知表。它会影响我们的主要数据库服务器。根据我所阅读的内容,最简单的方法是停止实例然后重新启动它。

我的理解是它基本上会在物理上重新分配当前实例,这会导致 IP 更改。但是,除此之外,还有什么可以改变的。

目前即将退役的实例正在作为我们的主要数据库服务器运行。它由应用程序服务器(具有 20 多个 Web 应用程序)和从属数据库服务器实例连接。

应用服务器和db实例的连接字符串使用AWS内部计算机名(即Data Source=IP-0A882XXX;User ID=username;Password=password;Initial Catalog=dbName;Failover Partner=IP-0A80XXX),以后不要修改停止/重启。我是对的吗?

还有什么我应该注意的吗?比如安全、防火墙设置等?

如果有人能指出我的清单,将不胜感激!

4

2 回答 2

5

停止和启动 EBS 启动 EC2 实例类似于重新启动它,但有以下主要例外:

  • 新的内部和外部IP地址(弹性IP地址需要重新关联)

  • 临时存储上的文件丢失

我写了以下文章,该文章更详细地列出了所有需要考虑的细节:

重启与停止/启动 Amazon EC2 实例 - Alestic.com

您的实例的内部 EC2 DNS 名称与内部 IP 地址匹配,因此它在停止/启动时更改,并且需要在您的应用程序服务器上进行更新。

您可以使用以下技巧在移动数据库服务器时不必修改客户端:

  • 为内部实例分配弹性 IP

  • 在客户端实例中使用外部弹性 IP DNS 名称。

EC2 DNS 服务器在从同一区域的另一个 EC2 实例查询时返回该实例的内部 IP 地址。

我写了以下文章,详细介绍了如何执行此操作及其工作原理:

使用弹性 IP 识别 Amazon EC2 上的内部实例

于 2013-06-17T02:34:50.230 回答
0

我想我应该把我的最终解决方案放在这里,以帮助像我这样没有设置 EIP 的人在处理实例退休时。

1.在当前实例(principal、mirror、monitor)上启用弹性IP

2.停止/重启实例(根据您自己的服务器基础设施需要其他准备)

.. 使用新设置更新数据实例并重新配置镜像.......

3.更新应用程序服务器主机文件以使用迁移后获得的新内部 ip 实例指向旧的 DNS 名称(注意:这是一个 HACK,但它为我赢得了逐步更新所有 60 多个 Web 应用程序的时间)

4.有计划地更新网络应用程序。(在新部署中使用正确的连接字符串进行更新)

5.一切更新为新的公共域名后删除主机记录。

幸运的是,这只是一个过程。

一些带走:

  • 对于数据库实例,确实没有理由不首先设置 EIP。阅读:http : //aws.amazon.com/ec2/pricing/#elastic-ip 然后阅读下面来自@Eric Hammond 的报价,你就会知道为什么

EC2 DNS 服务器在从同一区域的另一个 EC2 实例查询时返回该实例的内部 IP 地址。

  • 如果我当时就参与了这个项目(或未来任何大型企业规模的项目),我可能会选择 VPC 而不是 EC2 实例。
于 2013-06-20T02:44:43.783 回答