GNU/Linux >> Belajar Linux >  >> Linux

CentOS / RHEL 6:Cara membatasi sumber daya memori untuk pengguna tertentu menggunakan cgroups

Grup kontrol (strong>cgroups ) memungkinkan Anda mengalokasikan sumber daya komputasi ke proses atau tugas tertentu. Anda dapat menetapkan satu set CPU dan memori ke grup tugas tertentu atau bahkan ke pengguna tertentu. Posting di sini merinci langkah-langkah untuk mengalokasikan sumber daya memori yang ditentukan untuk penggunaan tertentu. Ulimit tidak akan dapat mencapai tujuan ini karena ulimit membatasi konsumsi memori pengguna per proses. Opsi terbaik yang mungkin adalah menggunakan cgroups. Dengan cgroups, pengguna dapat dibatasi tidak hanya pada sumber daya memori tetapi juga CPU/IO. Mari kita lihat contoh untuk membatasi memori yang digunakan oleh pengguna “john” hingga 100mb.

Membatasi memori untuk pengguna tertentu

1. Edit file konfigurasi cgroups /etc/cgconfig.conf dan tambahkan baris di bawah ini

# vi /etc/cgconfig.conf
group memlimit {
	memory {
		memory.limit_in_bytes = 104857600;    #### limit memory to 100MB
	}
}

Bagian kode di atas akan membuat cgroup bernama memlimit dengan batas 100mb .

2. Sekarang edit file lain /etc/cgrules.conf dan tambahkan baris di bawah ini:

# vi /etc/cgrules.conf
john memory memlimit

Ini akan memberi tahu cgroups bahwa pengguna john akan ditambahkan ke memlimit cgroup dan hanya dapat mengambil 100mb dari sistem.

3. Setelah Anda selesai mengedit file konfigurasi, mulai ulang layanan cgred dan cgconfig .

# service cgred restart
# service cgconfig restart
layanan cgconfig(konfigurasi grup kontrol) – digunakan untuk membuat cgroup dan mengelola subsistem
layanan cgred (daemon mesin aturan grup kontrol) – digunakan untuk memindahkan tugas ke dalam cgroup sesuai dengan parameter yang diatur dalam file /etc/cgrules.conf.

4. Aktifkan kedua layanan untuk memulai pada boot sistem. Dengan ini kami memastikan file konfigurasi /etc/cgconfig.conf dan /etc/cgrules.conf dibaca pada saat boot dan cgroup dibuat.

# chkconfig cgred on
# chkconfig cgconfig on


Linux
  1. Cara Menonaktifkan NUMA di CentOS / RHEL 6,7

  2. Cara Membatasi beberapa Sumber Daya Memori Pengguna di CentOS/RHEL menggunakan cgroup

  3. CentOS / RHEL :Bagaimana menemukan pengguna mana yang menjalankan perintah tertentu?

  1. CentOS / RHEL :Cara Mengubah shell login pengguna

  2. CentOS / RHEL :Cara menonaktifkan ssh untuk pengguna non-root (mengizinkan ssh hanya untuk pengguna root)

  3. Cara menonaktifkan perintah khusus untuk pengguna tertentu di Linux

  1. CentOS / RHEL :Cara menginstal versi tertentu dari paket rpm menggunakan YUM

  2. Cara mendapatkan alamat memori tertentu menggunakan C

  3. Cara membatasi memori untuk layanan yang dikelola oleh systemd