【问题标题】:Amazon EC2 - Convert EBS root device with instance store root deviceAmazon EC2 - 使用实例存储根设备转换 EBS 根设备
【发布时间】:2011-08-10 09:27:17
【问题描述】:

我看到您可以将实例存储实例转换为支持 EBS,如 this question 所示。但是,我想做相反的事情,采用 EBS 支持的实例并将其转换为 Instance Store 支持。

这可能吗?我该怎么做?

【问题讨论】:

    标签: amazon-ec2 amazon-web-services cloud amazon-ebs


    【解决方案1】:
    1. 从 AMI 启动实例存储实例,该 AMI 使用与您的 EBS 支持的 AMI 使用的相同内核。

    2. 从基于 EBS AMI 的快照创建 EBS 卷。 (或者,启动 EBS AMI 的一个实例并在它开始启动时停止该实例。从实例中分离根卷 - 这通常是附加到 /dev/sda1 的卷。)

    3. 将 EBS 卷附加到实例存储实例。

    4. rsync 将 EBS 卷的内容同步到根卷。

    5. 使用标准方法创建实例存储 AMI。

    6. 分离 EBS 卷并将其删除。如果您在第 2 步中启动了 EBS 实例,请将其终止。

    【讨论】:

    • 请注意,这仅适用于 Linux VM(Windows 没有 rsync)。
    【解决方案2】:

    你可以试试这个:

    # Install ec2-tools (http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip)
    
    $ export EC2_PRIVATE_KEY=/path/to/your/key.pem
    $ export EC2_CERT=/path/to/your/sert.pem
    $ export AWS_ACCOUNT_ID=XXXX-XXXX-XXXX
    $ export AWS_KEY=YOURAWSKEY
    $ export AWS_SECRET_KEY=YOURAWSSECRETKEY
    
    $ ec2-bundle-vol -d /tmp -k $EC2_PRIVATE_KEY -c $EC2_CERT -u $AWS_ACCOUNT_ID
    $ ec2-upload-bundle -b s3-bucket-name -m /tmp/image.manifest.xml -a $AWS_KEY -s $AWS_SECRET_KEY
    $ ec2-register s3-bucket-name/image.manifest.xml -K $EC2_PRIVATE_KEY -C $EC2_CERT --region eu-west-1
    # In command above you can choose another region (e.g us-west-1)
    # By running command above you will see on your screen something like this: IMAGE   ami-3cc1a4a
    # Now you can create new instance based on your just registered ami-3cc1a4a using ec2-tools or Amazon Console
    

    祝你好运!

    【讨论】:

    • 这也是一个仅限 Linux 的解决方案
    • 您能否解释一下为什么需要私钥?我的理解是这是由 AWS 存储的,您无法指定路径。谢谢
    猜你喜欢
    • 2011-01-06
    • 1970-01-01
    • 2011-05-28
    • 1970-01-01
    • 2012-12-06
    • 2012-11-24
    • 2011-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多