AWS Cost Explorer を利用してコストを可視化する

本記事ではAWSのCost Explorerの使い方を触ったことがない方向けに画像多めに紹介します。

クラウドを利用しているとどうしても月々お金がかかってしまいます。 会社で利用しているとなるとお金の報告やら予算の策定やらなにやら、 開発とは別のところで苦戦することがあるかもしれません。

私自身も苦戦する中でAWSの費用可視化ツールである Cost Explorer を手探りで利用し、かなり仲良くなりました。 せっかく仲良くなったので利用方法をまとめて社内でも使い方勉強会を開催しましたが、勉強会の直後にCost ExplorerのUIにアップデートが入り、資料の画像が古いものとなってしまいました。

本記事では勉強会で行った内容を新UIに対応させて紹介します。

Cost Explorer とは

AWS Cost Explorer の使いやすいインターフェイスでは、AWS のコストと使用量の経時的変化を可視化し、理解しやすい状態で管理できます。すぐに使用開始し、カスタムレポートを作成してコストと使用量のデータを分析できます。大まかにデータを分析することや (例: すべてのアカウントの合計コストと使用量)、コストと使用量のデータを詳細に分析して傾向、コスト要因、異常を特定できます。

aws.amazon.com

Cost Explorer ではAWSのコストを可視化し、簡単な分析まで行うことができます。 やれることの幅が広く、最初はどこから触ればいいのか戸惑うかと思います。 1つずつ順番に見ていきましょう。

Cost Explorer へのアクセス方法

まずはCost Explorer にアクセスするところからです。 2種類のアクセス方法があります。

アカウントメニューからアクセス

  1. 右上のアカウントメニューから請求ダッシュボードを選択
  2. Cost Management の中から Cost Explorer を選択
  3. Cost Explorerを起動

サーチバーからアクセス

サーチバーに「Cost Explorer」と入れることでアクセスができます。

アクセスできないときは...

Cost Explorer に権限周りでアクセスができない可能性があります。 Cost Explorer にIAMユーザ等でアクセスする場合にはRoot アカウント側でIAM アカウントにアクセスする許可をする必要があります。

詳細なアクセス制御については以下を御覧ください。

docs.aws.amazon.com

  1. アカウントメニューから「アカウント」を選択
  2. IAM ユーザー/ロールによる請求情報へのアクセスの「編集」
  3. 「IAM アクセスのアクティブ化」にチェックを入れ「更新」 

これでIAM ユーザからもCost Explorer の画面が開けるようになりました。

トップ画面の見方

サマリーのグラフ、金額等が表示されています。 下図は何もお金が発生していないアカウントの内容を表示していますが、 実際に費用がかかっている場合にはグラフや金額が出てきます。

① Cost Explorer で表示

こちらのリンクからより詳細な分析のできるCost Explorer画面へ移動します。 移動先の使い方は後ほど紹介します。

② 傾向

特定のインスタンス、サービスがいくら増えた、全体の金額がいくら増えた、などの情報を表示してくれます。 先月との比較が表示されるため月イチで見るのをおすすめします。

③ レポートの表示

Cost Explorerで分析した内容をテンプレートとして保存した「レポート」を作成した際にここに一覧がでてきます。 今回の記事ではレポートの作成については触れません。

Cost Explorerの使い方

本編のCost Explorer画面の使い方です。 Cost Explorer の使い方のポイントは大きく分けて下の3つです。

  1. 日付範囲の指定
  2. グループ化
  3. フィルタ

これらの項目は「レポートパラメータ」としてグラフの右側に設定項目が表示されています。

① 日付範囲の指定

ここで設定できるのは「日付の粒度」「日付範囲」の2つです。 日付の粒度を「月別」として日付範囲を「3か月」とすれば直近3ヶ月の費用変化をグラフとして見れます。

② グループ化

グループ化はとても便利で私のお気に入りの機能です。 対象を決めてグラフを詳細化してくれます。 グループ化の対象を「グループ化を選択」から選びます。

以下の写真では例として「サービス」でグループ化しました。 この場合、月々の利用料のうち、何にいくらかかっているかが詳細にみることができるようになります。 大半の費用をこのアカウントではWAFが占めていることがわかります。

他にもリージョンや料金タイプ、インスタンスタイプ、タグなど様々なグループ化が行なえます。

  • 料金タイプでグループ化
    • 使用量と税金、その他割引がどれだけ入っていたか確認できる
  • タグでグループ化
    • 特定のタグがついたリソースでグループ化できる
    • AWS Organizationsを有効化している場合、親アカウントからグループ化できるタグを指定する必要があります

③ フィルタ

特定のサービスやタグ、インスタンスタイプ等で絞った検索ができます。 指定した条件のみを表示、非表示の両パターンでフィルタが可能です。

  1. フィルタタブより「新しいフィルターを追加」
  2. ディメンションにフィルタの対象を指定、
  3. オペレータで表示、非表示を選択
  4. 値に何をフィルタするか選択
  5. フィルタを適用

フィルタ機能を用いてグループ化の例で費用の大半を占めていた「WAF」の金額表示を消してみました。

ディメンション オペレータ
サービス Exclude WAF

WAF以外の料金がわかるようになりました。 特定のサービスのみを見たい場合にはオペレータをInclude にすることで可能です。

料金タイプのフィルタについて

デフォルトで「クレジット」「払い戻し」が除外されています。 使用量や支払う金額を見る際には不要なため基本的にはつけたままでOK。

  • クレジット
    • キャンペーン等で得たクレジット分の使用料金
    • つい先日AWS re:invent に現地で参加してきてプロモコードを頂いたのでクレジットに金額が表示されるのが楽しみです✌
  • 払い戻し
    • 何かしらの理由で返金された分の金額

Cost Explorer クイズ

ここまででCost Explorer マスターとなった皆さんにクイズです。

Cost Explorer上で日毎に見たとき、月初だけやけに費用が高くなっていることがわかります。 この原因は何でしょう。

答え

白文字で書いています。 選択して読んでください。

月初に税金とリザーブインスタンスの料金がかかっています。 CostExplorer上は1日にこれら2つの料金が表示されるので月初だけ費用が高く見えます。

  • 確認方法
    1. 日付の粒度を「日別」に設定
    2. グループ化を「料金タイプ」に設定
    3. 「定期的な予約料金」と「Tax」が1日のみにかかっていることがわかります

グループ化を「サービス」にすることでTaxが1日にかかっていることがわかりますが リザーブインスタンスの料金は「料金タイプ」でグループ化しないとわかりません。

まとめ

簡単にCost Explorerの使い方とポイントとなる3つの機能を紹介しました。 Cost Explorerは機能も多く見え、なかなか取っつきにくい(と自分は思った)ので本記事を参考に触ってみたいと思っていただけたら幸いです。

AWSのコスト管理に手を付けた際、以下の特集がとてもためになったため共有します。 Cost Explorerの使い方以外にも費用体系などまとまっておりおすすめです。

gihyo.jp