cgroups mit cgconfig und cgred

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Thorus
Beiträge: 11
Registriert: 17.03.2011 08:22:47

cgroups mit cgconfig und cgred

Beitrag von Thorus » 28.03.2014 11:40:57

Hi,

Ich möchte auf meinen Server(debian 7 aka wheezy) gerne cgroups verwenden um User in der CPU Nutzung einzuschränken. Ich habe das ganze schonmal unter Ubuntu umgesetzt mit cgroup-bin wo es dann den Daemon cgconfig und cgred gab, mit den Konfigfiles /etc/cgconfig.conf und /etc/cgrules.conf allerdings existieren unter Debian weder die Daemons noch die Konfigfiles.

Deswegen wollte ich die Upstart-Skripte von Ubuntu dafür in ein Sysv-Init-Skript übersetzen, die Skripte tun genau das was die Upstart Skripte tun, allerdings bekomme ich immer einen Fehler, deshalb wollte ich es einmal manuell Schritt für Schritt machen um zu sehen wo der Fehler liegt.

Der Fehler kommt beim Daemon cgconfig:

1. Die Cgroups werden mittels "mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroups /sys/fs/cgroup" gemountet.

Funktioniert fehlerfrei

2. per cgconfigparser -l /etc/cgconfig.conf werden die Subsystems gemountet.

Hier kommt immer der Fehler "cgconfigparser; error loading /etc/cgconfig.conf: Cgroup mounting failed"

Hier die /etc/cgconfig.conf(kopiert von Ubuntu 12.04):

mount {
cpu = /sys/fs/cgroup/cpu;
cpuset = /sys/fs/cgroup/cpuset;
cpuacct = /sys/fs/cgroup/cpuacct;
devices = /sys/fs/cgroup/devices;
memory = /sys/fs/cgroup/memory;
freezer = /sys/fs/cgroup/freezer;
blkio = /sys/fs/cgroup/blkio;
}

Das einzige was beim googlen rauskam ist dass dem Kernel unter Umständen der Support für cgroups fehlt:
https://bugs.debian.org/cgi-bin/bugrepo ... bug=597965

Allerdings gibt /proc/cgroups bei mir alle nötigen Subsysteme zurück:
#subsys_name hierarchy num_cgroups enabled
cpuset 0 1 1
cpu 0 1 1
cpuacct 0 1 1
memory 0 1 0
devices 0 1 1
freezer 0 1 1
net_cls 0 1 1
blkio 0 1 1
perf_event 0 1 1

Deshalb habe ich mal die gesetzen Kerneloptionen mit denen von Ubuntu verglichen, Debian hat CONFIG_CFS_BANDWIDTH und CONFIG_RT_GROUP_SCHED nicht gesetzt, ich bin allerdings unsicher ob ich die wirklich brauche und dass das Problem ist.

Hat das ganze schon mal jemand unter Debian zum Laufen gebracht (analog zu Ubuntu)? Bzw. weiss jemand wieso cgconfigparser diesen Fehler schmeisst?

Danke
Thorus

Antworten