我已经使用以下命令将我的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,如果找到它将开始上传。但是,是否有任何规定可以部分上传并在中断的情况下恢复?
最佳答案
这并不是您真正想要的答案,但是我附加了用于上传VMDK并将其转换为AMI映像的脚本。
此操作使用ec2-resume-import,因此如果上传部分失败,则可以重新启动它。
http://pastebin.com/bD8c3gQu
值得指出的是,当我注册设备时,我指定了块设备映射。这是因为我的映像始终包含一个单独的引导分区和一个基于LVM的根分区。
--root设备名称/ dev / sda1 -b / dev / sda = $ SNAPSHOT_ID:10:true --region $ REGION -a x86_64 --kernel aki-52a34525
关于linux - 如何从S3存储桶中已上传的VMDK镜像创建实例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26093513/