Outils pour utilisateurs

Outils du site


tech:cgroups_debian

Ceci est une ancienne révision du document !


Notes cgroup

Voir :

Tester si tous est ok

apt-get install lxc
lxc-checkconfig

ou

apt-get install docker.io
/usr/share/docker.io/contrib/check-config.sh

Dans Debian :mount cgroup automatically in mountkernfs.

Normalement sous Debian, les cgroup sont automatiquement montés (dans le mountkernfs)

$ mount |grep cgroup
none on /sys/fs/cgroup type tmpfs (rw,relatime,size=4k,mode=755)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,name=systemd)

Si ce n'est pas le cas, la technique d'ajouter dans /etc/fstab

/etc/fstab
cgroup          /cgroup         cgroup  defaults        0       0

ou alors passer à systemd

apt-get install systemd systemd-sysv

Voir :

Mais comme nous choisissons la méthode avec des services (méthode à la Redhat)

Pour connaître les ????? FIXME prit en charge par le noyau

# lssubsys -a
cpuset
cpu
cpuacct
memory
devices
freezer
net_cls
blkio
perf_event

Install du packet

apt-get update && apt-get install -y cgroup-tools

Puis

dpkg -L cgroup-tools

Donc

mkdir /etc/sysconfig/
cp -p /usr/share/doc/cgroup-tools/examples/cgconfig.sysconfig /etc/sysconfig/cgconfig
cp -p /usr/share/doc/cgroup-tools/examples/cgred.conf /etc/sysconfig/cgred
cp -p /usr/share/doc/cgroup-tools/examples/cgred /etc/init.d/
cp -p /usr/share/doc/cgroup-tools/examples/cgconfig /etc/init.d/
cp -p /usr/share/doc/cgroup-tools/examples/cgconfig.conf /etc/
cp -p /usr/share/doc/cgroup-tools/examples/cgrules.conf /etc/
chmod a+x /etc/init.d/cgconfig /etc/init.d/cgred
ln -s /etc/sysconfig/cgconfig /etc/default/
ln -s /etc/sysconfig/cgred /etc/default/
sed -i -e 's|/var/lock/subsys/|/var/lock/|g' /etc/init.d/cgred 
sed -i -e 's|/var/lock/subsys/|/var/lock/|g' /etc/init.d/cgconfig
getent group cgred >/dev/null || groupadd -r cgred

Puis prendre le fichier /etc/rc.d/init.d/functions sur une CentOS.

mkdir -p /etc/rc.d/init.d/
cp -p functions /etc/rc.d/init.d/

Commenter la ligne [ -z “${CONSOLETYPE:-}” ] && CONSOLETYPE=“$(/sbin/consoletype)“

vi /etc/rc.d/init.d/functions

Puis

mkdir /cgroup
cd /cgroup
mkdir $(lssubsys -a)

Erreur sous Debian :

# /etc/init.d/cgconfig start
Starting cgconfig service: Error: cannot mount memory to /cgroup/memory: No such file or directory
/usr/sbin/cgconfigparser; error loading /etc/cgconfig.conf: Cgroup mounting failed
[FAIL] Failed to parse /etc/cgconfig.conf ... failed!

Solution : rajouter “cgroup_enable=memory swapaccount=1” à votre Grub :

/etc/default/grub
GRUB_CMDLINE_LINUX="vga=795 cgroup_enable=memory swapaccount=1"
update-grub

Pour le debug si nécessaire :

export CGROUP_LOGLEVEL=debug

Autres

allocated 133693440 bytes of page_cgroup
please try 'cgroup_disable=memory' option if you don't want memory cgroups

https://wiki.debian.org/LXC

/etc/fstab
cgroup  /sys/fs/cgroup  cgroup  defaults  0   0
/etc/default/grub
GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"

sudo apt-get install cgroup-tools
 
sudo cgcreate -a jean -g memory:plop
echo 10000000 > /sys/fs/cgroup/memory/plop/memory.kmem.limit_in_bytes
sudo cgexec -g memory:plop bash
tech/cgroups_debian.1742825205.txt.gz · Dernière modification : de 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki