はじめに
EC2 のステータスチェック監視アラームに、「メール通知」と「自動復旧(Recover)」の両方を付けたい。EC2 コンソールの簡易画面(CloudWatch アラームの管理)でサクッと作成しました。
念のため設定を確認すると…通知はあるのに、Recover が付いていない。じゃあ編集で足そう、と Recover を追加して保存。もう一度確認すると…今度は通知が消えて Recover だけ。
片方を ON にすると、もう片方が外れていました😅(今回の環境では)
「付けたはずの設定が消える…?」で何度かやり直したので、原因と確実な確認方法を残します。
環境
- AWS CloudWatch アラーム(EC2 のステータスチェック監視)
- 操作:EC2 コンソールの「CloudWatch アラームの管理」(簡易画面)
- 確認:AWS CLI(
aws cloudwatch describe-alarms) - リージョン:ap-northeast-1
※ EC2 の Recover アクションは、対象インスタンスやアラーム条件(ステータスチェックの種類)によって使える場合・使えない場合があります。この記事は Recover が選べる環境での話です。
起きたこと
アラームに何が紐づいているかは、CLI で AlarmActions を見ると確実です。保存のたびに確認したら、こうなっていました。
1回目(通知だけ付けたつもり):
[
"arn:aws:sns:ap-northeast-1:************:my-cw-alerts"
]
2回目(編集で Recover を追加)→ 通知が消えて Recover だけ:
[
"arn:aws:automate:ap-northeast-1:ec2:recover"
]
毎回「足したつもりの片方」しか残らない。画面の見た目では気づきにくく、何度かやり直しました。
原因
簡易画面には「アラーム通知(SNS)」と「アラームアクション(停止/再起動/復旧などの EC2 アクション)」という別々のトグルがあります。今回触った簡易画面では、保存時に ON だったトグルの分だけが AlarmActions に残り、OFF の方は外れる挙動に見えました。
| 保存時のトグル状態 |
AlarmActions に残るもの |
|---|---|
| 通知 ON / アクション OFF | 通知(SNS)だけ |
| 通知 OFF / アクション ON | 復旧(Recover)だけ |
| 通知 ON / アクション ON | 両方 |
つまり、片方ずつ設定していたのが原因。**「両方を ON にした状態で保存」**しないと、両方は同時に残りませんでした。
対処:両方のトグルを ON にして保存する
編集画面で「アラーム通知」と「アラームアクション」をどちらも ONにしてから保存。そのうえで CLI で実際の設定を確認します。
aws cloudwatch describe-alarms \
--alarm-names my-status-alarm \
--query 'MetricAlarms[].AlarmActions' \
--region ap-northeast-1
両方が並べば成功です。
[
[
"arn:aws:sns:ap-northeast-1:************:my-cw-alerts",
"arn:aws:automate:ap-northeast-1:ec2:recover"
]
]
-
arn:aws:sns:...→ メール通知(SNS トピック) -
arn:aws:automate:...:ec2:recover→ 自動復旧(Recover)
学び
- 簡易編集画面は、ON にしたトグルの分だけ保存し、OFF の方を外すことがある(今回の環境)。通知とアクションは別トグルなので、両方 ON で保存する。
- CloudWatch アラームでは、SNS 通知も EC2 Recover もどちらも
AlarmActionsに入る。確認ポイントは「SNS の ARN と Recover の ARN が両方そろっているか」。 - 設定できたかは**画面の見た目より、
describe-alarmsのAlarmActions(実際の設定)**で確認すると確実。 - 「付いたように見える」を疑って、狙った数(今回は2つ)が並んでいるかを最後に見る。
おわりに
便利な簡易画面ほど、「保存したつもり」が起きやすいのかもしれません😅 最後は CLI で実際の設定を確認する——同じく「設定が消える…?」で固まった人の参考になれば嬉しいです🙌