[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: cgroup y lxc



El Tue, 16 de Dec de 2014, a las 03:58:23PM +0000, Camaleón dijo:

> Bueno, en Debian (y el resto de distribuciones) tienen especial interés 
> en el uso de LXC, así que no me extrañaría que lo corrigieran antes de 
> que salga Jessie, siempre y cuando se trate de un bug y el parche no sea 
> excesivamente intrusivo para que no trastoque nada más.
> 
> Ya nos contarás lo que te vayan diciendo.

Bueno, pues no contestaron nada. Pero no me extraña. Estuve curioseando
y ahora mismo hay al menos tres modos de gestionar los cgroup:

1. La librería libcg (los paquetes de debian libcgroup1 y cgroup-tools)
   pertenecen a ella.
2. cgmanager que desarrolla la gente de lxc.
3. systemd.

La tercera opción creo que aún no está madura para manegar los cgroups
que necesita lxc. Al menos eso es lo que he leído en esta entrada:

https://github.com/lxc/lxc/issues/323

No sé si systemd-218 ha solucionado esto o no, según se puede leer al
final de los comentarios. En cualquier caso en jessie viene systemd-215.

La segunda opción es la que he visto usada para lo que quiero en todas
las guías.

La primera fue la que se me antojó utilizar, porque me permitía más
elegantemente automatizar todo, pero al meterme en su página de
sourceforge he visto que no se ha desarrollado nada desde enero de 2014.
Además he visto que cgrulesengd tiene un problema: se tarda un minúsculo
tiempo entre que se crea el proceso y cgrulengd lo pasa al cgroup que
indican las reglas. Si durante este pequeño tiempo la aplicación en
cuestión lanza un proceso hijo, resulta que este proceso hijo no
pertenecerá al cgroup en donde aún estará el padre y no se mudará con
él.

En fedora 21, por ejemplo, que me bajé para comprobar si me encontraba
con los mismos problemas que en debian, ha desaparecido parcialmente
(aún se puede instalar cgconfigparser, pero no cgrulesengd). Y el futuro
es que desaparezca totalmente en favor de la gestión con systemd.

Total, que me sospecho que el futuro es utilizar bien systemd o, como
alternativa para el systémdfobo, cgmanager.

Como mi intención es montar todo esto en una jessie, voy a tirar por la
calle de enmedio y usaré cgconfigparser para crear un cgroup inicial
(lxc), el script para pam para crear con cgcreate el cgroup de cada
usuario, y "cgexec" para lanzar lxc-start en este cgroup particular de
usuario. Lo último es un tanto engorroso, pero como todo estará incluido
en un script, no se tendrá que hacer manualmente.

Saludos.


-- 
   Dejemos metafísicas quimeras;
vuesas mercedes garlen en chacota:
que no está el mundo para hablar de veras.
                  --- Tomé de Burguillos ---


Reply to: