2011-12-07 242 views
5

我想将亚马逊EC2竞价型实例作为CI服务器运行。 为了保留历史信息,我希望将所有数据保留在单独的EBS卷上,因为每当它终止时,现货实例的EBS卷将被删除。启动亚马逊EC2竞价型实例时附加EBS

如何在启动过程中挂载EBS卷?

谢谢, 伊多。

回答

5

你可以有一个init脚本重视的已有量,使用这个命令:

ec2-attach-volume volume_id --instance instance_id --device device 

为了这个工作,你需要

  1. EC2-API安装在机器

  2. 你需要有EC2_PRIVATE_KEYEC2_CERT作为一个环境变量或将要明确地传递。

  3. 您试图附加的音量应该可用。或者,您可以选择强制detach the volume

  4. 您可以使用curl http://169.254.169.254/latest/meta-data/instance-id来获取当前实例的instance_id。

参见:

希望这有助于。

+0

有什么办法可以做到这一点与根卷?据推测,你不能使用init脚本,因为如果它已经使用根磁盘来运行脚本,那么现有的EBS磁盘已经为时过晚了,无法成为根卷? –

+0

也要注意init脚本是由root运行的,所以你的凭证需要以root身份加入。 awscli特别需要这个。连接设备后,可能需要明确安装。 – mckenzm