如何在S3存储桶中从已上载的VMDK映像创建实例

时间:2014-09-29 06:11:50

标签: linux amazon-web-services amazon-ec2 amazon-s3 openstack

我已使用以下命令将我的VMDK文件上传到S3存储桶:

s3cmd put /root/Desktop/centos-ldaprad.vmdk --multipart-chunk-size-mb=10 s3://xxxxx

现在,当我想从S3存储桶中可用的相同VMDK创建AWS实例时:

ec2-import-instance centos-ldaprad.vmdk -f VMDK -t t2.micro -a x86_64 -b xxxxx -o <XXXX_ACCESS_KEY_XXXX> -w <XXXX_SECRET_KEY_XXX> -p Linux --dont-verify-format -s 5 --ignore-region-affinity

但它查找源VMDK文件的当前工作目录。如果您可以指导如何将源VMDK指向存储桶而不是本地源,我会非常高兴吗?

这个--manifest-url url是否指向S3存储桶?但是当我上传时,不知道它是否创建了这样的文件?如果它创建了它将被创建的位置?

另一件事是在创建它时使用上面ec2-import-instance在当前工作目录中搜索VMDK,如果发现它将开始上传。但有没有规定上传部分内容以及在中断的情况下恢复?

1 个答案:

答案 0 :(得分:0)

这不是您所追求的答案,但我已经附加了用于上传VMDK并将其转换为AMI图像的脚本。

这使用ec2-resume-import,因此如果上传部分失败,您可以重新启动它。

http://pastebin.com/bD8c3gQu

值得指出的是,当我注册设备时,我指定了一个块设备映射。这是因为我的图像总是包含一个单独的启动分区和一个基于LVM的根分区。

- root-device-name / dev / sda1 -b / dev / sda = $ SNAPSHOT_ID:10:true - region $ REGION -a x86_64 --kernel aki-52a34525