Apakah ada permintaan memori default dan \ atau batasan untuk pods \ containers di k8s \ openshift?

Jan 24 2021

Halo sesama orang DevOps,

Saya mencoba memahami apakah itu permintaan dasar dan \ atau batas per pod \ container di k8s atau Openshift seperti sekarang atau jika Anda mengetahui perubahan di masa mendatang terkait hal itu.

Saya telah melihat jawaban ini: Apa memori default yang dialokasikan untuk pod yang menyatakan bahwa tidak ada, setidaknya untuk implementasi k8s oleh Google dan saya ingin mengetahui secara pasti juga untuk status k8s saat ini dan Openhift dalam penerapan di lokasi.

saat ini menjalankan cluster enterprise openshift 3.11.16 dan segera beralih ke 4.6.4, jadi pertanyaan saya adalah mengenai juga implementasi RedHat untuk membangun di atas k8s default (Openshift).

Apakah ada permintaan dasar atau nilai batas untuk container \ pod?

EDIT: Juga apakah ada cara k8s atau openshift akan memprediksi permintaan memori kontainer oleh bahasa pengembangan aplikasi atau variabel lingkungan yang disetel untuk penerapan (seperti dari perintah java container RUN atau env: JVM_OPTS -Xms1G -Xmx1G)?

Jawaban

2 VasiliAngapov Jan 24 2021 at 01:15

Secara default tidak ada permintaan atau batasan sumber daya, yang berarti setiap pod dibuat menggunakan BestEffort QoS . Jika Anda ingin mengonfigurasi nilai default untuk permintaan dan batasan, Anda harus menggunakan LimitRange .

Pod BestEffort menurut definisi adalah "agar Pod diberi kelas QoS BestEffort, Container di dalam Pod tidak boleh memiliki memori atau batas atau permintaan CPU." Pod BestEffort memiliki prioritas terendah untuk Kubernetes scheduler dan dapat dikeluarkan jika terjadi pertengkaran sumber daya

Semua yang dikatakan di atas berlaku untuk semua distribusi Kubernetes termasuk OpenShift.

1 StavBernaz Feb 04 2021 at 05:31

Tidak ada batas atau permintaan default. Untuk mengonfigurasi sumber daya default, Anda harus membuat sumber daya LimitRange seperti yang dijelaskan di sini:https://docs.openshift.com/container-platform/3.11/dev_guide/compute_resources.html#dev-viewing-limit-ranges

Jika Anda ingin setiap proyek baru dibuat dengan batas sumber daya tertentu, Anda dapat mengubah templat proyek default seperti yang dijelaskan di sini: https://docs.openshift.com/container-platform/3.11/admin_guide/managing_projects.html#modifying-the-template-for-new-projects

Ini tidak berubah di 4.6 juga, hanya implementasi cara memodifikasi LimitRange atau template proyek default. (Metodologinya persis sama)

Adapun pertanyaan Anda tentang memprediksi sumber daya aplikasi, ada beberapa pemain di sekitar masalah ini. Saya hanya mendengar tentang turbonomis yang bahkan dapat mengubah sumber daya Penerapan Anda secara otomatis dengan pemanfaatan dan mungkin juga beberapa metrik khusus.