シナリオ
現在、以下のような異常復旧策を考えています。
- 「StatusCheckFailed_Instance」の条件が成立し、再起動を実施する
- 上記で再起動実施しても「StatusCheckFailed_Instance」の条件が成立し続ける場合、メールで異常を通知する
- メールで異常を受けて、人による一時対応を実施
CloudWatch Alarm の設定
上記シナリオを実現するために、CloudWatch Alarm にて以下のように2つのアラームを作成しました。
監視メトリクスは両方とも「StatusCheckFailed_Instance」です。
- エラー発生で再起動を実施するアラーム
- 3分以内に3回「StatusCheckFailed_Instance」となった場合、アラーム条件成立
(監視間隔は1分毎)
- 3分以内に3回「StatusCheckFailed_Instance」となった場合、アラーム条件成立
- エラー発生でメール通知するアラーム
- 10分以内に2回「StatusCheckFailed_Instance」となった場合、アラーム条件成立
(監視間隔は5分毎)
- 10分以内に2回「StatusCheckFailed_Instance」となった場合、アラーム条件成立
それぞれ、アラームの成立条件をずらすことで、「1.先に再起動を実施」し、「2.それでもだめならメール通知」というようにします。
上記のシナリオを実現することは可能なのか?
前回の記事の通り、「StatusCheckFailed_Instance」の発生による再起動後も「StatusCheckFailed_Instance」が発生し続けるようにしてテストしてみると、上記のシナリオ通りの動作となりました。
具体的には以下の画像の通りです。
まず 16:13:20 の時点で再起動が実行されていますが、再起動後もそれが継続することで 16:16:47 にメール通知が実行されています。
コメント