HAQM Web Services ブログ

コスト配分タグを利用してAWS Transit Gateway のデータ処理料金を分析する

本記事は 2025年01月08日に公開された ”Analyzing AWS Transit Gateway Data Processing charges with cost allocation tags” を翻訳したものです。

はじめに

AWS は AWS Transit Gateway においてコスト配分タグをサポートし、一般提供することを発表しました。コスト配分タグを使用すると、AWS リソースにタグを付け、タグごとにコスト内訳を確認できます。以前まで、Transit Gateway はアタッチメントの時間料金の分類と割り当てにコスト配分タグをサポートしていました。今回の発表により、マルチアカウントシナリオでタグを使用してデータ処理料金を割り当てることができるようになりました。この記事では、Transit Gateway でコスト配分タグを使用して、データ処理料金をタグごとに分類して割り当てる方法を紹介します。

Transit Gateway の料金とコスト配分

Transit Gateway では、アタッチメントごとの1時間あたりの使用料金に加え、Transit Gateway を通過するトラフィック量に応じた使用料金があります。大規模なマルチアカウント環境では、Transit Gateway をインフラストラクチャーアカウントにデプロイするのが一般的です。その後、AWS Resource Access Manager (AWS RAM) を使用して組織内のすべて、または一部のアカウントと共有します。共有されたアカウントは、VPC 接続用の VPC アタッチメントを表示したり、作成したりできます。このシナリオでは、以下に示すTransit Gateway の使用料金は共有されたアカウントに課金されます。

  1. VPC アタッチメントの 1 時間あたりの料金
  2. Transit Gateway に送信されたデータ量に応じたデータ処理料金
    詳細な料金と例については、Transit Gateway の料金ページをご覧ください。

企業内の異なるチームがTransit Gateway の VPC アタッチメントを所有している場合、コスト配分のために各チームのTransit Gateway 使用量と料金を決定したいケースがあります。これらのアカウントが統合請求の一部であり、すべての料金が組織内の支払いアカウントに集約される場合、各チームのTransit Gateway コストの追跡、レポート作成、可視化することが課題になる可能性があります。以前のポストでは、Transit Gateway フローログを使用して個別のアカウント料金を決定する方法を示しています。このアプローチには、HAQM Athena を使用してフローログをクエリすることが含まれており、追加のセットアップと設定が必要になる場合がありました。

Transit Gateway がコスト配分タグをサポート

Transit Gateway のコスト配分タグのサポート開始により、このタスクはシンプルになりました。各共有アカウントでTransit Gateway リソースにタグを付け、コスト配分タグを有効化することで、時間単位のアタッチメント料金とデータ処理料金の両方についてコストを追跡できるようになります。
タグはAWSリソースに割り当てるキーと値のペアです。AWS Cost Explorer では、タグをコスト配分タグとして有効化できます。有効化すると、コスト配分タグによってコストを分類し追跡することができます。例えば、「Team」という名前のタグを作成し、値を「A」として、会社内のチームAが所有するリソースに割り当てることができます。「Team」タグをコスト配分タグとして有効化した後、このタグで料金を追跡したり、Cost Explorer でタグによるフィルタリングやグループ化を行ったり、さらなる分析や可視化のために、「AWS コストと使用状況レポート」などに追加したりすることができます。

AWS のコスト配分は以下の3段階のプロセスで行います。

  1. リソースにコスト配分タグを付ける
  2. AWS Billing Console のコスト配分タグセクションでタグを有効化する
  3. Cost Explorer でタグをフィルタリング、グループ化し、コストカテゴリを作成する

リソースにタグを作成してアタッチした後、24時間以内にAWS Billing Console のコスト配分タグセクションの「ユーザー定義コスト配分タグ」に表示されます。AWS がリソースタグの追跡を開始するには、これらのタグを有効化する必要があります。タグを有効化してから、Cost Explorer に表示されるまでに最大24時間かかることがあります。Cost Explorer のフィルターまたはグループ化フィールドの「タグ」の下にタグが表示されたら、タグでフィルタリングまたはグループ化を開始して、タグごとの使用状況と料金を表示できます。

コスト配分タグの設定方法

先に述べたように、Transit Gateway の料金はアタッチメント時間と処理されたデータ量に基づいて課金されます。時間単位のアタッチメント料金を分類し配分するには、Transit Gateway アタッチメントにキーとユニークな値でタグ付けします。同様に、Transit Gateway のデータ処理料金を配分するには、各共有アカウントのTransit Gateway リソースにキーとユニークな値でタグ付けします。図1の例示アーキテクチャがこのアプローチを示しています。


図1: アーキテクチャの例

ここでは、共有サービスアカウントに1つのTransit Gateway があります。このアカウントには、Transit Gateway に接続された1つのShared Service VPC があります。また、異なるアカウントのWorkload VPC 二つが同じTransit Gateway に接続されています。設定を始めるには、以下の手順に従ってください。

ステップ1:各アカウントのTransit Gateway リソースと、Transit Gateway アタッチメントに以下のようにタグを付けます。

  1. Shared Service VPC接続に「Team:Infra」とタグ付け
  2. Workload VPC A アタッチメントに「Team:A」とタグ付け
  3. Workload VPC B アタッチメントに「Team:B」とタグ付け
  4. 共有サービスアカウントのTransit Gateway に「Team:Infra」とタグ付け
  5. ワークロードアカウントAのTransit Gateway リソースに「Team:A」とタグ付け
  6. ワークロードアカウントBのTransit Gateway リソースに「Team:B」とタグ付け

ステップ2 : コスト配分タグで「Team」タグを有効化する

ステップ1で適切にリソースにタグ付けした後、支払いアカウントのAWS Billing and Cost Management コンソールでタグが利用可能になるまで最大24時間かかる場合があります。その後、コスト配分タグとして有効化することができます。
図2は、AWS Billing and Cost Management コンソールのコスト配分タグセクションで、「Team」タグが有効化可能な状態で表示されていることを示しています。


図2.コスト配分タグの表示

以下に示す図3は、「Team」タグが有効化されたコスト配分タグとして表示されていることを示しています。

図3.有効化されたコスト配分タグ

ステップ3:Cost Explorer で「Team」タグを使用してフィルタリングとグループ化を行う

タグフィルターを適用すると、Cost Explorer は選択された値でタグ付けされたリソースの料金のみを表示します。また、特定のタグでグループ化すると、料金は選択されたタグの値ごとにグループ化されます。図4は、各チームのTransit Gateway の1時間あたりのアタッチメント料金とデータ処理料金を示しています。

図4. Team タグによるフィルタリングとグループ化

もし「Team」タグで他のリソースがタグ付けされている場合、それらの料金も図4のビューに反映されます。各チームのTransit Gateway のデータ処理料金のみを確認するには、「Usage Type」フィルターに”<Region>-TransitGateway-Bytes (GigaBytes)”を追加します。この例では、Transit Gateway はus-east-1 AWS リージョンにあるため、図5に示すように、USE1-TransitGateway-Bytes (GigaBytes)でフィルタリングします。

図5: 「USE1-TransitGateway-Bytes (GigaBytes)’」でフィルタリングし、「Team」 タグでグループ化した結果

AWS コストカテゴリーを使用した可視化

AWS コストカテゴリーを使用すると、ニーズに基づいてコストと使用情報を意味のあるカテゴリーにグループ化できます。カスタムカテゴリーを作成し、アカウント、タグ、サービスなどの様々な要素によって定義したルールに基づいて、コストと使用状況をカテゴリーにマッピングできます。コストカテゴリーが設定され有効化されると、AWS Cost Explorer、AWS BudgetsAWS Cost and Usage Report (CUR)でこれらのカテゴリー別にコストと使用状況を表示できます。
この例では、コストカテゴリーで 「Team」 という名前のカテゴリーを定義し、「Team」 タグの値に基づいてコストと使用状況を分類するルールを構築しています。これにより各チームのコストが分類され、図6に示すようにコストカテゴリーで視覚化できます。

図6. コストカテゴリーによる可視化

留意事項と制限事項

VPC、AWS Direct Connect、またはVPNからTransit Gateway に送信される通信量(Gigabyte)に対してデータ処理料金が適用されます。AWS Site-to-Site VPN 接続をTransit Gateway にアタッチする場合、VPN接続はTransit Gateway と同じアカウントにある必要があります。そのため、データ処理料金はそのアカウントで集計されます。Direct Connectアタッチメントの場合、データ処理料金はDirect Connect Gateway を所有するアカウントに適用されます。Transit Gateway ピアリングまたは Transit Gateway Connect アタッチメントから送信されるトラフィックにはデータ処理料金はかかりません。
効果的なコスト配分のために、個々のTransit Gateway アタッチメントはアタッチメントごとのコスト配分のタグ付けを行うことができますが、データ処理料金はアカウントレベルで集計されることに注意することが重要です。つまり、データ処理料金は、同じTransit Gateway にアタッチされた単一アカウントからのすべてのVPC に対して集計されます。
さらに、Transit Gateway ピアリングアタッチメントの場合、各Transit Gateway 所有者は他のTransit Gateway とのピアリングアタッチメントに対して時間単位で請求されます。

最後に

このポストでは、マルチアカウント環境でTransit Gateway のデータ処理料金を表示する際に、コスト配分タグをどのよう利用するかを示しました。また、コスト配分タグを使用してコストカテゴリーでコストを可視化する方法も示しました。コスト配分タグについてさらに詳しく学ぶには、ドキュメンテーションページをご覧ください。

翻訳はNetwork Specialist Solutions Architect の奥村が担当しました。原文はこちらです。

執筆者について

Suresh Samuel
Sureshは、AWSのプリンシパル・テクニカル・アカウント・マネージャーです。
金融サービス業界の顧客がAWSで業務を行うのを支援しています。
仕事をしていない時は、テキサス州で鳥を撮影したり、家族と過ごしたり
しています。
Anbu Kumar Krishnamurthy
Anbuは、AWSのシニア・テクニカル・アカウント・マネージャーで、
顧客のビジネスプロセスをAWSクラウドと統合し、運用の卓越性と
効率的なリソース利用を実現するための支援を専門としています。
顧客のソリューション設計と実装、問題のトラブルシューティング、
AWSの環境最適化を支援しています。
顧客が望むビジネス成果を達成するためのソリューションを設計
する際に、顧客と協力して取り組んでいます。