AWS でのコスト最適化の進め方

~ コスト可視化のポイントと役立つ AWS サービスのご紹介 !

2024-05-01
ビジネス x クラウド

Author : 山下 大介

皆さんこんにちは ! カスタマーソリューションマネージャーの山下です。

第 1 回 では Frugal Architect のご紹介および、アプリケーションオーナーによるコスト最適化に役立ちそうな myApplications を紹介しました。

Frugal Architect は設計者がどのようにコストを意識するべきかのポイントをまとめていますが、実は AWS では体系的にコスト最適化を整理した AWS Cloud Financial Management (CFM) フレームワーク を提唱しています。CCOE が会社や組織全体でコスト最適化を推進する際に活用できるフレームワークとなっております。

そこで、第 2 回では CFM の中の可視化をテーマにした AWS サービスの紹介をしていこうと思います。


はじめに

まず、はじめにCFM とは何かを簡単にご紹介します。

クラウドは必要なときに必要なだけ使うことが可能であり、上手に使うことでリソースに対する余剰キャパシティを必要とせず、必要最低限のコストでワークロードを稼働させることができます。また、AWS では継続的な値下げにより2006 年のサービス開始以降、合計で134 回以上 (2024 年1 月時点) の値下げを行っています。

そこで、AWS を上手にご利用いただき、コストメリットの恩恵をより多くのお客様に受けていただくために CFM を用いたコスト最適化をおすすめしています。

CFM には、可視化、最適化、計画・予測、FinOps の実践の 4 つの柱があります。

  • 可視化 : アカウント・タグ付け戦略、タグ設定のガバナンスによりクラウドコストの可視化を行う
  • 最適化 : クイックウィン最適化、アーキテクチャ最適化によるワークロードの適正に応じた最適化を行う
  • 計画・予測 : クラウド使用量予測、予算策定といったクラウド利用の計画・予測を行いコスト最適化のトラッキングを行う
  • FinOps の実践 : CCoE の組成・文化の醸成、持続的最適化のためのプロセスの確立や、IT 部門と財務・ビジネス部門の連携による継続的なコスト最適化を行う

それでは、コストの「可視化」を行う際に重要となるポイントとして以下の 3 点を紹介していきます。

  • アカウント戦略
  • タグ付け戦略
  • コスト可視化ツール

アカウント戦略

コストの可視化を行う際に最初に考えるべきポイントはアカウント戦略です。その理由は、AWS 利用コストはアカウント毎にコスト管理責任を明確にした方が良いからです。また、本番環境と開発環境の違いや、ワークロードの違いによりコストの特性が異なるため、どの単位でコストを管理したいかを考えたうえでアカウント設計を行う必要があります。

AWS ではマルチアカウント管理のベストプラクティスがあり、AWS Organizations を用いた設計をおすすめしていますので、以下の内容も参考にしてアカウント戦略を立ててみてください。なお、AWS Organizations ご利用の際は、「組織内のすべての機能の有効化」(一括請求機能を含む) がデフォルトの設定になっており、サービスコントロールポリシー (SCP) などの高度なアカウント管理機能が利用できますので、後述するタグ付け戦略にも役立てることが可能です。


タグ付け戦略

AWS では、コスト可視化を行う際は、コスト配分タグを用いたタグ付けをおすすめしています。タグ付けにより、システムや用途などの情報を AWS リソースに付与 (タグ付け) することができます。そうすることで、AWS Cost Explorer や Cost and Usage reports (CUR) を用いる際に、同じタグを持つリソース単位でのコスト可視化が可能になります。

タグ付けしたリソースを AWS Cost Explorer や CUR で可視化する際は、コスト配分タグの有効化が必要となります。マルチアカウント構成の場合は管理アカウントによる設定が必要となりますのでご注意ください。

私が過去に担当したお客様でも、メンバーアカウント管理者がコスト可視化のためにタグ付けをしたくてもコスト配分タグを有効化する権限がないため、どうやればいいか分からないというご相談がありました。もし、同様のケースでお困りの際は、管理アカウントの管理者にコスト配分タグの有効化を依頼してみてください。

コスト配分タグの有効化を行う方法は以下の通りです。

  1. 管理アカウントから、「請求とコスト管理」>「コスト配分タグ」をクリック
  2. コスト配分タグとして登録したいタグ(管理アカウント配下のアカウントで使用されているタグが表示)の中にチェックを入れて「有効化」をクリック 
    ※新しいタグをリソースに追加してこちらの画面に表示されるまでに最大 24 時間かかる場合があります
  3. 有効化を行ったタグのステータスが「アクティブ」になっていることを確認

画像をクリックすると拡大します

また、AWS リソースへのタグ付けはマネジメントコンソール上でも可能ですが、タグエディタ、AWS リソースグループのタグ付け API、AWS CloudFormation、AWS Cloud Development Kit (AWS CDK) を用いることも可能です。具体的なタグ付け方法に関しては、以下のブログを参考にしながらぜひ実践してみてください !


コスト可視化ツール

AWS で提供しているコスト可視化ツール (もしくは機能)として以下をご紹介します。

  • AWS Cost Explorer : 使いやすいインターフェースでコストと使用状況を表示および分析できるツール
  • AWS Data Exports : コストと使用状況データのエクスポートや Amazon QuickSight を用いたダッシュボード出力が可能
  • AWS Cost Categories : ニーズに基づいてコストおよび使用状況を特定のカテゴリにグループ化できる機能

コスト可視化に使う AWS ツールは何が思い浮かぶでしょうか ? マネジメントコンソールから分かりやすいインターフェースでコスト分析が出来るという理由で、AWS Cost Explorer を真っ先に思い浮かべる人も多いのではないでしょうか ?

AWS Cost Explorer を使用することで、アカウント、使用サービス、コスト配分タグなどの特定の条件を用いたコスト分析が可能です。

画像をクリックすると拡大します

また、AWS re:Invent 2023 で、以下の 3 つの機能の無償提供が発表されました。機能の有効化には、請求とコスト管理 > コスト管理の設定から有効化が必要ですので、未設定の場合は有効化することをおすすめします。

  • 日単位の詳細度の場合、従来 13 か月分のデータが保持可能だったが、それを 14 か月まで拡大
  • 月単位の詳細度の場合、従来 13 か月分のデータが保持可能だったが、それを 38 か月まで拡大
  • 日単位の詳細度でリソースレベルのデータを 14 日間可視化可能

画像をクリックすると拡大します

次に、2023 年 11 月に一般提供が開始された AWS Data Exports の紹介です。それに伴い、従来の Cost and Usage Reports (レガシー CUR) を改良した CUR 2.0 が利用可能となりました。CUR2.0 作成時には、特定の列のみをクエリしてデータをエクスポートすることも可能です。

画像をクリックすると拡大します

さらに、CUR 2.0 のデータを QuickSight へエクスポートしてダッシュボード (Cost and Usage Dashboard (CUD)) を簡単に作成できる機能が追加されました。また、レガシー CUR も同様に AWS Data Exports より表示、同様のフォーマットでデータのエクスポートが可能です。なお、レガシー CUR から CUR2.0 への変更点は以下の通りです。

  • データが存在しない場合でも全ての列が表示
  • 一部の product 列と resource 列が、それぞれ product 列および resource_tags 列に統合 (オプションで CUR と一致したデータを個別の列としてクエリ可能)
  • bill_payer_account_name 列と lineItem_UsageAccount_name 列が追加

画像をクリックすると拡大します

画像をクリックすると拡大します

画像をクリックすると拡大します

AWSマネジメントコンソールにアクセスできない場合でも、QuickSight への閲覧権限を付与することで CUD は共有可能です。データエクスポートの機能を使って CUD を作成し、コスト可視化により各担当者のコスト意識を高めて組織全体でコスト最適化を推進してみてはいかがでしょうか ?

なお、リソースレベルの詳細情報やリザーブドインスタンスおよび Savings Plans の情報をダッシュボードとして出力したい場合は、Cloud Intelligence Dashboards (CID) を使用することも有効な手段ですので、ぜひ検討してみてください。

以下のブログでは、CUDとCIDの特徴を紹介しておりますので、参考にしていただければと思います。

次に紹介するのは、AWS Cost Categories です。AWS Cost Explorer や CUR2.0 で可視化する際に、組織内のニーズに合わせて可視化条件を指定してレポートを作成したいという要望はありませんか ?

AWS Cost Categories を利用することで、アカウント、料金タイプ、サービス、リージョン、使用タイプ、コスト配分タグの条件を指定して、条件に合致したデータのグループを作成することが可能です。グループ作成後は、AWS Cost Explorer や CUR2.0 でコスト可視化する際に使用できます。

AWS Cost Categories は、AWS Organizations ご利用の際は管理アカウント側での設定が必要ですのでご注意ください。

画像をクリックすると拡大します

他にも、第1回 でも紹介した様に、myApplications を使用してアプリケーション単位でコストを可視化することも有効ですので、今回ご紹介した可視化ツールと合わせて皆様の組織に合った可視化の仕組みを構築いただければと思います。


まとめ

第 2 回では CFM の可視化をテーマにして AWS サービスの紹介を行いました。CCOE が会社や組織全体でコスト最適化を推進する際に活用できる情報を意識してご紹介しましたので、皆様にとって役立つ情報であれば嬉しいです。

第 3 回では CFM のコスト最適化をテーマにした AWS サービスの紹介を行います。こちらも CCOE の皆様にとって役立つ情報が詰まっていますので、ぜひお楽しみに !


builders.flash メールメンバーへ登録することで
AWS のベストプラクティスを毎月無料でお試しいただけます

筆者プロフィール

山下 大介
アマゾン ウェブ サービス ジャパン合同会社
カスタマーソリューションマネージメント統括本部 カスタマーソリューションマネージャー

2020 年 に AWS へ入社し、カスタマーソリューションマネージャー (CSM) としてエンタープライズのお客様向けに、戦略的に上手にクラウドをご活用いただくためのご支援をしています。
プライベートでは、最近飼い始めた犬 (カニンヘンダックスフンド) に毎日癒されながら生活しています。

 

AWS を無料でお試しいただけます

AWS 無料利用枠の詳細はこちら ≫
5 ステップでアカウント作成できます
無料サインアップ ≫
ご不明な点がおありですか?
日本担当チームへ相談する