Dokumentasi kernel menyediakan cakupan umum cgroup dengan contoh-contoh.
The cgroups-bin
paket (yang tergantung pada libcgroup1
) sudah disediakan oleh distribusi harus baik-baik.
Konfigurasi dilakukan dengan mengedit dua file berikut:
/etc/cgconfig.conf
Digunakan oleh libcgroup untuk mendefinisikan grup kontrol, parameternya dan mount point.
/etc/cgrules.conf
Digunakan oleh libcgroup untuk mendefinisikan grup kontrol tempat proses tersebut berada.
File konfigurasi tersebut sudah memiliki contoh di dalamnya, jadi cobalah sesuaikan dengan kebutuhan Anda. Halaman manual membahas konfigurasi mereka dengan cukup baik.
Setelah itu, mulailah manajer beban kerja dan daemon aturan:
service cgconfig restart
service cgred restart
Manajer beban kerja (cgconfig) bertanggung jawab untuk mengalokasikan sumber daya.
Menambahkan proses baru ke manajer:
cgexec [-g <controllers>:<path>] command [args]
Menambahkan proses yang sudah berjalan ke manajer:
cgclassify [-g <controllers>:<path>] <pidlist>
Atau secara otomatis di atas file cgrules.conf dan Daemon Aturan CGroup (cgred), yang memaksa setiap proses yang baru lahir ke dalam grup yang ditentukan.
Contoh /etc/cgconfig.conf:
group group1 {
perm {
task {
uid = alice;
gid = alice;
}
admin {
uid = root;
gid = root;
}
}
cpu {
cpu.shares = 500;
}
}
group group2 {
perm {
task {
uid = bob;
gid = bob;
}
admin {
uid = root;
gid = root;
}
}
cpu {
cpu.shares = 500;
}
}
mount {
cpu = /dev/cgroups/cpu;
cpuacct = /dev/cgroups/cpuacct;
}
Contoh /etc/cgrules.conf:
alice cpu group1/
bob cpu group2/
Ini akan membagikan sumber daya CPU sekitar 50-50 antara 'alice' pengguna dan 'bob'