All Products
Search
Document Center

Container Service for Kubernetes:Kebijakan Pemesanan Sumber Daya Node

Last Updated:Aug 21, 2026

ACK memesan CPU dan memori node untuk Kubernetes serta komponen sistem, sehingga terdapat selisih antara kapasitas total node (Capacity) dan sumber daya yang dapat dijadwalkan (Allocatable). ACK menerapkan kebijakan pemesanan default dan juga mendukung pemesanan kustom melalui konfigurasi kubelet.

Limits

Pemesanan sumber daya kustom memerlukan Kubernetes 1.20 atau versi yang lebih baru. Untuk melakukan upgrade, lihat Manually upgrade a cluster.

Cakupan dampak

Pemesanan sumber daya kustom dan cakupan dampaknya

Untuk mengubah nilai pemesanan, konfigurasikan kubelet untuk kelompok node. Perubahan berlaku segera untuk node yang sudah ada. Node baru—termasuk yang berasal dari penskalaan atau Add Existing Node—juga menggunakan konfigurasi yang diperbarui.

Penting
  • Jangan mengedit file konfigurasi kubelet secara manual melalui command line. Tindakan tersebut dapat menyebabkan konflik konfigurasi dan perilaku tak terduga selama operasi dan pemeliharaan (O&M) kelompok node.

  • Menambah pemesanan sumber daya akan mengurangi sumber daya yang dapat dialokasikan. Pada node dengan penggunaan sumber daya tinggi, hal ini dapat memicu eviction Pod. Tetapkan nilai dengan hati-hati.

Pemesanan sumber daya default dan cakupan dampaknya

ACK dapat memperbarui nilai pemesanan default seiring waktu. Nilai yang diperbarui diterapkan secara otomatis saat Anda melakukan perubahan di tingkat node—misalnya, saat melakukan upgrade kluster atau kelompok node, atau memodifikasi parameter kubelet. Tanpa perubahan tersebut, node yang sudah ada tetap menggunakan nilai sebelumnya demi stabilitas.

Lihat sumber daya yang dapat dialokasikan pada node

Lihat kapasitas total dan sumber daya yang dapat dialokasikan pada suatu node:

kubectl describe node [NODE_NAME] | grep Allocatable -B 7 -A 6

Output yang diharapkan:

Capacity:
  cpu:                4                 # Total core CPU pada node.
  ephemeral-storage:  123722704Ki       # Total penyimpanan sementara pada node, dalam KiB.
  hugepages-1Gi:      0
  hugepages-2Mi:      0
  memory:             7925980Ki         # Total memori pada node, dalam KiB.
  pods:               64
Allocatable:
  cpu:                3900m             # Core CPU yang dapat dialokasikan.
  ephemeral-storage:  114022843818      # Penyimpanan sementara yang dapat dialokasikan, dalam byte.
  hugepages-1Gi:      0
  hugepages-2Mi:      0
  memory:             5824732Ki         # Memori yang dapat dialokasikan, dalam KiB.
  pods:               64

Hitung sumber daya yang dapat dialokasikan

Gunakan rumus berikut untuk menghitung sumber daya yang dapat dialokasikan:Allocatable = Capacity − Reserved − Eviction threshold

Rincian rumus:

Rincian kebijakan pemesanan sumber daya

Sumber daya yang dipesan bergantung pada beberapa faktor:

  • Instance ECS dengan spesifikasi lebih tinggi menjalankan lebih banyak Pod, sehingga ACK memesan lebih banyak sumber daya untuk komponen Kubernetes.

  • Node Windows memesan lebih banyak sumber daya dibandingkan node Linux untuk OS dan komponen Windows Server. Lihat Create and manage Windows node pools.

ACK menghitung sumber daya yang dipesan berdasarkan rentang CPU dan memori—totalnya merupakan jumlah dari semua rentang tersebut. Pada Kubernetes 1.28, ACK mengoptimalkan algoritma untuk mengurangi pemesanan. Lihat Manually upgrade a cluster.

Sumber daya yang dipesan dibagi rata antara komponen Kubernetes (kubeReserved) dan proses sistem (systemReserved). Pada node 4-core, ACK memesan 80 millicore pada Kubernetes 1.28+ (40 kubeReserved + 40 systemReserved), atau 100 millicore pada versi 1.20 hingga 1.27 (50 + 50).

Kebijakan pemesanan sumber daya CPU

Kubernetes 1.28 dan versi yang lebih baru

Total pemesanan CPU untuk node komputasi:

Untuk node 32-core, total pemesanan CPU dihitung sebagai berikut:

1000 × 6% + 1000 × 1% + 1000 × 2 × 0,5% + (32000 − 4000) × 0,25% = 150 millicores

Kubernetes 1.20 hingga 1.27

Total pemesanan CPU untuk node komputasi:

Untuk node 32-core, total pemesanan CPU dihitung sebagai berikut:

100 + (32000 − 4000) × 2,5% = 800 millicores

Kebijakan pemesanan sumber daya memori

Kubernetes 1.28 dan versi yang lebih baru

Rumus total pemesanan memori:

Total memory reservation = min(11 × ($max_num_pods) + 255, 25% × node memory). Nilai akhir adalah yang lebih kecil antara 11 × ($max_num_pods) + 255 dan 25% of node memory.

  • $max_num_pods: Jumlah maksimum Pod yang didukung pada node.

    Catatan

    Jumlah maksimum Pod bervariasi tergantung plug-in jaringan. Lihat Maximum pods per node untuk detailnya.

    Anda dapat login ke Container Service Management Console dan melihat jumlah maksimum Pod pada halaman Nodes.
    • Terway: Maximum pods per node = Maximum container-network pods + Host-network pods.

    • Flannel: Diatur oleh Anda saat membuat kluster.

  • Node memory: Memori yang benar-benar dapat digunakan, dalam satuan MiB.

Sebagai contoh, dengan Terway (shared ENI, multiple IPs) pada instance ecs.g7.16xlarge (memori 256 GiB): jumlah maksimum Pod = (8 − 1) × 30 + 3 = 213. Total pemesanan memori = min(11 × (210 + 3) + 255, 256 × 1024 × 25%) = 2598 MiB.

Kubernetes 1.20 hingga 1.27

Total pemesanan memori untuk node komputasi:

Untuk node dengan memori 256 GiB, total pemesanan memori dihitung sebagai berikut:

4 × 25% + (8 − 4) × 20% + (16 − 8) × 10% + (128 − 16) × 6% + (256 − 128) × 2% = 11,88 GiB

Contoh pemesanan sumber daya default untuk node ACK

Catatan

Lihat Instance families untuk detail tipe instans ECS.

Total sumber daya node

Sumber daya yang dipesan (Kubernetes 1.28 dan versi yang lebih baru)

Sumber daya yang dipesan (Kubernetes 1.20 hingga 1.27)

Tipe instans contoh

CPU (core)

Memori

(GiB)

Maksimum Pod per Node

(menggunakan mode multi-IP ENI bersama Terway sebagai contoh)

CPU

(milicore)

Memori

(MiB)

CPU (millicores)

Memori (MiB)

Tipe instans ECS c7

2

4

15

70

420

100

1024

4

8

48

80

783

100

1843

8

16

48

90

783

200

2662

16

32

213

110

2598

400

3645

32

64

213

150

2598

800

5611

64

128

213

230

2598

1600

9543

128

256

423

390

4908

2400

12164

Tipe instans ECS ebmc7a

256

512

453

710

5238

3040

17407

FAQ

Bagaimana cara melihat total CPU dan memori pada suatu node?

CPU

Lihat total core CPU:

cat /proc/cpuinfo | grep processor

Output yang diharapkan:

processor       : 0
processor       : 1
processor       : 2
processor       : 3

Memori

Lihat total memori:

cat /proc/meminfo | grep MemTotal

Output yang diharapkan:

MemTotal:        7660952 kB

Mengapa memori yang tersedia lebih sedikit daripada spesifikasi tipe instans?

Spesifikasi tipe instans mencakup total memori (termasuk penggunaan oleh OS), sehingga memori yang tersedia selalu lebih sedikit. Lihat After purchasing an instance, why does the displayed memory differ from the instance type specification?.

Referensi

  • Kustomisasi pemesanan sumber daya dan ambang batas eviction dengan mengonfigurasi kubelet untuk kelompok node.

  • Total permintaan Pod pada suatu node tidak boleh melebihi sumber daya yang dapat dialokasikan, atau Pod gagal dijadwalkan. Gunakan profil sumber daya ACK untuk menganalisis penggunaan historis dan menetapkan permintaan yang akurat untuk beban kerja Kubernetes native. Lihat Create a Deployment.