📝

マルチアカウントで各アカウントの請求アラームを作成してみた

2021/07/14に公開3

先日、
CloudWatchで請求アラームを作成する
という記事で、単一アカウントでの請求アラームを作成してみました。

今回はマルチアカウントのマスターアカウントで、各アカウントごとの請求アラームを作成する方法を紹介します。

イメージ

マスターアカウントのCloudWatchアラームで各アカウントごとの請求額を監視し、しきい値を超えたらSNS(Simple Notification Service)から、メールに通知するという流れです。
マスターアカウントで各アカウントごとのCloudWatchアラームを作成する部分以外は、前回の記事と同様です。

前提

AWS Organizationsを使用してマルチアカウント運用している状態です。

アラーム作成手順

アカウントごとのCloudWatchアラームを作成

まずはマスターアカウントでバージニア北部リージョンのCloudWatchコンソールに移動します。

バージニア北部リージョンでアラームを作成します。

「メトリクスの選択」→「請求」→「連結アカウント別」の順に選択します。


アラーム対象とするアカウントを選択します。

しきい値を設定します。今回は10USDを超えたらという条件にしました。

通知先のSNSトピックを新しく作成します。

その他の設定は特にせずに次に進みます。

アラーム名を入力します。

確認画面で問題がなければアラームを作成しましょう。

2. メールの承認

先ほど指定したメールアドレスの承認が必要なので、SNSコンソールで承認作業を行います。こちらの手順については、前回の記事の
2. メールの承認
をご覧ください。

3. 別アカウントのCloudWatchアラームを作成

先ほどアカウントAの請求アラームを作成したので、あとは同様の手順で各アカウントごとのアラームを作成するだけです。
SNSトピックの選択の部分では、先ほど作成したトピックを選択できるので、毎回新しいトピックを作る必要はありません。

まとめ

今回はマルチアカウントのマスターアカウントで、各アカウントごとの請求アラームを作成する方法を紹介しました。
以前はマスターアカウントで一括設定できることを知らずに、各アカウント内で個別に設定を行っていました。設定自体はそれほど大変な作業ではありませんが、「各アカウントの請求アラームっていくらだっけ?」と思ったときに、各アカウントにスイッチして確認する必要があり、ちょっと面倒でした。
今回の方法ならマスターアカウントで一括確認できるので便利です。
CloudFormationテンプレートを作っておけば、より便利になりそうです。

今回の内容が参考になれば幸いです。

Discussion

oiloliveoilolive

バージニア北部リージョン

リージョンはバージニア北部にした方が良いのでしょうか?

mn87mn87

リージョンはバージニア北部にした方が良いのでしょうか?

はい、請求メトリクスデータはバージニア北部リージョンにしか存在しないのでバージニア北部リージョンを選択する必要があります。

AWS の予想請求額をモニタリングする請求アラームの作成 - Amazon CloudWatch https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html

請求アラームを作成する前に、リージョンを米国東部 (バージニア北部) に設定する必要があります。請求メトリクスデータは、このリージョンに保存され、世界全体の請求額を示します。