Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh data alokasi biaya terpisah
Tujuan dari contoh berikut ini adalah untuk menunjukkan kepada Anda bagaimana data alokasi biaya split dihitung dengan menghitung biaya layanan Amazon ECS individual, tugas di cluster Amazon ECS, dan namespace Kubernetes dan pod di cluster Amazon EKS. Tarif yang digunakan di seluruh contoh hanya untuk tujuan ilustrasi.
catatan
Contoh ini menunjukkan namespace Kubernetes dan pod yang berjalan di klaster Amazon EKS. Kami kemudian dapat menerapkan model biaya yang sama ke layanan Amazon ECS dan tugas yang berjalan di cluster Amazon ECS.
Anda memiliki penggunaan berikut dalam satu jam:
-
Instance tunggal (m5.xlarge) berbagi cluster dengan dua namespace dan empat pod, berjalan selama satu jam penuh.
-
Konfigurasi instans adalah 4 vCPU dan 16 GB memori.
-
Biaya amortisasi dari instans adalah $1/jam.
Data alokasi biaya terpisah menggunakan bobot unit relatif untuk CPU dan memori berdasarkan rasio 9:1. Ini berasal dari per vCPU per jam dan per GB per jam harga di. AWS Fargate
Langkah 1: Hitung biaya unit untuk CPU dan memori
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 | $0,17 | $0,02 |
Langkah 2: Hitung kapasitas yang dialokasikan dan misalnya kapasitas yang tidak digunakan
-
Kapasitas yang dialokasikan: Memori dan vCPU yang dialokasikan ke pod Kubernetes dari instans EC2 induk, didefinisikan sebagai kapasitas maksimum yang digunakan dan yang dicadangkan.
catatan
Jika data penggunaan memori atau vCPU tidak tersedia, data reservasi akan digunakan sebagai gantinya. Untuk informasi selengkapnya, lihat laporan penggunaan Amazon ECS, atau pemantauan biaya Amazon EKS.
-
Kapasitas instans yang tidak digunakan: Kapasitas vCPU dan memori yang tidak terpakai.
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)= Maks (4 — 4,9, 0) = 0
Instance-Unused-memory = Max (Memory-available - SUM(Allocated-memory),
0)= Maks (16 - 14, 0) = 2 GB
Dalam contoh ini, instance memiliki CPU over subscription, dikaitkan dengan Pod2 yang menggunakan lebih banyak vCPU daripada yang dicadangkan.
| 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 |
Langkah 3: Hitung rasio penggunaan terpisah
-
Rasio penggunaan terpisah: Persentase CPU atau memori yang digunakan oleh pod Kubernetes dibandingkan dengan keseluruhan CPU atau memori yang tersedia pada instans EC2.
-
Rasio yang tidak terpakai: Persentase CPU atau memori yang digunakan oleh pod Kubernetes dibandingkan dengan keseluruhan CPU atau memori yang digunakan pada instans EC2 (yaitu, tidak memperhitungkan CPU atau memori yang tidak terpakai pada instance).
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 GB/ 16GB = 0.250
Pod1-vCPU-unused-ratio = Pod1-vCPU-split-usage-ratio /
(Total-CPU-split-usage-ratio – Instance-unused-CPU)(diatur ke 0 Instance-unused-CPU jika 0)
= 0 ( Instance-unused-CPUkarena 0)
Pod1-Memory-unused-ratio = Pod1-Memory-split-usage-ratio /
(Total-Memory-split-usage-ratio – Instance-unused-memory)(diatur ke 0 Instance-unused-memory jika 0)
= 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 |
Langkah 4: Hitung biaya split dan biaya yang tidak terpakai
-
Biaya split: Alokasi biaya bayar per penggunaan dari biaya instans EC2 berdasarkan alokasi CPU dan penggunaan memori oleh pod Kubernetes.
-
Biaya instans yang tidak digunakan: Biaya CPU atau sumber daya memori yang tidak digunakan pada instance.
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 | $0,01 | $0,23 |
| Pod2 | Namespace2 | $0,38 | $0,02 | $0,40 |
| Pod3 | Namespace1 | $0,18 | $0,01 | $0,19 |
| Pod4 | Namespace2 | $0,18 | $0,01 | $0,19 |
| Unused | Unused | $0,04 | ||
| $1 | $0,04 | $1 |
Biaya layanan adalah jumlah biaya pod yang terkait dengan setiap namespace.
Total biaya Namespace1 = $0,23 + $0,19 = $0,42
Total biaya Namespace2 = $0,40 +$0,19 = $0,59
Contoh AWS CUR
Jika Anda memiliki Savings Plans yang mencakup seluruh penggunaan instans EC2 dalam periode penagihan, biaya diamortisasi dihitung menggunakan. savingsPlan/SavingsPlanEffectiveCost
Jika Anda memiliki Savings Plans yang mencakup penggunaan sebagian untuk instans EC2 dalam periode penagihan dan sisa penggunaan instans EC2 ditagih dengan tarif Sesuai Permintaan, biaya amortisasi instans EC2 dihitung menggunakan savingsPlan/SavingsPlanEffectiveCost (untuk) + (untuk penggunaan Sesuai Permintaan). SavingsPlanCoveredUsage lineItem/UnblendedCost