初歩的な内容ですが、実施したことがなかったのでやってみました。
EC2を構築してそこにアプリとかを載せる際に、EC2が正常に動作しているか監視する必要があります。
今回はその監視のためにEC2のステータスをチェックするCloudWatch Alarmを設定してみます。
ステータスチェックとその設定方法については、以下のURLをご確認ください。
docs.aws.amazon.com
docs.aws.amazon.com
実施作業
準備
EC2は事前に作成済みのものを使用します。
アラームのステータスの項目はなしになっています。
設定前にCloudWatchコンソールからメトリクスを確認したところ、一度も設定していない場合はそもそもステータスチェックのメトリクスが存在していませんでした。
アラームの作成
EC2の一覧から設定するインスタンスを選択し、ステータスチェックのタブからステータスチェックアラームの作成を押下します。
アラームの作成画面が表示されますので、各項目を設定していきます。
設定出来たらアラームを作成を押下します。
通知の送信先はデフォルトではAWSアカウントに紐づいているメールアドレスになっていますが、違う通知先に飛ばしたい場合はトピックの作成を押下して設定します
新しいトピックを作成すると設定したメールアドレスに登録メールが送信されますので、メールのリンクからから承認する必要があります。
アラームの確認
CloudWatchのコンソールから作成したアラームを確認します。
設定した内容でアラームが作成されていることが確認出来ます。
それでは実際にインスタンスステータスチェックがNGになったときにメールが飛ぶか確認します。
ステータスチェックはインスタンスのステータスチェックとシステムステータスチェックのいずれかがNGとなった場合にエラーとなります。
そのため、eth0のネットワークインターフェースをダウンさせてインスタンスステータスチェックをNGにします。
Teratermでログインして、管理者権限で以下のコマンドを実行します。
# ifconfig eth0 down
ステータスチェックがNGとなったのでメールが届きました。
※実際にエラーとなってメールが届くまでは少し時間差があります
感想及び所感
問題なくEC2のステータスチェックアラームを設定することができました。
検証でDownしたネットワークインターフェースはインスタンスを停止→起動したら自動でUPされるので、忘れずに実施しておきましょう。