分割コスト配分データを理解する
コストと使用状況レポート (AWS CUR) を使用して Amazon ECS および Amazon EKS コンテナのコストを追跡できます。分割コスト配分データを使用すると、コンテナワークロードが共有のコンピューティングリソースとメモリリソースをどのように消費しているかに基づいて、コンテナコストを個々のビジネスユニットやチームに割り当てることができます。分割コスト配分データは、新しいコンテナレベルのリソース (つまり ECS タスクと Kubernetes ポッド) のコストと使用状況のデータを AWS CUR に導入します。以前は、AWS CUR は EC2 インスタンスレベルのコストのみをサポートしていました。分割コスト配分データでは、各コンテナの EC2 インスタンスのリソース消費量を調べてコンテナレベルのコストを生成し、インスタンスの償却コストと、インスタンス上で実行されたコンテナが消費する CPU およびメモリリソースの割合に基づいてコストを生成します。
Amazon EKS で使用される高速コンピューティングインスタンスの場合、分割コスト配分データには、CPU とメモリに加えて、特殊なプロセッサへのリソース割り当てが含まれます。これには、NVIDIA GPU、AMD GPU、AWS Trainium、および AWS Inferentia アクセラレーターが含まれます。この機能は Amazon EKS 環境でのみ使用でき、これらの高速コンピューティングリソースのポッドレベルのリソース予約データを提供します。これにより、AI/ML アプリケーションやその他の計算負荷の高いタスクなど、これらの特殊なプロセッサを使用するワークロードのコストを追跡して割り当てることができます。高速コンピューティングインスタンスの最新のリストについては、「高速コンピューティング
分割コスト配分データでは、AWS CUR のコンテナ化されたリソース ID (つまり ECS タスクと Kubernetes ポッド) ごとに、新しい使用記録と新しいコストメトリック列が導入されます。詳細については、「明細の分割の詳細」を参照してください。
分割コスト配分データを AWS CUR に含めると、CPU とメモリのコストを反映するために、1 時間あたり ECS タスクと Kubernetes ポッドごとに 2 つの新しい使用状況レコードが追加されます。1 日あたりの AWS CUR 内の新しい明細項目の数を見積もるには、次の式を使用します。
ECS の場合: (number of tasks * average task lifetime * 2) * 24
EKS の場合: (number of pods * average pod lifetime * 2) * 24
例えば、10 個の EC2 インスタンスからなるクラスターで 1 時間に 1,000 件のポッドが実行されており、そのポッドの有効期間が 1 時間未満の場合、
(1000 * 1 * 2) * 24 = 48,000 new usage records in AWS CUR
高速コンピューティングインスタンスを使用する場合、他の測定オプションが有効になっていても、デフォルトのリソースリクエストでアクセラレーター、CPU、メモリのコストが計算されます。1 日あたりの AWS CUR 内の新しい明細項目の数を見積もるには、次の式を使用します。
高速コンピューティングを使用する EKS の場合: (number of pods * average pod lifetime * 3)
* 24
例えば、10 個の EC2 インスタンスからなるクラスターで 1 時間に 1,000 件のポッドが実行されており、各ポッドの有効期間が 1 時間未満の場合: (1000 * 1 *
3) * 24 = 72,000 new usage records in AWS CUR
注記
ECS の場合: AWSコスト割り当てタグに関しては、コストと使用状況レポートに Amazon ECS 管理のタグまたはユーザーが追加したタグを使用できます。これらのタグは、すべての新しい ECS 分割コスト配分データ使用レコードに適用されます。詳細については、[課金用の ECS リソースのタグ付け]を参照してください。
EKS の場合: 分割コスト配分データは、一部の Kubernetes 属性に新しいコスト配分タグを作成します。これらのタグには、aws:eks:cluster-name、aws:eks:deployment、aws:eks:namespace、aws:eks:node、aws:eks:workload-name、aws:eks:workload-type が含まれます。
aws:eks:cluster-name、aws:eks:namespace、aws:eks:nodeには、クラスター、名前空間、ノードの名前が遡及的に入力されます。aws:eks:workload-typeは、ポッドを管理するワークロードが 1 つだけあり、組み込みワークロードの 1 つである場合にのみ入力されます。ワークロードタイプにはReplicaSet、StatefulSet、Job、DaemonSet、ReplicationControllerのいずれかが含まれ、aws:eks:workload-nameにはワークロードの名前が含まれます。詳細については、「Kubernetes ドキュメント」の「ワークロード」を参照してください。 aws:eks:deploymentはワークロードタイプReplicaSetにのみ入力されます。ReplicaSetを作成するのはデプロイです。
これらのタグは、すべての新しい EKS 分割コスト配分データ使用レコードに適用されます。これらのタグは、デフォルトでコスト配分が有効になっています。aws:eks:cluster-name タグを以前に使用および無効にした場合、分割コスト配分データはこの設定を保持し、タグを有効にしません。これは、[コスト配分タグ]