InstanceのDHCP取得エラー!

子供がで泣いている時に携帯がチン!(メールの受信音)チン!なっていたので、ようやく寝かした後メールをチェックしたらNagiosからのAWSのinstanceの1つが接続不可という知らせ。

またかよ〜と思いながら、AWSのコンソールを見ると、instanceは[Running] と緑のマーク
Regionでの障害も起こっていないっぽい。コンソールから見るSyslogも特におかしなログは出てない。


となると、これはもうRebootしかない訳です。
このInstanceはRoot deviceがEBSじゃなくてLocal Instance Storeなんですよ!!


...


やばい...データ飛んじゃうかもしれない

まぁデータはS3に毎日バックアップ取っているけれども、Instance復旧しなくて、再構築となるとまだPrivate AMIとしてのサーバのsnap shotを取っていないので、1から再構築(◎日◎)

う〜ん、今はインフラする時間が圧倒的にないのが問題なんだよなぁ。なんとかせねば(汗


と言うわけで清水寺から飛び降りるつもりで、腹をくくって再起動しました。


...


d(`・ω´・+)ャッタネ+.☆゚+.☆゚カアチャン.☆゚ツナガッタ




結果無事に起動して主要なポート(22/80/443など)からアクセス出来るようになったので、原因調査

/var/log/syslogを見る限り

dhclient: DHCPREQUEST on eth0 to XXX.XXX.XXX.XXX port 67

というのが大量に!

よくよく見ると
(通常のログ)

aya@example:~$ sudo lv /var/log/syslog.1 | grep
'dhclient: DHCPREQUEST on eth0 to XXX.XXX.XXX.XXX port 67' | more
Oct 29 08:51:50 example dhclient: DHCPREQUEST on eth0
to XXX.XXX.XXX.XXX port 67
Oct 29 19:45:57 example dhclient: DHCPREQUEST on eth0
to XXX.XXX.XXX.XXX port 67


DHCP requestが


aya@example:~$ sudo lv /var/log/syslog | grep
'dhclient: DHCPREQUEST on eth0 to 169.254.1.0 port 67' | more
Oct 30 06:27:38 example dhclient: DHCPREQUEST on eth0
to XXX.XXX.XXX.XXX port 67
Oct 30 16:55:19 example dhclient: DHCPREQUEST on eth0
to XXX.XXX.XXX.XXX port 67
Oct 30 16:55:24 example dhclient: DHCPREQUEST on eth0
to XXX.XXX.XXX.XXX port 67
〜大量に続く〜


という風にDHCP取得が出来なかった為接続出来なかった様子。

AWSのフォーラムを読むと、instanceを機動したあと、取得したDHCP IPをStaticに書き換えてDHCP取得しないように仕組むのがBad know howらしいw
しかも大体のトピックで、AWSの人はこの問題をスルーしているから、この件での対応を期待してはダメだ、という書き込みが多く見られたので、自衛しかないという事みたい。

http://developer.amazonwebservices.com/connect/message.jspa?messageID=60478
http://developer.amazonwebservices.com/connect/message.jspa?messageID=149687

最近AWSのinstanceの保守が多いので、根本的な基本構築と保守軽減を提案せねばならないと思っている所。早くインフラメインの仕事に戻りたい所である(´へ`;ウーム