Halaman ini menunjukkan cara menentukan jumlah CPU dan memori yang tersedia di node untuk menjalankan workload Anda di Google Distributed Cloud.
Resource yang dicadangkan
Di setiap node cluster, Google Distributed Cloud mencadangkan resource berikut untuk komponen sistem operasi dan komponen inti Kubernetes:
- 80 miliinti + 1% kapasitas CPU
- 330 MiB + 5% dari kapasitas memori
Misalnya, anggaplah sebuah node memiliki kapasitas default 4 CPU core dan 8 GiB memori. Kemudian, Google Distributed Cloud akan mencadangkan:
- 80 miliinti + 1% dari 4 inti = 120 miliinti
- 330 MiB + 5% dari 8 GiB = 730 MiB
Sistem operasi dan komponen inti Kubernetes tidak berjalan sebagai Pod; komponen tersebut berjalan sebagai proses biasa. Resource yang tersisa, di luar resource yang dicadangkan ini, tersedia untuk Pod.
Nilai minimum pengusiran
Untuk menentukan jumlah memori yang tersedia untuk Pod, Anda juga harus mempertimbangkan nilai minimum penghapusan.
Google Distributed Cloud menetapkan nilai minimum pengusiran sebesar 100 MiB. Artinya, jika memori yang tersedia di node turun di bawah 100 MiB, kubelet
dapat mengeluarkan satu atau beberapa Pod.
Resource yang dapat dialokasikan
Resource pada node yang tersedia untuk Pod disebut resource yang dapat dialokasikan. Hitung resource yang dapat dialokasikan sebagai berikut:
Allocatable CPU = CPU Capacity - Reserved CPU
Allocatable Memory = Memory Capacity - Reserved Memory - Eviction Threshold
Misalnya, anggaplah sebuah node memiliki kapasitas memori 8 GiB, memori yang dicadangkan sebesar 680 MiB, dan nilai minimum penghapusan sebesar 100 MiB. Kemudian, memori yang dapat dialokasikan adalah:
8 GiB - 680 MiB - 100 MiB = 7220 MiB
Resource yang tersedia untuk workload Anda
Resource yang dapat dialokasikan node adalah resource yang tersedia untuk Pod. Hal ini mencakup Pod yang menjalankan workload Anda dan Pod yang menjalankan add-on Google Distributed Cloud. Add-on mencakup pengontrol ingress, layanan ingress, agen Connect, komponen jaringan, komponen logging, dan lainnya.
Pada node tertentu, untuk menentukan resource yang tersedia untuk workload Anda, mulailah dengan resource yang dapat dialokasikan, lalu kurangi resource yang digunakan oleh add-on.
Tantangannya adalah add-on tidak didistribusikan secara merata di antara node cluster Google Distributed Cloud. Satu node mungkin memiliki tiga add-on, dan node lainnya mungkin memiliki sepuluh add-on. Selain itu, berbagai add-on memerlukan jumlah CPU dan memori yang berbeda-beda.
Sebagai aturan umum, Anda dapat memperkirakan bahwa add-on yang berjalan di node memerlukan:
- 200 milicore CPU
- Memori 100 MiB
Sekarang Anda dapat menghitung resource yang tersedia di node untuk workload Anda sebagai berikut:
Allocatable CPU - 200 millicores
Allocatable memory - 100 MiB
Node tertentu memerlukan lebih banyak resource untuk add-on daripada yang ditunjukkan oleh aturan umum sebelumnya. Misalnya, satu node dapat menjalankan add-on Prometheus yang memerlukan memori 2 GiB. Namun, jika cluster Anda memiliki lebih dari beberapa node, wajar untuk mengasumsikan bahwa aturan umum berlaku untuk sebagian besar node.
Langkah berikutnya
Untuk mempelajari lebih lanjut konsep resource yang dapat dialokasikan, lihat Resource yang dapat dialokasikan dalam dokumentasi untuk GKE di Google Cloud.