2013/10/22

AWS::ELBのHealth Checkについてのメモ

ELBのHealth Checkについて調べたのでメモ。


Ping Protocol
サーバの生存監視(ヘルスチェック)に使うプロトコルを指定します。HTTP、TCP、HTTPS、SSLから選択します。
HTTP、HTTPSの場合はPing Pathを設定することが出来ます。

■Ping Port
ヘルスチェックに使うポートを指定します。例えばHTTPなら80、HTTPSなら443などです(もちろん任意で指定可能です)

■Ping Path
Ping ProtocolをHTTP又はHTTPSとした場合に指定可能です。ヘルスチェックで該当PathがGET出来無いと異常と判断します。

■Response Timeout
ヘルスチェックのタイムアウト時間を秒で指定します。指定した秒だけ応答が無ければ異常と判断します。デフォルトだと5秒です。

■Health Check Interval
ヘルスチェックの間隔を分単位で指定します。デフォルトの0.5minutesは30秒です。

■Unhealty Threshold
ここで設定した回数だけヘルスチェックが失敗した場合、振り分け対象から除外します。デフォルトだと2回です。
Unhealty Thresholdが2回、Response Timeoutが5秒、Health Check Intervalが0.5minutesの場合、障害発生から切り離しまで最長30+5+30+5=70秒かかります。
[Check直後にFault]→30sec→[1st Check]→5sec→[1st Timeout]→30sec→[2nd Check]→5sec→[2nd Timeout]→[Cut Off!]
■Healthy Threshold
振り分け対象外となったインスタンスが、ここで指定した回数だけヘルスチェックに成功したら、振り分け対象に戻します。デフォルトだと10回です。
Healthy Thresholdが10回、Health Check Intervalが0.5minutesの場合、障害復旧から切り戻しまで最長300秒掛かります。
[Check直後にRestore]→30sec→[1st Check]→30sec→[2nd Check]→30sec→[3rd Check]→30sec→[4th Check]→30sec→[5th Check]→30sec→[6th Check]→30sec→[7th Check]→30sec→[8th Check]→30sec→[9th Check]→30sec→[10th Check]→[Cut On!]