全部产品
Search
文档中心

Alibaba Cloud Linux:Antarmuka cgroup v1 mendukung fitur memcg QoS untuk mengoptimalkan penggunaan memori

更新时间:Jun 28, 2025

Fitur Kualitas Layanan (QoS) grup kontrol memori (memcg) dirancang untuk mengelola sumber daya memori dan mengoptimalkan penggunaan memori di sistem operasi Linux. Fitur ini dapat digunakan untuk mengunci jumlah memori tertentu guna memenuhi persyaratan layanan atau aplikasi penting, serta menetapkan batas atas penggunaan memori untuk mencegah ketidakstabilan sistem akibat tugas-tugas yang memakan banyak memori. Di versi komunitas kernel Linux, fitur memcg QoS hanya didukung oleh antarmuka cgroup v2. Pada Alibaba Cloud Linux 2 mulai dari versi kernel 4.19.91-18.al7 dan Alibaba Cloud Linux 3, fitur memcg QoS juga didukung oleh antarmuka cgroup v1.

Informasi latar belakang

Secara default, fitur memcg QoS diaktifkan pada antarmuka cgroup v1 di kernel Alibaba Cloud Linux. Untuk informasi lebih lanjut tentang fitur memcg QoS, lihat Documentation/admin-guide/cgroup-v2.rst. Dokumen kernel dapat diperoleh dari paket Debuginfo dan paket kode sumber Alibaba Cloud Linux. Untuk detail lebih lanjut, lihat Gunakan Alibaba Cloud Linux 2.

Catatan penggunaan

Saat menggunakan fitur memcg QoS dari antarmuka cgroup v1, disarankan untuk menempatkan tugas Anda di node daun memcg. Contoh jalur tugas: /sys/fs/cgroup/memory/<node perantara>/<node daun>/tasks.

Deskripsi antarmuka

Tabel berikut menjelaskan antarmuka yang mengimplementasikan fitur memcg QoS dari antarmuka cgroup v1 di kernel Alibaba Cloud Linux.

Antarmuka

Deskripsi

memory.min

Mengunci secara absolut sejumlah memori tertentu. Memori yang dikunci oleh antarmuka ini tidak dapat direklaim meskipun sistem tidak memiliki memori lain untuk direklaim. Ini menjamin bahwa proses dalam cgroup dapat memperoleh jumlah minimum memori yang ditentukan dan mencegah penurunan kinerja layanan. Antarmuka ini cocok untuk layanan yang memerlukan jaminan jumlah minimum memori tetap untuk memenuhi persyaratan kinerja.

Anda dapat melakukan operasi baca dan tulis berikut pada antarmuka:

  • Baca ukuran memori terkunci dari antarmuka.

  • Tulis ukuran memori terkunci ke antarmuka.

memory.low

Mengunci secara relatif sejumlah memori tertentu. Memori yang dikunci oleh antarmuka ini dapat sebagian direklaim jika sistem tidak memiliki memori lain untuk direklaim. Dengan cara ini, sistem dapat menyesuaikan alokasi memori secara lebih masuk akal saat sumber daya tidak mencukupi. Antarmuka ini cocok untuk layanan yang memerlukan perlindungan dasar tetapi tidak memerlukan perlindungan mutlak, seperti aplikasi bisnis non-kritis dan tugas latar belakang.

Anda dapat melakukan operasi baca dan tulis berikut pada antarmuka:

  • Baca ukuran memori terkunci dari antarmuka.

  • Tulis ukuran memori terkunci ke antarmuka.

memory.high

Memaksakan batasan penggunaan memori. Anda dapat melakukan operasi baca dan tulis berikut pada antarmuka:

  • Baca batas atas penggunaan memori dari antarmuka.

  • Tulis batas atas penggunaan memori ke antarmuka.

Contoh

Di Alibaba Cloud Linux 3, alokasikan memori atau tentukan batas atas penggunaan memori di direktori mount memcg, seperti /sys/fs/cgroup/memory/.

Catatan

Jalankan perintah berikut hanya sebagai pengguna root.

Contoh perintah:

  1. Jalankan perintah berikut untuk membuat direktori test_memcg:

    mkdir /sys/fs/cgroup/memory/test_memcg
  2. Kunci secara absolut sejumlah memori tertentu.

    1. Jalankan perintah berikut untuk mengunci secara absolut 200 MB memori:

      echo 209715200 > /sys/fs/cgroup/memory/test_memcg/memory.min
    2. Jalankan perintah berikut untuk memeriksa apakah 200 MB memori telah dikunci secara absolut:

      cd /sys/fs/cgroup/memory/test_memcg
      cat memory.min
  3. Kunci secara relatif sejumlah memori tertentu.

    1. Jalankan perintah berikut untuk mengunci secara relatif 200 MB memori:

      echo 209715200 > /sys/fs/cgroup/memory/test_memcg/memory.low
    2. Jalankan perintah berikut untuk memeriksa apakah 200 MB memori telah dikunci secara relatif:

      cd /sys/fs/cgroup/memory/test_memcg
      cat memory.low
  4. Tentukan batas atas penggunaan memori.

    1. Jalankan perintah berikut untuk menetapkan batas atas penggunaan memori menjadi 1 GB:

      echo 1073741824 > /sys/fs/cgroup/memory/test_memcg/memory.high
    2. Jalankan perintah berikut untuk memeriksa apakah batas atas penggunaan memori telah ditetapkan menjadi 1 GB:

      cd /sys/fs/cgroup/memory/test_memcg
      cat memory.high