Kluster Container Service for Kubernetes (ACK) menjalankan Pod yang berbagi sumber daya cloud. Satu Pod dapat mengonsumsi beberapa sumber daya, dan satu sumber daya dapat melayani beberapa Pod. Untuk mengalokasikan biaya kluster berdasarkan departemen atau aplikasi, hitung biaya setiap Pod.
Suite manajemen biaya ACK menyediakan dua kebijakan estimasi biaya berdasarkan watermark sumber daya (rasio pemanfaatan sumber daya). Setiap kebijakan menghitung bagian biaya kluster yang dapat dikaitkan dengan Pod dan namespace tertentu.
Pilih kebijakan estimasi biaya
|
Kebijakan |
Mengalokasikan biaya berdasarkan |
Disarankan saat |
|
Estimasi biaya sumber daya tunggal |
CPU atau memori saja |
Satu jenis sumber daya mendominasi. Misalnya, watermark CPU jauh lebih tinggi daripada watermark memori, atau sebagian besar aplikasi bersifat memory-intensive. |
|
Estimasi biaya sumber daya berbobot |
CPU dan memori, dengan bobot berdasarkan rasio pemanfaatan masing-masing |
Pemanfaatan CPU dan memori mirip, atau aplikasi mengonsumsi kedua jenis sumber daya tersebut. |
Estimasi biaya sumber daya tunggal
Kebijakan default dalam suite manajemen biaya. Kebijakan ini menghitung biaya Pod berdasarkan satu dimensi sumber daya: CPU atau memori.
Skenario yang berlaku
Watermark sumber daya adalah rasio antara sumber daya yang diminta terhadap total sumber daya yang dapat dialokasikan. Di banyak kluster, satu jenis sumber daya menjadi penentu keputusan penjadwalan. Ketika watermark salah satu sumber daya jauh lebih tinggi daripada yang lain, sumber daya tersebut mendominasi biaya kluster.
Contoh: Aplikasi memory-intensive seperti beban kerja Java meminta jumlah memori yang besar. Jika watermark memori mencapai 90%, ketersediaan memori menentukan apakah Pod dapat dijadwalkan. Biaya memori kemudian menyumbang 90% dari total biaya kluster. Kebijakan estimasi biaya sumber daya tunggal menangkap hubungan ini secara akurat.
Perhitungan biaya Pod
Kebijakan ini menghitung biaya CPU atau memori suatu Pod dengan rumus berikut:

Perhitungan biaya namespace
Namespace mengelompokkan Pod terkait yang memiliki bidang umum. Biaya namespace sama dengan jumlah rasio biaya semua Pod dalam namespace tersebut, dikalikan dengan jumlah pembayaran total dari tagihan kluster.
Rumus biaya namespace:

Rumus rasio biaya namespace:

Estimasi biaya sumber daya berbobot
Menghitung biaya Pod dengan menggunakan CPU dan memori, dengan bobot berdasarkan rasio pemanfaatan di tingkat kluster. Hal ini menghasilkan alokasi yang lebih seimbang ketika beban kerja mengonsumsi kedua jenis sumber daya tersebut.
Skenario yang berlaku
Gunakan kebijakan estimasi biaya sumber daya berbobot saat:
-
Watermark CPU dan watermark memori kluster saling berdekatan.
-
Aplikasi dalam kluster mengonsumsi sumber daya CPU dan memori.
Ketika biaya CPU dan biaya memori mirip, membandingkan watermark masing-masing memberikan dasar yang bermakna untuk menentukan bobot alokasi.
Perhitungan biaya Pod
Kebijakan estimasi biaya sumber daya berbobot menghitung biaya Pod berdasarkan bobot CPU dan bobot memori Pod tersebut. Bobot-bobot ini diturunkan dari watermark CPU dan watermark memori di tingkat kluster.
Rumus biaya Pod:

Rumus watermark dan bobot
Watermark CPU, watermark memori, bobot CPU, dan bobot memori dihitung sebagai berikut:
-
Watermark CPU (rasio pemanfaatan CPU):

-
Watermark memori (rasio pemanfaatan memori):

-
Bobot CPU:

-
Bobot memori:

Perbandingan hasil kebijakan
Contoh 1: Satu jenis sumber daya mendominasi
Pengaturan: Dua aplikasi yang intensif memori berjalan dalam satu Kluster.
| Aplikasi | vCore yang diminta | Memori yang diminta |
|---|---|---|
| App A | 1 vCore | 2 GB |
| App B | 1 vCore | 4 GB |
-
Watermark memori: 90%
-
Watermark CPU: 20%
-
Biaya kluster harian: USD 200
Hasil estimasi biaya sumber daya tunggal:
| Dimensi sumber daya | Biaya Pod | Perhitungan | Biaya tidak teralokasikan |
|---|---|---|---|
| Memori | USD 180 | USD 200 x 90% | USD 20 |
| CPU | USD 40 | USD 200 x 20% | USD 160 |
Alokasi berdasarkan memori menangkap 90% biaya kluster. Alokasi berdasarkan CPU menyisakan 80% tidak teralokasikan, meskipun hanya 10% memori kluster yang tersedia untuk penjadwalan.
Hasil estimasi biaya sumber daya berbobot:
-
Bobot memori: sekitar 80%
-
Bobot CPU: sekitar 20%
-
Biaya Pod: USD 152 (USD 180 × 80% + USD 40 × 20%)
-
Biaya tidak teralokasikan: USD 48
Hasil: Kebijakan estimasi biaya sumber daya tunggal (menggunakan memori) mengalokasikan USD 180 dari total USD 200, yang sangat sesuai dengan konsumsi sumber daya aktual. Kebijakan berbobot hanya mengalokasikan USD 152, menyisakan USD 48 tidak teralokasikan. Untuk kluster yang didominasi satu sumber daya, kebijakan sumber daya tunggal menghasilkan estimasi yang lebih akurat.
Contoh 2: Kedua jenis sumber daya dikonsumsi
Setelan: Satu aplikasi memory-intensive dan satu aplikasi CPU-intensive dijalankan dalam satu kluster.
| Aplikasi | vCore yang diminta | Memori yang diminta |
|---|---|---|
| App A | 1 vCore | 4 GB |
| App B | 4 vCore | 1 GB |
-
Watermark CPU: 40%
-
Watermark memori: 50%
-
Biaya kluster harian: USD 200
Hasil estimasi biaya sumber daya tunggal:
| Dimensi sumber daya | Biaya Pod | Perhitungan |
|---|---|---|
| Memori | USD 100 | USD 200 x 50% |
| CPU | USD 80 | USD 200 x 40% |
Hasil estimasi biaya sumber daya berbobot:
-
Bobot memori: sekitar 56%
-
Bobot CPU: sekitar 44%
-
Biaya Pod: USD 91,2 (USD 100 × 56% + USD 80 × 44%)
-
Biaya tidak teralokasikan: USD 8,8
Hasil: Watermark CPU dan memori saling berdekatan (40% dan 50%), yang berarti biaya CPU dan memori mirip. Kebijakan berbobot mempertimbangkan kedua dimensi tersebut dan menghasilkan biaya tidak teralokasikan sebesar USD 8,8, dibandingkan dengan USD 100 atau USD 120 yang tidak teralokasikan pada alokasi sumber daya tunggal. Untuk kluster dengan beban kerja campuran, kebijakan sumber daya berbobot menghasilkan estimasi yang lebih seimbang.
Kurangi biaya tidak teralokasikan dengan kebijakan berbobot
Penyebab: Biaya tidak teralokasikan terjadi ketika watermark salah satu sumber daya jauh lebih tinggi daripada yang lain. Sumber daya dominan mencapai bottleneck sementara sumber daya lainnya menganggur. Misalnya, jika watermark CPU jauh lebih tinggi daripada watermark memori, terdapat sumber daya memori yang menganggur. Kebijakan estimasi biaya sumber daya tunggal dapat mengalokasikan biaya sumber daya menganggur tersebut, tetapi kebijakan berbobot tidak dapat melakukannya.
Solusi: Pilih tipe instans Elastic Compute Service (ECS) yang sesuai dengan profil sumber daya beban kerja Anda. Pastikan watermark CPU dan watermark memori tetap saling berdekatan. Atau, alihkan ke kebijakan estimasi biaya sumber daya tunggal.
API data biaya
-
Kirim permintaan API HTTP untuk mengambil data cost insights guna pengembangan kustom. Untuk informasi selengkapnya, lihat Ikhtisar pemanggilan API untuk mengkueri data biaya.