全部产品
Search
文档中心

Container Service for Kubernetes:Menyesuaikan parameter kubelet untuk kelompok node

更新时间:Nov 11, 2025

Jika konfigurasi kubelet default tidak memenuhi kebutuhan Anda, Anda dapat menyesuaikan parameter kubelet pada kelompok node untuk mengatur perilaku node. Misalnya, Anda dapat menyesuaikan alokasi sumber daya guna mengelola penggunaan sumber daya, mengatur ambang batas eviksi tekanan node untuk mengurangi kekurangan sumber daya, atau mengubah kebijakan manajer topologi demi meningkatkan kinerja sistem.

Batasan

  • Hanya kluster ACK yang menjalankan versi 1.20 atau lebih baru yang mendukung parameter kubelet kustom. Untuk meningkatkan kluster Anda, lihat Meningkatkan kluster ACK secara manual.

  • Hanya kluster ACK Lingjun yang menjalankan versi 1.22 atau lebih baru yang mendukung parameter kubelet kustom. Untuk meningkatkan kluster Anda, lihat Meningkatkan kluster.

Jika versi kluster Anda tidak memenuhi persyaratan ini, perilaku tak terduga mungkin terjadi.

Peringatan

  • Parameter kubelet kustom mengubah konfigurasi node secara batch. Perubahan tersebut langsung berlaku pada node yang sudah ada di kelompok node, dan juga digunakan oleh node baru. Saat perubahan diterapkan, proses kubelet akan dimulai ulang, yang dapat memengaruhi node dan beban kerja yang sedang berjalan. Kami menyarankan agar Anda melakukan operasi ini di luar jam sibuk.

  • Jika `evictionHard`, `kubeReserved`, atau `systemReserved` tidak dikonfigurasi, sistem akan menggunakan nilai default untuk alokasi sumber daya. Untuk informasi selengkapnya tentang cara menghitung nilai default tersebut, lihat Kebijakan alokasi sumber daya node.

  • Perubahan pada konfigurasi alokasi sumber daya dapat mengurangi sumber daya yang dapat dialokasikan pada suatu node. Pada node dengan penggunaan sumber daya tinggi, hal ini dapat memicu eviksi node.

  • Jangan gunakan baris perintah untuk menentukan parameter kubelet yang tidak didukung di Konsol. Operasi ini menimbulkan risiko stabilitas yang signifikan. Anda bertanggung jawab untuk memastikan kebenaran dan kompatibilitas file data pengguna. Konfigurasi yang salah atau konfigurasi yang telah ditinggalkan di versi baru dapat menyebabkan node menjadi tidak tersedia.

  • Saat kubelet dimulai, kubelet menggabungkan konfigurasi dari berbagai sumber berdasarkan prioritasnya. Jika item konfigurasi yang sama diatur melalui beberapa cara, pengaturan dengan prioritas lebih tinggi akan menimpa pengaturan dengan prioritas lebih rendah.

    Lihat urutan penggabungan konfigurasi

    Konfigurasi berikut diurutkan berdasarkan prioritas dari terendah ke tertinggi:

    1. Feature gates di baris perintah, yang ditentukan oleh flag baris perintah --feature-gates.

    2. Berkas konfigurasi kubelet, yang berisi parameter yang disesuaikan melalui Konsol ACK atau OpenAPI.

    3. Berkas konfigurasi plugin, yang dimuat secara alfabetis dari direktori konfigurasi kubelet.

    4. Parameter baris perintah, yaitu parameter selain feature gates yang ditentukan langsung melalui baris perintah.

Menyesuaikan parameter kubelet untuk kelompok node di Konsol

Saat parameter kubelet kustom diterapkan, proses kubelet akan dimulai ulang. Hal ini dapat memengaruhi layanan Anda. Kami menyarankan agar Anda melakukan operasi ini di luar jam sibuk.

  1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

  2. Pada halaman Clusters, temukan kluster yang ingin dikelola lalu klik namanya. Di panel navigasi sebelah kiri, pilih Nodes > Node Pools.

  3. Pada halaman Node Pools, klik image > Kubelet Configuration di kolom Actions pada kelompok node target.

  4. Baca peringatan di halaman tersebut. Klik Custom Parameters, pilih parameter yang ingin dikonfigurasi, tentukan node yang akan ditingkatkan, dan atur kebijakan pembaruan batch. Lalu, klik Submit dan ikuti petunjuk di layar.

    Kebijakan pembaruan batch dijelaskan sebagai berikut:

    • Maximum Concurrent Nodes Per Batch: Konfigurasi kubelet diterapkan ke node secara batch. Proses ini memerlukan waktu. Anda dapat melihat progres dan mengontrol prosesnya—seperti menjeda, melanjutkan, atau membatalkan—melalui daftar event.

    • Interval Between Batches: Interval waktu antar batch.

    Anda dapat menggunakan fitur jeda untuk memverifikasi node yang telah ditingkatkan. Saat Anda menjeda tugas, konfigurasi node saat ini akan diselesaikan. Node yang belum mulai tidak akan dikonfigurasi hingga Anda melanjutkan tugas tersebut.

    Kami menyarankan agar Anda menyelesaikan tugas konfigurasi kustom tepat waktu. Tugas yang dijeda akan dibatalkan secara otomatis setelah tujuh hari. Event dan log terkait juga akan dihapus.

Selain menggunakan Konsol, Anda juga dapat memanggil operasi ModifyNodePoolNodeConfig untuk menyesuaikan parameter kubelet. Bagian berikut menjelaskan parameter kubelet yang dapat disesuaikan dan didukung oleh ACK.

Parameter kubelet yang dapat disesuaikan

Field

Deskripsi

Nilai default

Rentang nilai yang direkomendasikan

allowedUnsafeSysctls

Menentukan sysctl tidak aman atau karakter wildcard sysctl (pola yang diakhiri dengan *) yang diizinkan. Pisahkan beberapa nilai dengan koma (,).

Penting

Sebelum menggunakan parameter ini, evaluasi risikonya secara cermat dan pastikan ketersediaannya.

N/A

Mendukung konfigurasi sysctl dengan awalan berikut:

  • kernel.shm

  • kernel.msg

  • kernel.sem

  • fs.mqueue.

  • net.

containerLogMaxFiles

Jumlah maksimum berkas log untuk sebuah kontainer. Nilainya harus 2 atau lebih. Runtime kontainer harus containerd.

10

[2, 10].

containerLogMaxSize

Ukuran maksimum berkas log kontainer sebelum diputar. Runtime kontainer harus containerd.

100Mi

N/A.

cpuCFSQuota

Mengaktifkan penegakan kuota CPU CFS untuk kontainer dengan batas CPU.

true

Nilai valid:

  • true

  • false

cpuCFSQuotaPeriod

Menetapkan periode kuota CPU CFS.

Feature gate CustomCPUCFSQuotaPeriod harus diaktifkan.

100ms

Nilai dari 1 milidetik hingga 1 detik, inklusif.

cpuManagerPolicy

Kebijakan manajer CPU.

none

Nilai valid:

  • none

  • static

eventBurst

Burst maksimum untuk pembuatan event.

10

[1, 100]. Nilainya harus lebih besar dari atau sama dengan nilai eventRecordQPS.

eventRecordQPS

Jumlah event yang dapat dihasilkan per detik.

5

[1, 50].

evictionHard

Sekumpulan ambang batas eviksi keras yang memicu eviksi pod.

imagefs.available<15%,memory.available<300Mi,nodefs.available<10%,nodefs.inodesFree<5%

Tidak ada.

evictionSoft

Sekumpulan ambang batas eviksi lunak.

Tidak ada

Tidak ada.

evictionSoftGracePeriod

Sekumpulan periode tenggang eviksi.

Catatan

`evictionSoft` harus diatur.

Tidak ada

Tidak ada.

featureGates

Sekumpulan pasangan kunci-nilai yang menggambarkan feature gates untuk fitur eksperimental. Setiap gate direpresentasikan sebagai key=value. Untuk informasi selengkapnya, lihat Feature Gates.

image.png

Penting
  • Sebelum menggunakan parameter ini, evaluasi risikonya secara cermat dan pastikan ketersediaannya.

  • Feature gates yang dihapus tidak berlaku. Perbarui sesegera mungkin. Untuk informasi selengkapnya, lihat Feature Gates (dihapus).

N/A

N/A.

imageGCHighThresholdPercent

Persentase penggunaan disk yang memicu pengumpulan sampah citra. Pengumpulan sampah citra dijalankan ketika penggunaan disk melebihi ambang batas ini.

Nilai ini harus lebih besar dari nilai `imageGCLowThresholdPercent`.

85

[60, 95].

imageGCLowThresholdPercent

Persentase penggunaan disk di mana pengumpulan sampah citra tidak dijalankan. Pengumpulan sampah citra tidak dijalankan jika penggunaan disk berada di bawah ambang batas ini.

Nilai ini harus lebih kecil dari nilai `imageGCHighThresholdPercent`.

80

[30, 90].

kubeAPIBurst

Jumlah maksimum permintaan burst yang dikirim ke server API per detik.

10

[1, 100]. Nilainya harus lebih besar dari atau sama dengan nilai kubeAPIQPS.

kubeAPIQPS

Jumlah permintaan per detik (QPS) ke server API.

5

[1, 50].

kubeReserved

Konfigurasi sumber daya yang dicadangkan untuk sistem Kubernetes.

Nilainya dihitung secara otomatis secara default. Untuk informasi selengkapnya, lihat Kebijakan pemesanan sumber daya node.

N/A.

maxPods

Jumlah maksimum pod yang dapat berjalan di sebuah node.

Penting

Memodifikasi nilai `maxPods` tidak memengaruhi jumlah alamat IP yang dapat dialokasikan di node tersebut. Jika nilai `maxPods` terlalu besar, pod yang tidak menggunakan mode HostNetwork mungkin gagal mendapatkan alamat IP dan gagal dimulai.

N/A. Nilainya bergantung pada konfigurasi sumber daya fisik seperti spesifikasi mesin dan perencanaan jaringan kontainer.

N/A.

memoryManagerPolicy

Kebijakan untuk manajer memori.

None

Nilai valid:

  • None

  • Static

    Sebelum menggunakan kebijakan ini, lakukan langkah-langkah berikut:

    • Feature gate MemoryManager diaktifkan.

    • Kelola secara manual pemesanan sumber daya memori (`systemReserved`, `kubeReserved`, `evictionHard`, dan `reservedMemory`) dan pastikan konfigurasinya benar. Rumusnya adalah kube-reserved + system-reserved + eviction-hard = sum(reserved-memory). Hal ini mencegah node menjadi tidak tersedia. Anda dapat merujuk pada gambar berikut sebagai contoh.image.png Untuk informasi selengkapnya, lihat Reserved Memory Flag.

podPidsLimit

Jumlah maksimum ID proses (PID) yang dapat digunakan di setiap pod.

16384

Tidak ada.

readOnlyPort

Port read-only untuk kubelet yang tidak memerlukan autentikasi.

  • Untuk kluster versi 1.26 atau lebih baru, nilai default-nya adalah 0.

  • Untuk kluster sebelum versi 1.26, nilai default-nya adalah 10255.

0

Untuk informasi tentang risiko membuka port read-only (10255) untuk pemantauan kontainer kubelet, lihat [Perubahan Produk] Migrasi port pemantauan kluster ACK versi lama ke port terautentikasi.

registryBurst

Jumlah maksimum burst tarikan citra.

10

[1, 100]. Nilainya harus lebih besar dari atau sama dengan nilai registryPullQPS.

registryPullQPS

QPS maksimum untuk repository citra.

5

[1, 50].

reservedMemory

Daftar pemesanan memori untuk node NUMA.

Tidak ada.

Tidak ada.

serializeImagePulls

Menarik citra secara serial.

False

Nilai valid:

  • False: Ini adalah nilai yang direkomendasikan. Memungkinkan citra ditarik secara paralel untuk mempercepat startup pod.

  • True: Menarik citra secara serial.

systemReserved

Konfigurasi sumber daya yang dicadangkan untuk sistem.

Nilainya dihitung secara otomatis secara default. Untuk informasi selengkapnya, lihat Kebijakan pemesanan sumber daya node.

N/A.

topologyManagerPolicy

Kebijakan manajer topologi. Dengan arsitektur NUMA, data dapat dialokasikan ke node NUMA yang sama untuk mengurangi akses lintas node dan meningkatkan kinerja sistem. Manajer topologi dapat membuat keputusan alokasi sumber daya yang selaras dengan topologi. Untuk informasi selengkapnya, lihat Mengontrol Kebijakan Manajemen Topologi pada sebuah node.

none

  • none (default): Tidak ada kebijakan manajemen topologi yang diberlakukan.

  • restricted: Kubelet menolak pod jika permintaan sumber dayanya tidak dapat dipenuhi oleh satu node NUMA.

  • best-effort: Kubelet mencoba mengalokasikan sumber daya pada satu node NUMA, tetapi memperbolehkan alokasi dari beberapa node NUMA jika alokasi satu node tidak memungkinkan.

  • single-numa-node: Kubelet hanya mengizinkan sumber daya CPU dan perangkat dialokasikan dari satu node NUMA untuk sebuah pod.

containerLogMonitorInterval

Versi kluster harus 1.30 atau lebih baru.

Interval pemeriksaan rotasi log kontainer.

10s

[3s,60s]

containerLogMaxWorkers

Versi kluster harus 1.30 atau lebih baru.

Jumlah maksimum pekerja konkuren untuk rotasi log.

1

[1,20]

tracing

Mengaktifkan Analisis Tracing untuk komponen lapisan kontrol atau bidang data kluster.

Untuk informasi selengkapnya, lihat Mengelola Analisis Tracing.

Tidak ada

  • endpoint: Nilai yang direkomendasikan adalah localhost:4317.

  • samplingRatePerMillion: [0, 1000000]

FAQ

Apakah konfigurasi kustom akan ditinggalkan?

Saat Kubernetes berkembang, beberapa parameter atau feature gates mungkin ditinggalkan atau dihapus. Jika parameter kustom yang dikelola oleh ACK tidak berlaku untuk versi baru, konfigurasi terkait akan dihapus selama peningkatan kluster.

Bagaimana cara menggunakan berkas konfigurasi untuk mengelola kubelet?

Container Service for Kubernetes menyesuaikan cara pengelolaan konfigurasi kubelet berdasarkan praktik terbaik komunitas. Untuk kluster yang menjalankan versi 1.20 atau lebih baru, flag baris perintah kubelet yang telah ditinggalkan secara bertahap digantikan oleh berkas konfigurasi. Untuk informasi selengkapnya, lihat Konfigurasi Kubelet (v1beta1).

Node baru, seperti node yang baru dibuat dan node yang diskalakan otomatis, menggunakan berkas konfigurasi dan metode konfigurasi asli. Node yang sudah ada tidak terpengaruh. Untuk mengelola konfigurasi semua node di kelompok node hanya dengan berkas konfigurasi, Anda dapat menerapkan konfigurasi kustom seperti yang dijelaskan di Parameter kubelet yang dapat disesuaikan.

Bagaimana cara memodifikasi parameter kubelet yang tidak ada dalam daftar yang didukung?

ACK memungkinkan Anda menulis parameter kustom ke berkas `/etc/kubernetes/kubelet-customized-args.conf`. Berkas ini menyimpan parameter startup dan opsi konfigurasi kustom untuk kubelet. Parameter yang ditulis ke berkas ini memiliki prioritas lebih tinggi dan akan menimpa nilai yang diatur menggunakan fitur konfigurasi kubelet kustom untuk kelompok node saat node dimulai ulang.

Penting

Menyesuaikan parameter kubelet dapat menyebabkan masalah seperti kegagalan pendaftaran node atau kegagalan penjadwalan pod, serta memengaruhi layanan Anda. Sebelum melanjutkan, kami menyarankan agar Anda sepenuhnya mengevaluasi risiko perubahan tersebut.

  • (Direkomendasikan) Untuk node yang akan dibuat di kelompok node, Anda dapat mengonfigurasi skrip di bagian User Data kelompok node untuk menulis ke berkas konfigurasi parameter kustom. Hal ini memastikan bahwa node baru menggunakan nilai parameter kustom ini secara default.

    Di bagian User Data konfigurasi kelompok node, tambahkan skrip berikut. Ganti ${kubelet_key} dan ${kubelet_value} dengan nilai aktual.

    Hanya skrip yang menggunakan > /etc/kubernetes/kubelet-customized-args.conf atau > kubelet-customized-args.conf yang didukung di bagian User Data. Jika Anda menggunakan metode lain untuk memodifikasi `kubelet-customized-args.conf` di bagian Pre-customized User Data, berkas `/etc/kubernetes/kubelet-customized-args.conf` akan ditimpa selama inisialisasi ACK.
    mkdir -p /etc/kubernetes  
    echo 'KUBELET_CUSTOMIZED_ARGS="--${kubelet_key}=${kubelet_value}"' > /etc/kubernetes/kubelet-customized-args.conf
    systemctl daemon-reload
    systemctl restart kubelet
    Untuk informasi selengkapnya tentang cara mengakses halaman konfigurasi, lihat Membuat dan mengelola kelompok node.

  • Untuk node yang sudah ada di kelompok node, masuk ke node untuk memodifikasi berkas konfigurasi parameter kustom. Lalu, jalankan perintah berikut untuk menerapkan konfigurasi.

    systemctl daemon-reload
    systemctl restart kubelet

Referensi