Amazon ECS 使用状況レポート
AWS は、Amazon ECS リソースのコストおよび使用量を分析するために使用できる、Cost Explorer と呼ばれるレポートツールを提供します。
Cost Explorer を使用して、使用状況とコストのグラフを表示できます。過去 13 か月からデータを表示でき、また次の 3 か月間にどのくらい使用する可能性があるかを予測します。Cost Explorer を使用すると、時間の経過とともに AWS リソースに費やす金額のパターンを確認できます。例えば、Cost Explorer を使用して、さらに調べる必要がある分野を特定し、コストを把握するために使用できる傾向を確認できます。データの時間範囲を指定したり、時間データを日または月ごとに表示することもできます。
コストと使用状況レポートの計測データには、すべての Amazon ECS タスクの使用状況が示されます。計測データには、実行された各タスクの CPU 使用量が vCPU-Hours
として、メモリ使用量が GB-Hours
として含まれます。データがどのように示されるかは、タスクの起動タイプによって異なります。
Fargate 起動タイプを使用するタスクの場合、lineItem/Operation
列には FargateTask
が表示され、各タスクに関連するコストが見られます。
EC2 起動タイプを使用するタスクの場合、lineItem/Operation
列には ECSTask-EC2
が表示され、それらのタスクに直接関連するコストはありません。メモリの使用状況など、レポートに表示される計測データは、指定された請求期間にタスクが予約したリソースの合計を表します。このデータを使用して、Amazon EC2 インスタンスの基盤となるクラスターのコストを決定できます。Amazon EC2 インスタンスのコストと使用状況データは、Amazon EC2 サービスの下に個別に示されます。
Amazon ECS マネージドタグを使用して各タスクが属するサービスやクラスターを識別することもできます。詳細については、「請求にタグを使用する」を参照してください。
重要
計測データは、2018 年 11 月 16 日以降に起動したタスクでのみ表示されます。この日付より前に起動したタスクには、計測データが表示されません。
Cost Explorer でコスト配分データを並べ替えるために使用できるフィールドの例を次に示します。
-
クラスター名
-
サービス名
-
リソースタグ
-
起動タイプ
-
AWS リージョン
-
使用タイプ
AWSのコストと使用状況レポートの作成の詳細については、AWS BillingユーザーガイドのAWSのコストと使用状況レポートを参照してください。
タスクレベルのコストと使用状況レポート
AWS Cost Management は、Fargate のタスクや EC2 のタスクを含む、Amazon ECS の各タスクの AWS Cost and Usage Report における CPU とメモリの使用状況データを提供できます。このデータはコスト配分データの分割と呼ばれます。このデータを使用して、アプリケーションのコストと使用状況を分析できます。さらに、コスト配分タグとコストカテゴリを使用して、個々のビジネスユニットやチームにコストを分割して割り当てることができます。コスト配分データの分割の詳細については、「AWS Cost and Usage Report ユーザーガイド」の「コスト配分データの分割について」を参照してください。
AWS Cost Management Console で、アカウントのためにタスクレベルのコスト配分データの分割をオプトインできます。管理 (支払者) アカウントをお持ちの場合は、支払者アカウントからオプトインして、すべてのリンクされたアカウントにこの設定を適用できます。
[コスト配分データの分割] を設定すると、レポートの splitLineItem ヘッダーの下に追加の列が表示されます。詳細については、「AWS Cost and Usage Report ユーザーガイド」の「明細の分割の詳細」を参照してください。
EC2 のタスクの場合、このデータは、リソースの使用状況または予約、およびインスタンスの残りのリソースに基づいて、EC2 インスタンスのコストを分割します。
前提条件は次のとおりです。
-
ECS_DISABLE_METRICS
Amazon ECS エージェント設定パラメータをfalse
に設定します。この設定が
false
である場合、Amazon ECS エージェントはメトリクスを Amazon CloudWatch に送信します。Linux では、この設定はデフォルトでfalse
であり、メトリクスは CloudWatch に送信されます。Windows では、この設定はデフォルトでtrue
であるため、メトリクスを CloudWatch に送信して AWS Cost Management が使用できるようにするためには、設定をfalse
に変更する必要があります。ECS エージェント設定の詳細については、「Amazon ECS コンテナエージェントの設定」を参照してください。 -
信頼できるメトリクスの最小 Docker バージョンは、Amazon ECS 最適化 AMI 20220607 以降に含まれる Docker バージョン v20.10.13 以降です。
コスト配分データの分割を使用するには、レポートを作成し、[コスト配分データの分割] を選択する必要があります。詳細については、「AWS Cost and Usage Report ユーザーガイド」の「コストと使用状況レポートを作成する」を参照してください。
AWS Cost Management は、タスクの CPU とメモリの使用状況を使用してコスト配分データの分割を計算します。使用状況が利用できない場合、AWS Cost Management は、使用状況の代わりにタスクの CPU とメモリの予約を使用できます。CUR が予約を使用していることがわかった場合は、コンテナインスタンスが前提条件を満たしていること、およびタスクリソースの使用状況メトリクスが CloudWatch に表示されることを確認します。