カスタムのRHEL 6.4 HVM AMIを作る時の注意点
C3で、RHEL 6.4 HVM AMIにSR-IOVドライバを入れる手順はこちら
[HPC] C3.8xlarge のRHEL6.4 HVMで SR-IOVを有効にする - aws memo
で、ドライバが入った状態のカスタムAMIを作っておきたいと思うのが人情。
この時、create image する前に2つ注意点。(2013年 11月28日時点。RHEL AMIが改善されれば不要になるはず)
1. udev に注意
[症状]
作成したカスタム RHEL AMIで起動すると、 status checkがエラーになり、ssh接続もpingも通らない。
[原因]
/etc/udev/rules.d/70-persistend-net.rules が存在している状態でAMIを作ると、このファイルを持ったままになる。そのAMIで起動すると、本来 eth0として使いたいNICがeth1として認識してしまう。(rulesに書いてあるMACアドレスをeth0として確保しようとするため)
この状態になると
[対策]
AMIを作る前に、 このファイルをrmしておく。
sudo rm /etc/udev/rules.d/70-persistend-net.rules
2. rc.local に注意
[症状]
udevの対策をして作成したカスタムRHEL AMIで起動すると、 pingは通るが sshが通らない( connection refusedになる)
[原因]
/etc/rc.local のバグで、 /etc/ssh/sshd_config がおかしい状態でAMIを作ってしまう。
そのため、AMIから起動すると、sshdが起動しなくなる。こちらにも書いてある。
[対策]
/etc/rc.localを修正する。sshd_configをいじってるところをコメントアウト
$ diff rc.local /etc/rc.local 19,21c19,21 < #cat <> /etc/ssh/sshd_config < #UseDNS no < #PermitRootLogin without-password --- > cat < > /etc/ssh/sshd_config > UseDNS no > PermitRootLogin without-password