Mengoptimalkan Biaya Kubernetes

Kubernetes yang saya maksud disini adalah GKE (Google Kubernetes Engine) ya, sebuah service dari Google Cloud yang memungkinkan kita untuk membangun infrastruktur cloud dengan orkestrasi Kubernetes pada backbone Google Cloud Platform.

Kantor saya sudah mengimplementasikan Kubenernetes hampir 4 tahun terakhir, kurang lebih ketika saya pertama join kesini dan sering berinteraksi dengan DevOps. Tentunya saya sudah tidak lagi mengurus hal teknis, melainkan lebih ke bantu-bantu dan ngeliatin data billingnya aja.

Nah, ketika layanan ini mulai kami pakai, saya lebih penasaran bagaimana cara mengukur apakah kami sudah menggunakan teknologi Kubernetes ini dengan optimal.

Sebab dikatakan di luar sana, supaya infrastruktur kita lebih fleksibel dan tahan banting, gunakan aja Kubernetes, pasti mantap.

Secara teknis memang benar, banyak sekali manfaat yang kami rasakan ketika sudah mengadopsi Kubernetes. Salah satunya adalah kami mulai terbiasa menggunakan metode IaC (Infrastructure as Code) untuk mengkonfigurasi node-node yang ada di dalammnya.

Tapi apakah dari billing juga optimal? Bagaimana mengidentifikasinya?

Triknya adalah, pelajari benar-benar GCP Billing Console dengan benar, terutama menu-menu filternya. Saya biasanya selain menggunakan dashboard tersebut juga menggunakan BigQuery untuk mengakses langsung datanya dan diolah di tempat lain, misalnya di Google Sheets.

Saya akan cek Namespace yang bernama kube: unallocated. Jika nilainya semakin kecil, maka akan semakin optimal.

kube: unallocated adalah kategori biaya dalam laporan GKE Cost Allocation yang menunjukkan kapasitas node yang sudah Anda bayar tetapi tidak digunakan oleh workload apa pun.

Sederhananya, ini adalah “pemborosan” atau idle capacity di dalam cluster Anda.

Dalam model penagihan GKE Standard, Anda membayar untuk seluruh VM (Node). Google kemudian mencoba membagi biaya VM tersebut ke setiap Namespace berdasarkan Resource Request (CPU/RAM yang dipesan oleh Pod).

Idle Resources: Jika Anda memiliki Node dengan 16 vCPU, tetapi total request dari semua Pod hanya 10 vCPU, maka sisa 6 vCPU tersebut akan dicatat sebagai kube:unallocated.

Pastikan selalu cek nilai namespace tersebut, usahakan nilainya semakin mengecil di setiap bulannya. Jika tidak mau repot maka bisa mempertimbangkan menggunakan GKE Autopilot.

Comments

One response to “Mengoptimalkan Biaya Kubernetes”

  1. Zam Avatar

    paling murah ya menghindari pakai Kubernetes. 🫣

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.