4

如果 EC2 实例出现故障并且自动扩展启动了新实例,我如何将旧 EBS 卷自动移动到新实例?

EBS 卷可能包含大量数据,并且备份不是即时的,因此自动重定位卷可能是保存数据的最佳方式。

4

3 回答 3

4

如果 EC2 实例出现故障并且自动扩展启动了新实例,我如何将旧 EBS 卷自动移动到新实例?

没有 API 调用可以自动执行此操作。但是你可以编写一个守护进程来启动一个带有正确参数的新盒子。

不幸的是,如果您关心灾难恢复,您想要做的并不是一个好的策略:

1)当一个盒子死掉时,EBS卷可能会在分离状态“卡住”几个小时(我实际上已经看到> 24小时)。

2)如果您的区域有问题,您可以轻松地在其他区域启动实例,但您不能在区域之间移动驱动器。

相反,您最好从快照启动,这解决了这两个问题。

(您也可以考虑像 CEPH、GFS、AFS 等分布式文件系统。)

于 2013-06-03T23:25:02.550 回答
1

我认为您正在寻找的是S3。如果您认为某些数据需要由其他 ec2 实例共享。那么您应该将该数据保存在 S3 上,而不是 EBS 卷本身。任何 EC2 实例都可以轻松访问 S3 上的数据,即使位于网络位置之外,延迟也非常小。EBS 卷应该与该 EC2 本身相关联。

于 2013-05-25T11:46:43.493 回答
-3

自动缩放不仅应该启动一个新实例,还应该将相同的 EBS 卷附加到它。只要先前的 EC2 实例终止,AWS 就会自动分离 EBS 卷。如果您使用的是 Elastic Beanstalk,我建议您使用ebextensions. 否则,您应该依赖OpsWorks

或者通过 SDK/API 手动执行此附件。

于 2013-06-03T19:11:54.953 回答