AWS Cloud Intelligence Dashboards を使ってFinOpsで役立つQuickSightダッシュボードをサクッと展開

AWS Cloud Intelligence Dashboards を使ってFinOpsで役立つQuickSightダッシュボードをサクッと展開

Clock Icon2025.05.28

QuickSight を使ったコスト可視化・運用を進めようとしていますが、 「 ダッシュボードを一から作るのってめちゃめちゃ大変だな… 」 って実感してます。 CURの列情報を把握したり、Athenaクエリを作成したり、 ダッシュボードを良い感じに見せる作業など。 やることがとても多いです。

車輪の再発明はしたくないなと思い、 色々調べていたら Cloud Intelligence Dashboards というフレームワークを見つけました。 これはAWSコスト/使用量を可視化できる オープンソースのフレームワークであり、 AWS社員によって継続的に開発・保守されています。 CloudFormationもしくはコマンドラインから、 簡単にQuickSight環境へデプロイできるとのこと。

sc-2025-05-28_07-17275
画像引用: Cloud Intelligence Dashboards Framework - Workshop Studio

ダッシュボードもたくさん用意されていて便利そうです。

sc-2025-05-28_07-22300
Foundational Dashboards 一覧を引用。上記含め 20以上のダッシュボードが提供されている

今回はこの Cloud Intelligence Dashboards (のうち、 Foundational の3つ) を実際に展開してみました。 結論からいうと、とても良いソリューションです。 基本的にはこのダッシュボードからインサイトを得たり、 コスト最適化活動をプロセス化していくのがいいのでは、と感じました。

以降で 展開した際の手順をまとめます。 ※ 基本的には公式ガイド Deployment in Global regions のとおりに、問題なく展開できました。

0. 概要と事前準備

デプロイプロセスは以下3ステップあります。

sc-2025-05-28_08-11221
画像引用: Deployment in Global regions - Workshop Studio

  1. S3バケットとAthenaテーブルを [データ収集アカウント] に展開する
  2. Data Exports と S3バケット、レプリケーションポリシーを [ソースアカウント(1つ以上)] に展開する
  3. Cloud Intelligence Dashboards スタックを [データ収集アカウント] に展開する

各ステップ実施前に以下を確認します。

  • リージョンを選択する: 全スタックを同一リージョンに展開します
  • データ収集アカウントを定義する: 管理アカウントとは別に作成/選択することが推奨されています
  • 権限を確認する: CloudFormationスタック展開権限があることを確認します

今回は以下のような環境で展開しました。

  • 1つの AWS Organizations 組織内にある 管理アカウントとデータ収集アカウントを使用
  • 東京リージョンに展開

1. CUR集約用の宛先作成

データ収集アカウント にログインします。

公式ガイドにある [Launch Stack] をクリックして CloudFormationスタック作成画面に移動します。

sc-2025-05-26_06-10476
スタックのクイック作成

Destination Account IdSource Account Ids のみ書き換えます。 それ以外は既に埋まっている値のままでOKです。

sc-2025-05-26_06-370
パラメータ設定その1

sc-2025-05-26_06-31331
パラメータ設定その2

デプロイ後、以下のようなリソースが作成されていることを確認しました。

sc-2025-05-26_06-30398

2. CUR2.0とレプリケーション作成

ソースアカウント(管理アカウント) にログインします。

同じように 公式ガイド にある [Launch Stack] をクリックして CloudFormationスタック作成画面に移動します。

sc-2025-05-26_06-148
スタックのクイック作成

Destination Account Id を記載します。 エクスポート設定は「ステップ1で設定したものと一致」 している必要がある点に注意ください。

sc-2025-05-26_06-2800
パラメータ設定その1

sc-2025-05-26_06-17794
パラメータ設定その2

デプロイ後、以下のようなリソースが作成されていることを確認しました。

sc-2025-05-26_06-2306

CUR 2.0 として cid-cur2 が作成されています。

sc-2025-05-26_06-12316

3. ダッシュボード展開

以降は データ収集アカウント 上の作業です。

3.1 - QuickSight の準備

QuickSight をセットアップします。 今回は既に QuickSigh を有効化している環境であるため、 具体的な手順は割愛します。

もし有効化されていない環境の場合は 公式ガイドの 3.1 - Prepare Amazon QuickSight を参照ください。

3.2 - ダッシュボードのデプロイ

デプロイ方法は2025/05/28時点で CloudFormation もしくは コマンドラインの2つが用意されています。 今回はコマンドラインを使ったデプロイを実施します。 cid-cmd と呼ばれるツールを使って展開します。

AWS CloudShell を開きます。

まず pip3 install --upgrade cid-cmd を実行して cid-cmdをインストールします。

cid-cmdのインストールとhelp確認
pip3 install --upgrade cid-cmd
# Defaulting to user installation because normal site-packages is not writeable
# Collecting cid-cmd
#   Downloading cid_cmd-4.1.5-py2.py3-none-any.whl (222 kB)
#      |████████████████████████████████| 222 kB 10.0 MB/s
# ...略...
# Successfully installed InquirerPy-0.3.4 cid-cmd-4.1.5 pfzy-0.3.4 prompt-toolkit-3.0.51 tqdm-4.67.1 wcwidth-0.2.13
#
# ~ $ which cid-cmd
# ~/.local/bin/cid-cmd

cid-cmd --help
# CLOUD INTELLIGENCE DASHBOARDS (CID) CLI 4.1.5
#
# Usage: cid-cmd [OPTIONS] COMMAND [ARGS]...
#
# Options:
#   --profile_name, --profile TEXT  AWS Profile name to use
#   --region_name TEXT              AWS Region
#   --aws_access_key_id TEXT
#   --aws_secret_access_key TEXT
#   --aws_session_token TEXT
#   --log_filename TEXT             log file name
#   -v, --verbose
#   -y, --yes                       confirm all
#   --help                          Show this message and exit.
#
# Commands:
#   cleanup           Delete unused resources (QuickSight datasets, Athena...
#   create-cur-proxy  Create CUR proxy - an Athena view that transforms...
#   create-cur-table  Initialize CUR table
#   csv2view          Create account sql code from CSV file
#   delete            Delete Dashboard and all dependencies unused by other...
#   deploy            Deploy Dashboard
#   export            Export Dashboard
#   init-qs           Initialize Amazon QuickSight
#   map               Create account mapping
#   open              Open Dashboard in browser
#   share             Share QuickSight resources (Dashboard, Datasets,...
#   status            Show Dashboard status
#   teardown          Delete all CID assets
#   update            Update Dashboard

デプロイは各ダッシュボード単位で実施します。 まずは CUDOS ダッシュボードをデプロイしていきます。 cid-cmd deploy --dashboard-id cudos-v5 を実行すると、 以下のようなウィザードが始まります。

sc-2025-05-26_07-31845
cid-cmd deploy ウィザード画面

以下のように質問に答えていきます。

ウィザードの質問 入力値
[athena-workgroup] Select Amazon Athena workgroup to use CID (create new)
[quicksight-datasource-id] Please choose DataSource (Select the first one if not sure) CID-CMD-Athena <CREATE NEW DATASOURCE>
[quicksight-datasource-role] Please choose a QuickSight role. It must have access to Athena CidCmdQuickSightDataSourceRole <ADD NEW ROLE>
[athena-database] Select AWS Athena database to use as default cid_data_export
[quicksight-owner-choice] You have not provided quicksight-user or quicksight-group. Do you what your objects to be owned by a user or a group? select group
[quicksight-group] Please select QuickSight Group to use quicksight-admin
※既存環境にあるQuickSight管理者用グループを指定
[cur-table-name-and-db] Please select CUR table cur2
[timezone] Please select timezone for datasets scheduled refresh. Asia/Tokyo

デプロイに成功すると Congratulations! とメッセージがでます。 最後にダッシュボードをアカウント内で共有するかの選択があります。

# ...略...
? [timezone] Please select timezone for datasets scheduled refresh.: Asia/Tokyo
Dataset "hourly_view" created
Creating dataset: resource_view
Detected views: account_map
Missing views: resource_view
Dataset "resource_view" created
Creating dataset: summary_view
Detected views: account_map
Missing views: ri_sp_mapping, summary_view
Dataset "summary_view" created
Using dataset summary_view: d01a936f-example
Using dataset hourly_view: 78f4cc36-example
Using dataset resource_view: ce8e358c-example
Deploying dashboard cudos-v5

#######
####### Congratulations!
####### CUDOS Dashboard v5 is available at: https://ap-northeast-1.quicksight.aws.amazon.com/sn/dashboards/cudos-v5
#######

? [share-with-account] Share this dashboard with everyone in the account?: yes
Sharing complete

QuickSighを確認するとダッシュボードが展開されていました!

sc-2025-05-26_07-18122
※ CURおよびデータセットの更新がされていないため、デプロイ直後は「データなし」がたくさん

同じような流れで残り2つのダッシュボードを展開します。 cid-cmd deploy を実行すると、 最初に「どのダッシュボードを展開するか」を選べます。

sc-2025-05-26_07-2005-2
Cost Intelligence Dashboard と KPI Dashboard を順番に展開していく

無事 3つのダッシュボードを展開できました。

sc-2025-05-28_09-1436

内容を確認する

  • データ収集アカウントにCURがレプリケーションされるのに約24時間 (最大72時間)
  • QuickSight データセットの更新が 24時間ごと

といった条件があるので、 ダッシュボードにデータが反映されるまで、 少し待つ必要があります。

私の場合は2日後に確認すると、データが見れていました。

CUDOS Dashboard v5

作られているシートは以下のとおり。

  1. Exective: Billing Summary
  2. Exective: RI/SP Summary
  3. Exective: MoM Trends
  4. Compute
  5. Storage & Backup
  6. Amazon S3
  7. Databases
  8. Amazon DynamoDB
  9. Messaging and Streaming
  10. Data Transfer & Networking
  11. AI/ML
  12. Monitoring & Observability
  13. Analytics
  14. Security
  15. End User Computing
  16. GameTech & Media
  17. TAGsplorer
  18. OPTICS Explorer
  19. (About)

包括的なダッシュボードから、 リソースレベルの粒度までドリルダウンできるダッシュボードまで揃っている、 一番汎用的なダッシュボードに感じました。

実際の Security タブの内容をキャプチャします。 セキュリティサービスのコスト状況が可視化されてますね。

sc-2025-05-28_09-8206

ただ、CURが作成されたばかりということもあり、 自環境では「データなし」なものが多いのが現状です🙇‍♂️

以下 デモサイトにサンプルがあります。 それぞれのシートの内容を把握したい場合はそちらをご覧ください。

sc-2025-05-28_09-10044
画像引用: https://cid.workshops.aws.dev/demo?dashboard=cudos

Cost Intelligence Dashboard

作られているシートは以下のとおり。

  1. Billing Summary
  2. Cost Summary
  3. Compute Summary
  4. Storage Summary
  5. RI/SP Summary
  6. Expiring RI/SP Tracker
  7. OPTICS Explorer
  8. MoM Pivot
  9. (Summary of Changes)
  10. (About)

CUDOSに比べるとより上位レイヤーのダッシュボードが揃っています。 AWSサービスに関する技術的な理解はそこまで必要ではありません。

実際の Billing Summary タブの内容をキャプチャします。

sc-2025-05-28_11-4208

同じく、詳細はデモサイトを参照ください。

sc-2025-05-28_11-3383
画像引用: https://cid.workshops.aws.dev/demo?dashboard=cid

KPI Dashboard

作られているシートは以下のとおり。

  1. KPI Tracker
  2. Set KPI Goals
  3. Metrics Summary
  4. EC2
  5. EBS
  6. S3
  7. RDS
  8. Other Graviton
  9. Commit Optimizations
  10. (About)

[Set KPI Goals] シートにて、各種 KPI をカスタマイズできます。

sc-2025-05-28_11-2310
Set KPI Goals シート

sc-2025-05-28_11-18645
KPI Tracker シート(画像引用: https://cid.workshops.aws.dev/demo?dashboard=kpi)

補足: CUR バックフィル

CURを新しい設定で再生成する機能(バックフィル)があります。 過去分、最大 36ヶ月のコストデータを取得して ダッシュボードに反映させたいときに使えます。 バックフィルは 管理アカウントからサポートケースを開くことでリクエストできるみたいです。

You can now create a Support Case , requesting a backfill of your reports (CUR or FOCUS) with up to 36 months of historical data. Case must be created from your Source Account (typically Management/Payer Account). If you are using multiple Management/Payer Accounts, the support ticket must be created in each.

– 引用: https://catalog.workshops.aws/awscid/en-US/dashboards/foundational/cudos-cid-kpi/deploy#backfill-data-export

おわりに

Cloud Intelligence Dashboards を触ってみました。 非常に便利に感じます。 コスト削減のネタ探しから、 長期的なコスト振り返りまで、 カバーしている範囲が広いです。

「基本的にはこのダッシュボードを使って、 個別のユースケースがあればカスタマイズしたダッシュボードを作っていく」 といった流れがいいのでは、と感じました。

他にも多くのダッシュボードを追加で入れられるので、 気になった方は ダッシュボード一覧 を確認ください。

以上、参考になれば幸いです。

参考

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.