【问题标题】:Moving EC2 Instances from one region to another将 EC2 实例从一个区域移动到另一个区域
【发布时间】:2015-07-22 13:14:21
【问题描述】:

我正在尝试将 EC2 实例从一个区域迁移到另一个区域。当区域 A 中的 EC2 出现故障时,我如何让它在区域 B 中启动?我很难弄清楚该怎么做。我知道如何在一个区域内的可用区内复制 EC2 实例,但我看到了很多文章:

https://media.amazonwebservices.com/AWS_Migrate_Resources_To_New_Region.pdf http://www.serverwatch.com/server-tutorials/moving-ec2-instances-across-availability-zones-or-aws-regions.html

声明我需要使用第三方脚本才能完成此操作。有没有人有将 EC2 实例从一个区域移动到另一个区域的经验?

【问题讨论】:

  • 您可以将实例的 AMI 复制到另一个区域。这可以通过 Web 控制台轻松完成。要使用 CLI 执行此操作,请执行以下操作: aws ec2 copy-image --source-image-id ami-5731123e --source-region us-east-1 --region ap-northeast-1 --name "My server"

标签: amazon-web-services amazon-ec2 failover


【解决方案1】:

出于冗余目的,无需将图像从一个区域复制到另一个区域。每个区域都有多个availability zones,它们旨在在给定区域内提供完整的容错能力。一个区域内的每个可用区都是一个物理上不同的数据中心,根据区域的不同,可能有 3 到 5 个可用区。一个地区的 3 个或更多可用区同时遭受中断的可能性非常小。

根据您的应用程序的复杂性,您可能会获得非常好的容错能力,只需在同一区域内的多个可用区中部署多个 EC2 实例并将弹性负载均衡器 (ELB) 放在应用程序前面即可。

另一种容错方法是使用auto scaling,它不仅可以确保始终运行您的应用程序的 EC2 实例数量最少,而且如果应用程序的负载增加,可以自动启动更多实例。 Auto Scaling 也可以在一个单一的原因内跨可用区部署,以帮助确保容错。在最简单的级别上,如果您创建一个具有最少和最多 1 个 EC2 实例的 Auto Scaling 组,那么 AWS 将确保您的应用程序已经在运行,如果 EC2 实例由于任何原因失败,那么它将启动一个新实例来替换它。

如果您确实决定需要将实例从一个区域复制到另一个区域,则需要多个步骤。您不能简单地将实例从一个区域复制到另一个区域,因此您需要为您感兴趣的 EC2 实例创建一个 Amazon 系统映像 (AMI),将 AMI 传输到新区域,然后启动新的基于该 AMI 的 EC2 实例。过去需要为此使用第三方工具,但亚马逊现在提供了直接执行此操作的能力。请参阅this documentation on copying AMI's 了解如何执行此操作。

【讨论】:

  • 布鲁斯 - 感谢您的洞察力!不幸的是,对于我的用例,我必须将一个实例从一个区域复制到另一个区域。话虽如此,您是否知道在区域 B 的 EC2 实例中自动创建此 AMI 的方法?
  • 您需要先create an AMI 退出区域 A 中的 EC2 实例。然后,如果您使用ec2-copy-image,它应该将 AMI 从区域 A 复制到 B,并为您提供区域 B 中新 AMI 的名称。
【解决方案2】:

即使我明白前面的人回答背后的原因,他/她仍然没有回答你的问题。

因此,要将 AMI 从一个区域移动到另一个区域,只需在控制台中单击 AMI 并选择“复制 AMI”,它会询问您要将其复制到哪个区域。选择目的地,您就完成了。

希望这会有所帮助。 彼得五世。

https://aws.amazon.com/about-aws/whats-new/2013/03/12/announcing-ami-copy-for-amazon-ec2/

【讨论】:

    【解决方案3】:

    使用 create-image AWS CLI 命令创建 AMI,然后使用 copy-image CLI 命令将映像复制到新区域。

    如果要克隆安全组、标记实例和删除旧实例,整个过程会稍微复杂一些,最多涉及 14 个步骤。

    我在https://medium.com/@gmusumeci/how-to-move-an-ec2-instance-to-another-aws-region-69ebaa68f12d写了一篇详细解释所有这些步骤的博客

    吉列尔莫

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-19
      • 1970-01-01
      • 2021-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-15
      • 2018-02-18
      相关资源
      最近更新 更多