Amazon Web Services ブログ

クラウドコストのレポートと監視

みなさん、こんにちは。カスタマーソリューションマネージャーの山下です。今回は、クラウドコストのレポートと監視の方法をご紹介します。このブログでは、クラウドを使用する組織にとってコストの可視性が重要である理由と、コストの可視化と監視のためのツールを紹介します。

この文章は、プロジェクトやチームのクラウドコストの確認や管理をしている方や、CxOとして会社全体のクラウドコストの管理をしている方などにお勧めいたします。具体的には、Finacial Controller(会計監査役)、Chief Accounting Officer(財務統括役員)、Financial Planning&Analysis(財務計画・分析担当)、Procurement(調達担当)、Financial Analyst(財務分析担当)、Accounts Payable(経理担当)、Cloud Financial Management Leader(クラウド財務管理責任者)を対象としています。

ご紹介するツール

コストの可視化および測定の重要性

一般的に、クラウドに関わらずビジネスに関連するコストの性質を理解することは重要です。そのコストの性質を理解するためには、『コストを可視化する』『コストを測定する』2つの観点が重要です。

「コストを可視化する」ことがクラウドにとって重要である理由の1つとして、クラウドの利用状況は動的であるという点が挙げられます。例えば、小規模なAmazon Elastic Compute Cloud instance (Amazon EC2) を起動して業務を行っており、毎月使用量を支払っていたとします。その後、業務拡大により追加で5台の小規模Amazon EC2、2台の大規模Amazon EC2 instanceを起動するということも考えられるでしょう。この様に、ビジネスや業務の変動によりクラウドの利用状況は変化し、クラウドの利用料に影響を与えます。この影響を正確に把握するためには、コストがどのように変動しているかを把握することが非常に重要です。さらに、「コストを可視化する」ことにより、IT部門、ビジネス部門、経理部門など、社内関係者にクラウドのコストに関する情報共有を行うことも可能となります。クラウドの利用状況を把握し、コストを可視化することにより、組織としてのクラウドコスト戦略を計画・予測し、財務管理の強化に繋げることができます。

また、クラウドが組織にもたらす価値を測定するには、コストの可視化だけでなく、コストを測定できることも重要です。具体的に言うと、オンプレミスからクラウドへのシステム移行により必要となるクラウドコストの見積もりを行った場合、クラウドへの移行が完了した後に、実際のクラウド支出が見積もったコストまたは予算と一致していることを確認することも重要になります。コストを測定および監視することで、事前に見積もったコストとの乖離があったとしても、予想外のコスト傾向に迅速に対応できるようになります。

AWS Billing and Cost Management

コストレポートとモニタリングツールのセットを総称して「請求とコスト管理」と呼びます。この一連のツールを使用して以下を実現することが可能になります。

  • 将来のクラウドコストの見積もりと計画に役立てる
  • クラウドコストが上昇したりしきい値を超えたりしたときに通知を受け取る

また、ツールを使用してクラウド支出の源泉を分析し、複数の AWS アカウントを使用する際の財務組織の運用効率を向上させることもできます。それでは、「請求とコスト管理」に用いる、いくつかのツールを紹介いたします。

AWS請求コンソール

AWS請求コンソールから請求書にアクセスすることができます。AWS アカウントを開設した後のすべての請求書を表示できます。一括請求を有効にしている場合は、すべての連結アカウントの費用を 1 つのビューで確認できます。ここでサービス別の使用量を確認するか、切り替えてアカウント別の使用量を確認できます。ボタンを使用して、このレポートを CSV ファイルとしてダウンロードすることもできます。これらをそれぞれ展開すると、費用が発生した地域に関する詳細情報や、その他の詳細情報を表示できます。ただし、コンソールでの請求書の概要をウェブベースで表示するという意味では、かなり制限があります。

AWS Cost Explorer

AWS Cost Explorer は、フィルターに基づいてさまざまなビューでコストと使用状況を評価するのに役立つビジネスインテリジェンス (BI) レポートツールです。AWS Cost Explorerを使うことで、computeサーバーにいくら払っているかなどを把握することができます。Amazon EC2 を使用している場合は、より詳細な調査をすることもできます。たとえば、過去 5 日間にわたり特定のリージョンで実行されている最新の AWS Graviton2 プロセッサを使用したEC2 Instanceの場合、どれくらいの費用がかかるか?といった様な内容です。

AWS Cost Explorerを用いてどの様な調査ができるか、もう少し詳しく紹介いたします。AWS Cost Explorerの一般的なレイアウトは、右側にフィルターがあり、分析したいフィルター項目を選択できます。具体的には、連結アカウント、リージョン、特定のリソースタイプのコスト、サービスコストなどがあります。また、タグ別にコストを確認することも可能です。過去12か月前までの期間を指定して表示することもできます。棒グラフと折れ線グラフを切り替えることができるグラフィカルビューや、CSV ファイルとしてエクスポートできるテーブルビューがあります。

また、API呼び出しを用いてAWS Cost Explorer にアクセスすることもできます。Web コンソールは無料のサービスですが、API 呼び出しの場合、 1 コールあたり 0.01 USDの料金が発生します。例えば、ビジネスデータを格納している社内のデータウェアハウスにデータを統合するなど、プログラムを用いて自動的にデータをエクスポートしたいとうニーズもあるかもしれません。その場合は、毎月、または必要に応じてエクスポートを自動化できるように、API を使用することをお勧めします。

AWS Cost Explorer を使用すると、既に購入したSavings Plansや リザーブドインスタンスに関するレポートや情報も表示できます。これには、それらの購入のインベントリと使用状況、または将来の購入に関する推奨事項が含まれます。さらに、「名前を付けて保存」を押すことでカスタムレポートとして保存できるので、必ずしもレポートを再作成する必要がありません。カスタムレポート機能を使うことで、さまざまなチームや関係者向けのレポートを作成し、コンソールからそれらすべてにアクセスできる様になります。


それでは、AWS Cost Explorer でのコストの表示方法に移りましょう。AWS のお客様の大多数は、非ブレンドコストデータセットを使用して使用状況を理解しています。これは、請求書ページに表示されるコストデータセットです。これは、AWS Cost Explorer を使用してコストを分析したり、AWS Budgets を使用してカスタム予算を設定したりする場合のデフォルトオプションです。非ブレンドコストは会計上の現金主義に基づいて表示されます。例えば、リソースのプロビジョニングに課金される費用や、請求書に表示される費用を意味します。また、正味請求額、つまり割引やクレジットメモの控除額を表示することもできます。

次に、償却とは、前払いした初期費用を、その費用の影響を受ける請求期間全体に按分することです。償却を使用すると、現金主義の会計とは対照的に、会計上の発生主義に基づいたSavings Plansやリザーブドインスタンスなどの購入費用を確認できます。

最後に、ブレンドは当初、単一の支払いアカウントに請求を統合するお客様をサポートするために作成されました。しかし、最近では、これらのコストは計算方法の都合上、あまり使われていません。ブレンド料金は、サービス使用量にブレンドレートを掛けて計算されます。ブレンドレートとは、それぞれのサービスが消費した、オンデマンドインスタンス、Savings Plans、リザーブドインスタンスの平均レートを意味しています。

AWS Cost & Usage Report (AWS CUR)

次に、AWS のCost & Usage Reports、つまり AWS CUR を紹介します。これは、AWS のコストと使用量を最も詳細に表したものです。この中には、リソース ID とコスト配分タグとして有効化されたタグのリストも表示されます。Savings Plansまたはリザーブドインスタンスを購入した場合、それらの料金の項目が表示されます。レポートには、特定のSavings Plansや リザーブドインスタンスから割引を受けたリソースも表示されます。このファイルは、AWS Cost Explorer やマネジメントコンソール上の請求書、ダウンロード可能な PDF が提供する請求情報よりも詳細な情報を必要とするお客様向けに作成されています。


AWS CUR を有効にするには、請求ダッシュボードからCost & Usage Reportsを選択します。次に、レポートに名前を付けます。リソース毎に個別の明細項目を作成するためには、リソース ID をファイルに追加するように指定する(リソースIDのインクルード)必要があります。また、その月の請求額に変更があった場合、古いレポートを更新するように AWS の設定を有効にすることもできます。たとえば、2か月前の請求書のクレジットメモを受け取ったとします。そのクレジットをレポートに反映させたい場合は、データの更新設定より、自動更新オプションにチェックを入れる必要があります。次に、AWS CUR を作成、保存、更新する Amazon S3 の場所を指定できます。最後に、CURを統合したいサービスに応じて、Amazon Athena、Amazon Redshift、または Amazon QuickSight の 3 つのオプションのいずれかを選択します。これにより、圧縮タイプが自動的に選択されます。

コストモニタリングツール

次に、支出をより積極的に監視するために役立つツールを紹介します。

AWS Budgets

AWS Budgetsは予算を実装するのに役立つ無料のAWSサービスです。AWS Cost Explorer にログインしたり QuickSight ダッシュボードに常時アクセスしたりしなくても、コストを監視し予測することで、予期せずにコストが高くなることを検知することが可能になります。たとえば、四半期または月単位で特定の金額を予算として設定し、その予算を超えそうになったときに通知またはアラートを受け取ることができます。予算を超過した場合、または予算超過が予定されている場合に通知を設定できます。AWS Cost Explorer にあるすべてのフィルターに基づいて予算を作成できます。そのため、特定のリージョンのすべてのクラウド支出の予算を作成することも、特定のコスト配分タグが付いたすべてのクラウド支出の予算を作成することもできます。また、クレジットや割引を除いたすべての AWS 支出の予算を設定することから始めることもできます。Savings Plansやリザーブドインスタンスの使用率が特定の基準を下回ったときに通知を受けるように予算を設定できます。お客様は マネジメントコンソールで予算を作成することも、API や AWS CloudFormation テンプレートを使用してプログラムで予算を作成することもできます。

AWS Budgets による予算予測の生成には少なくとも 5 週間分のデータが必要です。お客様は AWS Budgets アラートを最大 10 の E メールアドレスに送信できます。また、Amazon Simple Notification Service(Amazon SNS)を使用して通知することもできます。Slack や Amazon Chime などのアプリケーションに統合し、予算を超えたときにメッセージを送信することも可能です。

AWS Budgets Reports では、それぞれ最大 50 の予算を含む最大 50 のレポートを設定し、それらのレポートを最大 50 人の受信者にEメールで送信できます。1 つ以上の予算を毎週や毎月などの一定の間隔で関係者にEメールで送信することもできます。

AWS Cost Anomaly Detection

プロアクティブなコストレポートに役立つもう 1 つのサービスは、AWS Cost Anomaly Detectionです。このサービスでは、高度な機械学習技術を使用して異常な支出と根本原因を特定し、対策を講じることができます。これは、月末に予期しない高額なクラウド利用の請求書を受け取るリスクを最小限に抑えるためのもう 1 つの方法です。3 つの簡単なステップで、状況に応じた独自のコストモニターを作成し、異常な支出が検出されたときにアラートを受け取ることができます。機械学習は、通常のコスト増加や季節的な傾向などの支出パターンを特定し、異常と思われる場合はアラートを送信します。また、AWS Cost Anomaly Detectionから送信されるアラートに対するフィードバックを提供することでモデルを改善することもできます。請求およびコスト管理ダッシュボードで直接 AWS コスト異常検出を作成するか、AWS Cost Explorer API を使用して開始できます。モニタリングとアラートの設定を行うと、AWS は Amazon SNS または E メールを通じて、個別のアラート、毎日または毎週の概要を通知することができます。また、アラートのしきい値を増やして誤検出アラートを減らし、受信する通知の数を制限することもできます。

AWS Cost Anomaly Detectionは、セットアップが迅速であることに加え、根本原因を分析する機能を持ちます。根本原因分析では、アカウント ID、異常の原因となる AWS サービス、リージョン、使用タイプなど、異常の原因を特定します。その結果、すぐに問題への対処を開始できます。コストデータを分析するときに、意図しない支出や予期しない支出を特定するのが難しい場合があります。これは、複雑な組織や予想されるリソース消費量を完全に把握できない場合に特に当てはまります。さらに、検出された異常を評価することで、サービスの精度をさらに高めることができます。

おわりに

本ブログでは、クラウドコストのレポートと監視に活用できる、AWS Billing and Cost Managementおよびコストモニタリングツールの紹介をさせていただきました。AWSはリソースを利用した秒単位、もしくは時間単位で課金されるモデルであるため、クラウドコスト戦略が重要になります。本ブログでご紹介したツールをまずは使うところから始めていただき、コストの可視化・測定によりクラウドコストの性質をご理解いただき、コストの最適化を進めるきっかけとしていただければ幸いです。

参考情報

本ブログは、AWS Cloud for Finance Professionals の “Measurement and Accountability: Cost Reporting and Monitoring”を基礎情報として、カスタマーソリューションマネージャーの山下大介と青木一晃により作成されました。コスト最適化を行うために以下の情報も併せてご参照ください。

コストに関するご質問やお問い合わせは、お問い合わせページ、もしくは担当営業までご連絡をお願いします。