こんにちは。ドコモ・テクノロジ株式会社 サービスインテグレーション事業部 スマートインテグレーション部の奥田絢香です。ドコモのCCoE(Cloud Center of Excellence)として、パブリッククラウドのコスト最適化やドコモグループ向け共通基盤運用の業務に携わっています。
今回は、2026年2月18日に開催されたNTT Tech Conference 2026にて「クラウドの不要なリソースと削減可能額を可視化するダッシュボードを作って全社公開した話」というテーマで登壇して来たので、当日のセッション内容を振り返りながら、技術的なハイライトをご紹介します。

- クラウドに潜む「チリツモ浪費」の罠
- 「Cloud Frugal Dashboard」とは?
- 失敗から学んだ最適なアーキテクチャ設計
- 生成AIをフル活用!「人間は一切コードを書かない」開発手法
- まとめと今後の展望
クラウドに潜む「チリツモ浪費」の罠
皆さんは、自分が管理しているAWSアカウントの中に「不要なリソースは1つもない!」と自信を持って言えますか?パブリッククラウドは便利な従量課金制ですが、それは裏を返せば「使っていなくても、存在しているだけで課金され続ける」ということでもあります。
- 終わった検証環境(停止し忘れたEC2やRDS)
- 消し忘れた一時リソース(未使用のEIPや解放漏れのEBS)
- 古いバックアップ(昔のEBSスナップショット)
これらを放置すると、塵も積もれば山となり、思わぬ浪費の山になってしまいます。過去には、ドコモCCoEチームで検証などに利用していたアカウントでリソースの総点検を実施した結果、アカウント内で発生していた利用料金の約60%が不要なリソースによるものだったという事例もありました。
ドコモグループ全体で利用しているAWSアカウント数はなんと2,400以上。これを各チームの自主的な管理だけで最適化し続けるのは至難の業です。 そこで全アカウントの不要リソースと削減可能額を一覧化し、誰でも確認できるダッシュボード「Cloud Frugal Dashboard」を構築することにしました。
「Cloud Frugal Dashboard」とは?
ドコモグループ全体に向けて公開したこのダッシュボードでは、現在以下の6項目について「不要なリソース」を検出し、可視化しています。
- EC2: UnusedBox(未使用のオンデマンドキャパシティ予約)、InstanceIdleOrUnused(アイドル状態のインスタンス)
- EBS: CreateSnapshotAndDelete(アタッチされていないボリューム)、DetachAndCreateSnapshotAndDelete(アタッチされているがインスタンスが使われていないボリューム)
- RDS: ExtendedSupport(延長サポート利用中)、InstanceIdleOrUnused(アイドル状態のインスタンス)


ダッシュボード上では、「1日/1ヶ月/1年あたりの推定削減可能額」がひと目で分かるサマリ画面や、組織部門・プロジェクトごとの削減可能額の割合を示す円グラフ、さらには対象リソースのARNや推奨事項などを一覧化した詳細テーブルを提供しています。また、対応が進んだことによる「削減達成額」も時系列で可視化し、モチベーションの向上に繋げています。 2025年8月のリリース以降、約20,000個もの不要リソース削減を達成しました!
失敗から学んだ最適なアーキテクチャ設計
このダッシュボード、実は本格的な仕様検討からリリースまで、私1人で約1ヶ月間で構築しました。
最初から完璧な構成が思いついたわけではなく、短期間でプロトタイプを作っては壊す(スクラップ&ビルド)を繰り返しました。
プロトタイプ①:Trusted Advisorベース(運用面でNG)
最初はAWS Trusted Advisorの組織ビューを元データにしようと考えました。しかし、定期エクスポートやAPIに非対応であり、都度マネジメントコンソールから手動でエクスポートする必要がありました。日々データが更新されるダッシュボードにおいて、人間の手作業が介在するアーキテクチャはNGと判断しました。
プロトタイプ②:Cost Optimization Hubの生データ直入れ(性能面でNG)
次に、AWS Cost Optimization HubのデータをAWS Glue経由でS3に出力し、そのままBigQueryに日次でINSERTし続ける構成を試しました。 全データをINSERTするようにしていたため1日約70,000行分もあり、日次でデータが膨大に積み上がり、Looker Studio側でフィルタ処理をかけた結果、ビジュアライズに時間がかかりすぎて実用性に欠けるため、これもNGとなりました。
最終アーキテクチャ:Athenaで集計・加工してBigQueryへ
最終的に採用したのは、以下のマルチクラウドなサーバーレスアーキテクチャです。
- データソース: AWS Cost ExplorerとCost Optimization HubのデータをS3にエクスポート
- データカタログ: AWS Glueでテーブル定義
- データ加工: Amazon EventBridge Schedulerで日次起動するAWS Lambdaから、Amazon Athenaを利用してSQLクエリを実行。前日分のデータのみを抽出し、必要な形に加工。
- データウェアハウス: 加工後のデータをGoogle CloudのBigQueryに追記(INSERT/UPDATE)
- 可視化: Looker Studioでダッシュボード化

この構成により、Looker Studioの描画パフォーマンス問題をクリアしつつ、サーバーレス構成によってシステム全体のインフラ費用を月額4,000円程度に抑えることができました。
生成AIをフル活用!「人間は一切コードを書かない」開発手法
1人で1ヶ月という短期間でこのシステムを構築できた最大の理由は、生成AI(GeminiとGitHub Copilot)のフル活用です。今回、Lambdaで実行するPythonコード(約300〜500行×2種)や、IaCのためのCloudFormationのYAMLファイルについて、私は一切ソースコードを書いていません。生成AIを活用することで、実装にかかる稼働の約80%を削減できました! 具体的にどのようにAIを使ったのか、プロンプトの工夫をご紹介します。
1. Geminiで「仕様書」を作らせる
いきなりコードを書かせるのではなく、まずはGeminiに要件を伝えて仕様書を作成させました。 スキーマ情報は文字で打つのが大変なので、画面のスクリーンショットをそのままGeminiに読み込ませて理解させています。
【入力したプロンプトの例】
あなたはマルチクラウドソリューションエンジニアです。新しいシステムを構築します。(中略)
- ソースコードの実行場所は AWS Lambdaです。
- AWS Glue テーブルに格納されたデータを Athenaを利用して読み取り、Google CloudのBigQueryに対して INSERTします。
- Athenaのスキーマはスクリーンショットの通りです。
- BigQueryのスキーマの1つであるestimated_daily_cost_after_discountには、月額の1日あたりの金額を計算して格納します。
仕様書の作成にあたり他に必要な情報があれば聞いてください。
この「他に必要な情報があれば聞いてください」という指示で、Geminiから「実行頻度は?」「日時のフォーマットは?」と逆質問が来るため、それに答えるだけで堅牢な仕様書が完成します。
2. GitHub Copilotに仕様書を渡してコーディング
Geminiが生成した完璧な仕様書を、今度はGitHub Copilotにそのままプロンプトとして渡し、「この仕様に基づきPythonコードを生成して」と指示します。これだけで、Pandasを用いたデータ加工からBigQueryへのロード処理まで、ほぼ動くコードが生成されます。
3. ロジックの変更も言葉で指示
開発途中で「毎日全データをINSERTするのではなく、resource_arnをキーにして、既に存在すればUPDATE、無ければINSERTにしたい」という要件変更が発生しました。 これもCopilotに対して、「処理日の全データを取得後、1レコードずつBigQueryを確認し、存在する場合は〇〇をUPDATE、しない場合は新規INSERTして」と自然言語で指示するだけで、該当部分のコードを見事に修正してくれました。
4. エラー解決もAIにお任せ
CloudFormationのデプロイ時などにエラーが出た場合も、マネジメントコンソールに出力されたエラーログをそのままCopilotに貼り付けます。 AIは「IAMポリシーでParameter Storeの動的参照がうまく展開されていません」と原因を特定し、修正後のYAMLコードを提示してくれます。
生成AI活用における学びと、エンジニアの役割
今回、生成AIをフル活用して感じたことは、「コーディングはAIに任せられるが、ディレクション力と技術力は人間が必要不可欠である」ということです。 AIに適切な指示(プロンプト)を出すためには、「何のために何をしたいのか」「どのクラウドリソースを組み合わせるのが最適か」というアーキテクチャ設計や要件定義の能力が求められます。また、AIが出力したコードや解決策が本当に正しいのか、セキュリティ的に問題ないかを判断するベースの技術知識も当然必要です。 エンジニアの役割は「コードを書くこと」から、「システム全体の設計図を描き、AIをディレクションして実現させること」へとシフトしていると強く実感しました。
まとめと今後の展望
「Cloud Frugal Dashboard」によって、不要リソースの可視化と全社への透明性確保が実現し、定期的な見直しサイクル(定着)が回り始めました。ダッシュボードを公開して終わりではなく、調達部門と連携した利用者への対応プッシュや技術的サポートも継続して行っています。今後は、以下を検討しています。
- 項目追加: AWSの他のサービスなどへの対応
- 発生前の抑止: 「できてしまった不要リソースを消す」だけでなく、「不要なものを作らせない、放置させない」ための予防的な仕組み(ガードレール)の導入

これからも、CCoEとしてドコモグループ全体のクラウドコスト最適化と、効率的なクラウド活用の文化醸成に努めていきます。
当日の発表動画は下記からご確認いただけます。 youtube.com
最後までお読みいただきありがとうございました!