2011年3月23日水曜日

他のEBSもアタッチ済みのAMIを作成(AWS)

スズキです。

昔、「EC2の障害復旧パターン」ってのを書きましたが、
http://blog.suz-lab.com/2011/01/ec2.html

そこの"Stop/Start"してもだめだった場合を、まさに体験してしまいました...

突然EC2の反応がなくなり、リブートを試みるも、リブート後も反応が無いままです...
次に"Stop/Start"ですが、Stoppingでずっととまってしまい、
Startできる気配がまったくありません...

仕方ないのでEBSのスナップショットを取得して、
そこからAMIを作成しての復旧を試みます。

スナップショットからAMIを作成する方法は、すでに下記で紹介済みですが、
http://blog.suz-lab.com/2011/03/ebs-aws-management-console-ebs-amazon.html

今回はEBSを追加でアタッチしていたので、
そのEBSがアタッチ済みのインスタンスが起動するようなAMIを作成しなければいけません。

ということで、今回のAMI作成コマンドはこんな感じになりました。
(Windowsのコマンドプロンプトでの実行です)

> ec2reg ^
? -K pk.pem ^
? -C cert.pem ^
? --region us-west-1 ^
? -s snap-xxxxxxxx ^
? -b "/dev/sdb1=snap-yyyyyyyy:100:false" ^
? -a x86_64 ^
? -n suz-lab-ami-0.0.0

ポイントは、

-b "/dev/sdb1=snap-yyyyyyyy:100:false"

です。

"/dev/sdb1"にsnap-yyyyyyyy(スナップショット)から作成した100GのEBSをアタッチして、
インスタンスを起動しなさい。インスタンスをターミネートしても、
そのEBSは削除しない(false)ように、といった意味合いです。

とりあえず、15分くらいで復旧完了...
--------
http://www.suz-lab.com

0 コメント: