Buscando una forma consistente de configurar cgroups en Ubuntu 14.04 Desktop

Buscando una forma consistente de configurar cgroups en Ubuntu 14.04 Desktop

Estoy buscando una forma coherente de configurar cgroups en un sistema de escritorio Ubuntu 14.04 con recursos limitados.

Lo que me gustaría hacer:

  • cree algunos grupos con memoria limitada y CPU asignada para tareas específicas
  • habilitar automáticamente estos grupos al reiniciar
  • asignar ciertos comandos/programas a cada grupo

Entiendo la configuración de cgroup y cómo iniciar procesos para un grupo específico usando cgexec. El problema es el siguiente paso.

He creado un archivo /etc/cgconfig.conf funcional, que puedo analizar y activar correctamente usando cgconfigparser para configurar cgroups. Sin embargo, esto es todo lo que llego.

  • No encuentro un servicio para leer y analizar /etc/cgconfig.conf correctamente al iniciar el sistema. Los paquetes actuales de cgroup no parecen incluir dicho servicio.
  • Según tengo entendido, /etc/cgconfig.conf va acompañado de un archivo /etc/cgrules.conf, que describe cómo se inician los procesos de forma predeterminada en un grupo determinado. No puedo identificar el servicio o mecanismo que lo analiza. Sin esta funcionalidad necesito iniciar todos los procesos usando cgexec para colocarlos en un cgroup.

Intenté usar cgmanager, pero ese servicio tampoco parece configurarse desde /etc/cgconfig.conf. En general, encuentro difícil encontrar información sobre cómo configurar y usar cgroups en sistemas de escritorio Ubuntu.

Entonces, ¿alguien puede indicarme la dirección correcta? ¿Qué servicio necesito instalar y a qué archivos de configuración obedece?

Para que quede claro: no estoy buscando contenedores. Se trata de estructurar el manejo de recursos en un único sistema dedicado.

Muchas gracias :)

Respuesta1

# vi /etc/cgrules.conf
tomcat7:wkhtmltopdf cpu,cpuset  group1

# cgrulesengd -d -v -f /var/log/cgrulesengd.log &
# cat /var/log/cgrulesengd.log
CGroup Rules Engine Daemon log started
Current time: Thu Jan 15 16:04:20 2015

Opened log file: /var/log/cgrulesengd.log, log facility: 0, log level: 7
Proceeding with PID 28569
Rule: tomcat7:wkhtmltopdf
UID: 500
GID: N/A
DEST: group1
CONTROLLERS:
cpu
cpuset

Started the CGroup Rules Engine Daemon.

información relacionada