All Products
Search
Document Center

Container Service for Kubernetes:Aktifkan CPU Suppress

Last Updated:Aug 21, 2026

Dalam skenario overcommit sumber daya dinamis, CPU yang tidak digunakan oleh Pod prioritas tinggi (Guaranteed dan Burstable) dapat dialokasikan ke workload BestEffort (BE). CPU Suppress secara dinamis membatasi penggunaan CPU Pod BE berdasarkan pemanfaatan node untuk melindungi Pod latency-sensitive (LS) serta menjaga penggunaan sumber daya kluster di bawah ambang batas aman.

CPU Suppress memerlukan dynamic resource overcommitment.

Cara kerja

CPU Suppress memantau pemanfaatan CPU node terhadap ambang batas yang dapat dikonfigurasi (cpuSuppressThresholdPercent, default: 65%). Cpuset Pod BE diperluas atau dipersempit berdasarkan ruang kosong (headroom) Pod LS:

  • Beban LS meningkat — CPU Suppress mengurangi cpuset Pod BE untuk melindungi waktu respons LS.

  • Beban LS menurun — CPU Suppress memperluas cpuset Pod BE untuk memanfaatkan kapasitas idle.

Gambar berikut menunjukkan hubungan antara ambang batas CPU, penggunaan Pod LS, dan pembatasan CPU Pod BE.

image

Gambar tersebut menggunakan istilah berikut:

  • CPU Threshold: ambang batas pemanfaatan CPU node

  • Pod (LS).Usage: penggunaan CPU oleh Pod LS

  • CPU Restriction for BE: sumber daya CPU yang tersedia untuk Pod BE

Selaraskan nilai cpuSuppressThresholdPercent dengan watermark CPU yang dicadangkan dalam konfigurasi dynamic resource overcommitment Anda.

Prasyarat

Pastikan Anda telah memiliki:

Lihat Pod QoS classes dan Assign memory resources to containers and pods dalam dokumentasi Kubernetes.

Penagihan

Instalasi dan penggunaan ack-koordinator gratis. Biaya mungkin berlaku dalam kasus berikut:

  • Sumber daya node pekerja: ack-koordinator merupakan komponen non-managed yang mengonsumsi sumber daya node pekerja setelah instalasi. Anda dapat mengontrol permintaan sumber daya untuk setiap modul selama instalasi.

  • Metrik Prometheus: Jika Anda mengaktifkan metrik Prometheus untuk ack-koordinator dan menggunakan Managed Service for Prometheus, metrik tersebut dihitung sebagai custom metrics dan dikenai biaya. Biaya tergantung pada ukuran kluster dan jumlah aplikasi. Sebelum mengaktifkan, tinjau halaman Billing untuk Managed Service for Prometheus guna memahami kuota gratis dan aturan penagihan. Untuk pemantauan penggunaan, lihat Query the amount of observable data and bills.

Prosedur

CPU Suppress dikonfigurasi di tingkat kluster melalui ConfigMap ack-slo-config di namespace kube-system.

  1. Buat file bernama configmap.yaml dengan konten berikut:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ack-slo-config
      namespace: kube-system
    data:
      resource-threshold-config: |
        {
          "clusterStrategy": {
            "enable": true
          }
        }
  2. Terapkan ConfigMap tersebut. Metode penerapan bergantung pada apakah ack-slo-config sudah ada di kluster Anda:

    • Jika ConfigMap sudah ada, lakukan patch untuk memperbarui hanya bidang yang relevan:

      kubectl patch cm -n kube-system ack-slo-config --patch "$(cat configmap.yaml)"
    • Jika ConfigMap belum ada, buat ConfigMap tersebut:

      kubectl apply -f configmap.yaml
  3. Verifikasi bahwa CPU Suppress aktif dengan memeriksa alokasi CPU Pod BE:

    cat /sys/fs/cgroup/cpuset/kubepods.slice/kubepods-besteffort.slice/cpuset.cpus

    Output yang diharapkan:

    10-25,35-51,62-77,87-103

    Hal ini mengonfirmasi bahwa Pod BE dibatasi hanya pada subset CPU tertentu dan CPU Suppress aktif.

  4. Opsional: Tetapkan ambang batas pemanfaatan CPU. Perbarui configmap.yaml dengan konten berikut dan terapkan kembali:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ack-slo-config
      namespace: kube-system
    data:
      resource-threshold-config: |
        {
          "clusterStrategy": {
            "enable": true,
            "cpuSuppressThresholdPercent": 65
          }
        }

    Nilai default: 65%. Sesuaikan cpuSuppressThresholdPercent dengan profil workload atau watermark CPU dynamic resource overcommitment Anda.

Parameter

Parameter Tipe Rentang nilai Default Deskripsi
enable Boolean true / false Mengaktifkan (true) atau menonaktifkan (false) CPU Suppress
cpuSuppressThresholdPercent Integer [0, 100] 65 Ambang batas pemanfaatan CPU node (%). Sumber daya CPU Pod BE menyusut ketika pemanfaatan melebihi nilai ini dan diperluas saat turun di bawahnya.

Langkah berikutnya

ack-koordinator menyediakan batasan sumber daya tambahan untuk workload yang mengalami overcommit: