[解決済]Amazon Linux 2014.09(Instance Stored-backed)からAMIを作成するとEC2インスタンスのStatusChecksが失敗する件について

投稿者: | 2014/10/07

先月、Amazon Linux AMI 2014.09がリリースされましたね。
仕事の案件でVPCを新規に構築しているのですが、せっかくなので最新のAMIを使おうと決めていました。今回は事情により、Instance Stored-backed(S3ベース)のEC2インスタンスを使う必要があったため、amzn-ami-hvm-2014.09.0.x86_64-s3 (ami-f70827f6)からEC2インスタンスを起動することにしました。

Chefで必要なコンポーネントをインストールして、Instance Store-Backed Linux AMI の作成を参考にAMIを作成し、いざEC2インスタンスを起動してみると、

instance-run-failed

Instance Status Checksが失敗しています。
原因を探ろうと思ったのですが、SSHログインもできず、正常起動しないのでManagementConsoleからSystemLogも見れません。。。

色々試してみた結果、EC2インスタンスが起動する・しないパターンがわかってきました。

AMI 仮想化方式 結果(○・・・起動成功、×・・・起動失敗)
amzn-ami-hvm-2014.09.0.x86_64-s3 (ami-f70827f6) HVM ×
amzn-ami-pv-2014.09.0.x86_64-s3 (ami-bb0827ba) PV ×
amzn-ami-hvm-2014.03.2.x86_64-s3 (ami-a3c18fa2) HVM
amzn-ami-pv-2014.03.2.x86_64-s3 (ami-9bdc929a) PV

分かったこと

  • Amazon Linux 2014.09 のAMIからはEC2インスタンスが正常に起動できる
  • 仮想化方式(HVM, PV)は関係ない
  • Amazon Linux 2014.03 からAMIを作成するとEC2インスタンスの起動に成功する
  • Amazon Linux 2014.03 でもyum updateしてカーネル等をバージョンアップすると起動に失敗する
  • VPC,Non-VPC(EC2-Classic)は関係ない
  • AMI作成ツールから何もエラーは出力されない(すべてほぼ同じ出力結果)

以上のことから、Amazon公式のAMIは正常で、AMI作成時に何かしらの失敗をしているのではないかという推測がでました。
すると、AmazonからAMI作成ツール(CLI)の最新(1.5.4)のChengeLogで以下のような記述がありました。

まさにドンピシャな内容でした。つまりは、CLIツールのバグだったわけです。

というわけで、以下のように対応してみました。

yum update で諸々アップデートします。

AMIを作成して、EC2インスタンスを起動すると正常に起動しました!

最後に

AMIツールのバグだったわけですが、先月からずっと調査していて悩んでいたので、EC2インスタンスの大量リブートの件もそうですが、何かしらのアナウンスはして欲しいなと思いました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*