我有一个由ebs支持的实例在EC2上运行。我正在使用它对存储在sdb上的大约16Gb数据(即与实例相关联的更大的ebs卷)进行一些计算密集型文本处理。

我想通过创建此实例的副本来并行化处理,每个副本都有自己的数据副本。我可以从实例创建一个AMI,但我需要该镜像同时包含sda(根ebs卷)和sdb,这是所有数据所在的卷。如何制作整个包装的副本?

在AWS管理控制台中创建镜像仅会复制sda(即根卷,该卷太小,无法容纳我的数据)。

这有可能吗?

(PS:我什至在AWS管理控制台Elastic Block Store-> Volumes面板中都看不到sdb卷)

谢谢!

最佳答案

我曾经需要这种设置,我必须在EBS支持的计算机上设置MySQL,并将数据存储在单独的EBS卷中。 AMI必须确保每次实例化时都应附加数据量(其中包含静态数据)。这是我做的:

  • 从任何现有图像
  • 创建一个EBS支持的实例
  • 附加一个EBS卷,执行mkfs,安装在/database
  • 将数据复制到卷,例如在/database/mysql
  • 从AMI Web控制台创建了此设置的图像。

  • 现在,每次启动此镜像时,都将看到包含所有数据的卷。我只是将其安装在/database上,事情就开始了。

    我不确定,这是否对您有帮助,但是您的问题似乎已经接近于此。

    @NAD发表评论后更新

    是的,AMI创建过程排除了以下
       /sys
       /proc
       /dev
       /media
       /mnt
    

    因此,诀窍是在这些目录下没有想要与AMI捆绑在一起的东西。

    另外,如果您有要在启动时自动挂载的卷,请在 fstab 中注册

    关于amazon-ec2 - 我可以创建一个包含多个ebs卷(即sda和sdb)的AMI吗,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6951960/

    10-13 02:12