マルチアカウントで各アカウントの請求アラームを作成してみた
先日、
CloudWatchで請求アラームを作成する
という記事で、単一アカウントでの請求アラームを作成してみました。
今回はマルチアカウントのマスターアカウントで、各アカウントごとの請求アラームを作成する方法を紹介します。
イメージ
マスターアカウントのCloudWatchアラームで各アカウントごとの請求額を監視し、しきい値を超えたらSNS(Simple Notification Service)から、メールに通知するという流れです。
マスターアカウントで各アカウントごとのCloudWatchアラームを作成する部分以外は、前回の記事と同様です。
前提
AWS Organizationsを使用してマルチアカウント運用している状態です。
アラーム作成手順
アカウントごとのCloudWatchアラームを作成
まずはマスターアカウントでバージニア北部リージョンのCloudWatchコンソールに移動します。
バージニア北部リージョンでアラームを作成します。
「メトリクスの選択」→「請求」→「連結アカウント別」の順に選択します。
アラーム対象とするアカウントを選択します。
しきい値を設定します。今回は10USD
を超えたらという条件にしました。
通知先のSNSトピックを新しく作成します。
その他の設定は特にせずに次に進みます。
アラーム名を入力します。
確認画面で問題がなければアラームを作成しましょう。
2. メールの承認
先ほど指定したメールアドレスの承認が必要なので、SNSコンソールで承認作業を行います。こちらの手順については、前回の記事の
2. メールの承認
をご覧ください。
3. 別アカウントのCloudWatchアラームを作成
先ほどアカウントAの請求アラームを作成したので、あとは同様の手順で各アカウントごとのアラームを作成するだけです。
SNSトピックの選択の部分では、先ほど作成したトピックを選択できるので、毎回新しいトピックを作る必要はありません。
まとめ
今回はマルチアカウントのマスターアカウントで、各アカウントごとの請求アラームを作成する方法を紹介しました。
以前はマスターアカウントで一括設定できることを知らずに、各アカウント内で個別に設定を行っていました。設定自体はそれほど大変な作業ではありませんが、「各アカウントの請求アラームっていくらだっけ?」と思ったときに、各アカウントにスイッチして確認する必要があり、ちょっと面倒でした。
今回の方法ならマスターアカウントで一括確認できるので便利です。
CloudFormationテンプレートを作っておけば、より便利になりそうです。
今回の内容が参考になれば幸いです。
Discussion
リージョンはバージニア北部にした方が良いのでしょうか?
はい、請求メトリクスデータはバージニア北部リージョンにしか存在しないのでバージニア北部リージョンを選択する必要があります。
AWS の予想請求額をモニタリングする請求アラームの作成 - Amazon CloudWatch https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html
ありがとうございます!
理解しました