Amazon CloudWatch クロスリージョンクロスアカウントダッシュボードを作成
本ブログのCloudFrontとWAFのアカウントと、EC2、RDS、S3などオリジンのアカウントが別アカウントです。
これを1つのAmazon CloudWatchダッシュボードでまとめて見れるようにしたいです。
クロスアカウントクロスリージョンダッシュボード
2019年11月に、Amazon CloudWatch を使用したクロスアカウントクロスリージョンダッシュボードという非常に便利な機能がリリースされていますので、これを有効にして設定します。
対象の環境
AWS Organizationsを使わなくても、設定できるそうですが、私の環境ではCloudFrontとWAFのアカウントがOrganizationsの組織アカウント、EC2、RDS、S3などオリジンのアカウントがメンバーアカウントですので、Organizationsを使った設定手順です。
組織アカウント側にダッシュボードを作成します。
ダッシュボードを作る側(組織アカウント)のCloudWatchの設定
CloudWatchのコンソールの左ペインで[設定]を選択して、右ペインで[Configure]ボタンを押下しました。
View cross-account cross-region で[Enable]ボタンを押下しました。
AWS Organization account selector を選択して、[Enable]ボタンを押下しました。
View cross-account cross-regionのステータスが Enabled になりました。
共有する側(メンバーアカウント)のCloudWatchの設定
CloudWatchのコンソールの左ペインで[設定]メニューで、[Share data]を押下しました。
ダッシュボードを作る側(組織アカウント)のアカウントIDを入力しました。
下までスクロールして[Launch CloudFormation template]ボタンを押下しました。
確認画面が表示されましたので、”Confirm”と入力して、[Launch template]ボタンを押下しました。
CloudFormationでスタック作成に遷移しました。
パラメータも自動設定されていました。
IAMロールを作成しますので、「AWS CloudFormationによってIAMリソースがカスタム名で作成される場合があることを承認します。」にチェックを入れて[スタックの作成]を押下しました。
CloudWatch-CrossAccountSharingRoleが作成されました。
AWS管理ポリシーの CloudWatchReadOnlyAccessとCloudWatchAutomaticDashboardAccessがアタッチされています。
信頼ポリシーはダッシュボードを作る側(組織アカウント)のアカウントIDが設定されています。
CloudWatch ダッシュボードの作成
ダッシュボードを作る側(組織アカウント)のアカウントに戻りました。
ダッシュボードのウィジェット追加で、アカウントとリージョンが選択できるようになりました。
アカウントはOrganizationsのメンバーアカウントが選択可能になっていました。
CloudWatchでシェア設定しない、IAMロールも作成していないアカウントを選択すると、権限エラーになります。
User: arn:aws:sts::123456789012:assumed-role/AWSServiceRoleForCloudWatchCrossAccount/CloudWatchConsole is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::987654321098:role/CloudWatch-CrossAccountSharingRole
共有する側(メンバーアカウント)を選択するとメトリクスが選択できました。
クロスリージョンクロスアカウントのダッシュボードが作成できました。
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。
【PR】 「ポケットスタディ AWS認定 デベロッパー - アソシエイト」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター3年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
AWSアカウント内特定リージョン内のDynamoDBテーブルを全削除するLambda(Python)
やりたいこと タイトル通りですが、特定アカウントの特定リージョン内のDynamo …
-
-
Amazon Aurora Serverlessを使い始めてみました(1日経過しての課金結果も)
祝!!! Amazon Aurora ServerlessがGAになりました! …
-
-
re:Invent 徒歩記(シアトルも)
このブログは、AWS re:invent 2018 Advent Calenda …
-
-
RocketChat(EC2インスタンス)でCPU80%以上を10分間継続したら再起動する
先日、数日間のやり取り用で完全に使い捨てとして使っているRocketChatで、 …
-
-
ヤマムギ vol.10 (AWS)EC2モニタリングハンズオン 手順
このブログは2020/5/6に開催しました、「ヤマムギ vol.10 (AWS) …
-
-
Cloud9でAWS CDK環境
最初ローカルに作ろうと思ったのですが、環境依存がというか、Macbookの環境で …
-
-
AWS Service Catalogチュートリアル
AWS Service Catalog 開始方法のチュートリアルにそってみました …
-
-
NATインスタンスを作成する
プライベートサブネットのEC2インスタンスからカスタムメトリクスとCloudWa …
-
-
AWS CloudShellでboto3(SDK for Python)使うならpython3
本の執筆をしていて、ちょっとAWS CLIやSDKのふるまいを確認したいことがあ …
-
-
Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(失敗、手戻りそのまま記載版)
勉強のためブログサイトを長らくお世話になったロリポップさんから、AWSに移設する …
- PREV
- Remoを触ってみました
- NEXT
- ライブ配信カレンダーの設定まわり