シンジです。タイトルの通り、勝手にお亡くなりになったEC2を自動的にあれこれしましょうということが出来ます。今回は意図的にカーネルパニック起こして死んだサーバーを作って、この機能で勝手に復活させてみます。
まずはAWS Cloud Watchを設定します
新規アラームを作成します。
メトリクスを選びます
ここでは
StatusCheckFailed_System
と検索します。対象のインスタンスを選んで、次へをクリックです。
アラームを定義します
既存のアクションは削除して、新規で「EC2 アクション」を作成します。今回は再起動させますね。右下の統計の部分は割とどうでもいい気がしましたが、一応最大にしてみました。
設定はこれで終わりです
簡単ですね。簡単すぎてマジで動くか分からないので適当にカーネルパニックさせます。その結果がこれ。
Datadogで死活監視しているので、Slackに飛んできたアラートはこんな感じ
EC2が死んだ瞬間がこんなかんじ
EC2のステータスを見てみると
というわけで10分以内に自動再起動している
実はこの手の1/2ステータスは、AWSマネジメントコンソールから再起動しても再起動しないんです。なので、停止してから起動してやらないといけない。今回はきちんと自動的に再起動してくれることが分かりました。楽〜〜〜すばらしい〜〜
問題が起きた時の根本的解決にはならないけど
便利な機能であることは間違いないですよね〜