ヘルスチェックがInServiceにならない


はじめに

CLBにインスタンスをアタッチしたらInServiceにならなかった時の調査アーカイブです。

ヘルスチェックとは

調べた感じ、CLBからぶらさがってるインスタンスにPingを投げてレスポンスがなかったらOutofServiceになるらしい。
なのでミドルとかApacheとかのコンフィグに異常があるのかな?て心配はしなくてよさげ。

CLBのパラメータ確認

25(SMTP)は例があまり多くないのですが、読んだ感じ25ポートが空いてれば良いっぽい。
となるとSGのインバウンドが怪しいのですが、普通に25許可してました。

ポートがListenか疑う

となるとこれだな!と思ったのは良いが調べ方がわからないw
今回はAmazonLinux2なのですが、こんな感じで設定状況を確認できました。

$ netstat -ant
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN

25を22と同じように設定してあげればいいんじゃ!
内部のコンフィグ的には全受けで、SGで制御してセキュアにする感じですかね。

設定変更

AmazonLinux2はデフォでPostfixが入ってます。
知らなかったw

$ vi /etc/postfix/main.cf
116 inet_interfaces = all

変更後はPostfixを再起動します。

$ systemctl restart postfix
$ netstat -ant
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN

成功!
無事InServiceになりました。

公式のトラブルシューティングがめっちゃわかりやすかったです!
調べ甲斐がありますね。

簡単ですが以上です: )