如何使 EBS 卷在零停机时间可用并在 ebs 卷崩溃时附加到 EC2 实例?

时间:2021-06-25 06:53:51

标签: amazon-web-services amazon-ec2 amazon-elb amazon-ebs aws-application-load-balancer

我有一个 r5.xlarge windows ec2 实例,它连接到 6TB EBS 卷,每周都会进行 EBS 备份。 现在我想要一个零停机时间更好的解决方案。

  1. 如果 ec2 实例失败,我希望创建新的 ec2 实例,并且它应该自动附加到 EBS 卷。
  2. 如果 EBS 卷崩溃,我希望备份快照可用并附加到 ec2 实例,零停机时间和卷内容立即可用。

有没有办法为此实施解决方案以及如何实施?

2 个答案:

答案 0 :(得分:3)

如果您想提高大驱动器的可用性,我会推荐 FSx。这不是那么简单 - 您需要设置 Active Directory,并且您的 EC2 需要加入 AD - 但是一旦您拥有所有这些组件(并且还有额外的成本)- 假设您正在使用,FSx 提供比 EBS 高得多的可用性多可用区设置。 更多信息here

请注意,负载均衡器标签与您的问题无关 - 尽管要解决您的第一种情况,您可能需要负载均衡器平衡两个 EC2 实例

答案 1 :(得分:1)

您应该尝试使用 Elastic BeanStalk,它会自行处理自动缩放。您只需要在创建时配置设置。 这应该是您需要的最接近的解决方案,正如上面 Marcin 所解释的那样,2 个单点故障没有零停机时间。因此,Elastic BeanStalk 似乎是最适合您的解决方案。

更新:

因此,在这种情况下,您可以做的是添加负载平衡并添加自动缩放,以便您的问题的第一点得到注意,如果 ec2 实例因自动缩放而出现故障,将创建一个新实例,并在shell 脚本可以添加命令以映射到 EBS。 对于 EBS,您无能为力,您可以进行定期备份,如果 EBS 出现故障,则将其替换为最新的备份或快照,还可以查看以下链接: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-restoring-volume.html