«前の日記(2011-10-05 (Wed)) 最新 次の日記(2011-10-11 (Tue))» 編集

雑記帳


2011-10-07 (Fri) [長年日記]

[AWS] instance-storeのEC2をEBSブートのEC2に変換する

現在instance-storeで起動しているEC2のインスタンスを、EBSブートのEC2に変更することがあったので、その方法をまとめた。

ami-toolsのインストール

変換対象となるインスタンスに、ami-toolsをインストールする。

インスタンスのイメージファイルを作成する

現在動作しているEC2のバンドルボリュームを作成し、イメージに変換する。

# cd /tmp
# ec2-bundle-vol -d /tmp -u YOUR_ACCOUNT_NUMBER
# ec2-unbundle -m /tmp/image.manifest.xml -s /tmp/ -d /tmp/

EBSボリュームを用意する

EBSインスタンス用のEBSボリュームを作成し、アタッチする。

# ec2-create-volume --size 10 --availability-zone ap-southeast-1a
# ec2-attach-volume vol-48f73422 --instance i-32dda733 -d /dev/sdf1

EBSボリュームにイメージを書き込む

作成したイメージを、ddを使ってEBSに書きこむ。データサイズに応じて、それなりに時間がかかるので注意。

# dd if=/tmp/image of=/dev/sdf1

EBSによるAMIの作成

まず、EBSのスナップショットを作成する。

# ec2-create-snapshot vol-48f73422

すこし時間がかかるので、作成されたのを待ってAMIを登録する。

# ec2-register --snapshot snap-2d2ccf46 --description="migrated image" --architecture i386 --root-device-name /dev/sda1 --name migrated image

これで作成されたAMIはEBSブートとなる。