翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
分割コスト配分データの例
次の例では、個々の Amazon ECS サービス、Amazon ECS クラスター内のタスク、および Amazon EKS クラスター内の Kubernetes 名前空間とポッドのコストを計算することで、分割コスト配分データがどのように計算されるかを示します。この例で使用されている料金は、例示のみを目的としています。
注記
この例では、Amazon EKS クラスターで実行されている Kubernetes 名前空間とポッドを示します。その後、Amazon ECS クラスターで実行されている Amazon ECS サービスとタスクに同じコストモデルを適用できます。
1 時間あたりの使用量は以下のとおりです。
-
2 つの名前空間と 4 つのポッドを持つ単一インスタンス (m5.xlarge) 共有クラスター。1 時間実行されます。
-
インスタンス構成は 4 vCPU と 16 GB です。
-
インスタンスの償却コストは 1 時間あたり USD です。
分割コスト配分データでは、CPU とメモリの相対的な単位重量を 9:1 の比率で計算しています。これは、の vCPU 1 時間あたりの料金と 1 時間あたり GB あたりの料金から算出されます。AWS Fargate
ステップ 1: CPU とメモリの単価を計算する
Unit-cost-per-resource = Hourly-instance-cost/((Memory-weight *
Memory-available) + (CPU-weight * CPU-available))
= 1ドル/ ((1 * 16GB) + (9 * 4vCPU)) = 0.02 ドル
Cost-per-vCPU-hour = CPU-weight * Unit-cost-per-resource
= 9 * 0.02 ドル = 0.17 ドル
Cost-per-GB-hour = Memory-weight * Unit-cost-per-resource
= 1 * 0.02 ドル = 0.02 ドル
Instance | Instance type | vCPU-available | Memory-available | Amortized-cost-per-hour | Cost-per-vCPU-hour | Cost-per-GB-hour |
---|---|---|---|---|---|---|
Instance1 | m5.xlarge | 4 | 16 | 1 USD | 0.17 USD | 0.02 USD |
ステップ 2: 割り当てられた容量とインスタンスの未使用容量を計算する
-
割り当てられた容量: 親 EC2 インスタンスから Kubernetes ポッドに割り当てられたメモリと vCPU。使用済み容量と予約済み容量の最大数として定義されます。
注記
メモリまたは vCPU の使用状況データがない場合は、代わりに予約データが使用されます。詳細については、「Amazon ECS 使用状況レポート」または「Amazon EKS コストモニタリング」を参照してください。
-
インスタンスの未使用容量: vCPU とメモリの未使用容量。
Pod1-Allocated-vCPU = Max (1 vCPU, 0.1 vCPU)
= 1 vCPU
Pod1-Allocated-memory = Max (4 GB, 3 GB)
= 4 GB
Instance-Unused-vCPU = Max (CPU-available - SUM(Allocated-vCPU),
0)
= 最大値 (4 — 4.9、0) = 0
Instance-Unused-memory = Max (Memory-available - SUM(Allocated-memory),
0)
= 最大 (16 — 14、0) = 2 GB
この例では、インスタンスに CPU over Subscription があり、予約されているよりも多くの vCPU を使用した Pod2 が原因です。
Pod name | Namespace | Reserved-vCPU | Used-vCPU | Allocated-vCPU | Reserved-memory | Used-memory | Allocated-memory |
---|---|---|---|---|---|---|---|
Pod1 | Namespace1 | 1 | 0.1 | 1 | 4 | 3 | 4 |
Pod2 | Namespace2 | 1 | 1.9 | 1.9 | 4 | 6 | 6 |
Pod3 | Namespace1 | 1 | 0.5 | 1 | 2 | 2 | 2 |
Pod4 | Namespace2 | 1 | 0.5 | 1 | 2 | 2 | 2 |
Unused | Unused | 0 | 2 | ||||
4.9 | 16 |
ステップ 3: 分割使用率を計算する
-
分割使用率: EC2 インスタンスで使用可能な CPU またはメモリ全体に対する、Kubernetes ポッドが使用する CPU またはメモリの割合。
-
未使用率: EC2 インスタンスで使用されている CPU またはメモリ全体に対する Kubernetes ポッドで使用されている CPU またはメモリの割合 (つまり、インスタンスで未使用の CPU またはメモリを考慮しない)。
Pod1-vCPU-split-usage-ratio = Allocated-vCPU / Total-vCPU
= 1 vCPU/4.9vCPU = 0.204
Pod1-Memory-split-usage-ratio = Allocated-GB / Total-GB
= 4 ギガバイト/ 16ギガバイト = 0.250
Pod1-vCPU-unused-ratio = Pod1-vCPU-split-usage-ratio /
(Total-CPU-split-usage-ratio – Instance-unused-CPU)
(インスタンス未使用 CPU が 0 の場合は 0 に設定)
= 0 (インスタンス未使用 CPU は 0 なので)
Pod1-Memory-unused-ratio = Pod1-Memory-split-usage-ratio / (Total-Memory-split-usage-ratio – Instance-unused-memory)
(0 の場合は 0 nstance-unused-memory に設定)
= 0.250/(1-0.125) = 0.286
Pod name | Namespace | vCPU-split-usage-ratio | vCPU-unused-ratio | Memory-split-usage-ratio | Memory-unused-ratio |
---|---|---|---|---|---|
Pod1 | Namespace1 | 0.204 | 0 | 0.250 | 0.286 |
Pod2 | Namespace2 | 0.388 | 0 | 0.375 | 0.429 |
Pod3 | Namespace1 | 0.204 | 0 | 0.125 | 0.143 |
Pod4 | Namespace2 | 0.204 | 0 | 0.125 | 0.143 |
Unused | Unused | 0 | 0.125 | ||
1 | 1 |
ステップ 4: 分割コストと未使用コストの計算
-
分割コスト: Kubernetes ポッドによって割り当てられた CPU とメモリの使用量に基づく EC2 インスタンスのコストの 1 使用あたりの支払い。
-
未使用インスタンスコスト: インスタンス上の未使用の CPU またはメモリリソースのコスト。
Pod1-Split-cost = (Pod1-vCPU-split-usage-ratio * vCPU-available *
Cost-per-vCPU-hour) + (Pod1-Memory-split-usage-ratio * Memory-available *
Cost-per-GB-hour)
= (0.204 * 4 vCPU * 0.17 ドル) + (0.25 * 16GB * 0.02 ドル) = 0.22 ドル
Pod1-Unused-cost = (Pod1-vCPU-unused-ratio *
Instance-vCPU-unused-ratio * vCPU-available * Cost-per-VCPU-hour) +
(Pod1-Memory-unused-ratio * Instance-Memory-unused ratio * Memory-available
* Cost-per-GB-hour)
= (0 * 0 * 4 * 0.17 ドル) + (0.286 * 0.125 * 16 * 0.02 ドル) = 0.01 ドル
Pod1-Total-split-cost = Pod1-Split-cost +
Pod1-Unused-cost
= 0.23 ドル
Pod name | Namespace | Split-cost | Unused-cost | Total-split-cost |
---|---|---|---|---|
Pod1 | Namespace1 | 0.22 USD | 0.01 USD | 0.23 USD |
Pod2 | Namespace2 | 0.38 USD | 0.02 USD | 0.40 USD |
Pod3 | Namespace1 | 0.18 USD | 0.01 USD | 0.19 USD |
Pod4 | Namespace2 | 0.18 USD | 0.01 USD | 0.19 USD |
Unused | Unused | 0.04 USD | ||
1 USD | 0.04 USD | 1 USD |
サービスのコストは、各名前空間に関連付けられたポッドのコストの合計です。
Namespace1 の合計コスト = 0.23 USD + 0.19 USD = 0.42 USD
Namespace2 の合計コスト = 0.40 USD + 0.19 USD = 0.59 USD
サンプル AWS CUR
請求期間中の EC2 インスタンスの使用量全体をカバーするSavings Plan をお持ちの場合、償却コストはを使用して計算されます。savingsPlan/SavingsPlanEffectiveCost
請求期間中に EC2 インスタンスの部分的な使用量をカバーする Savings Plan sがあり、残りの EC2 インスタンス使用量がオンデマンド料金で請求される場合、EC2 インスタンスの償却コストは savingsPlan/SavingsPlanEffectiveCost ( の場合 SavingsPlanCoveredUsage) + lineItem/UnblendedCost (オンデマンド使用量の場合) を使用して計算されます。