cgrupos limita los recursos que un proceso o un conjunto de procesos pueden utilizar. Estos recursos pueden ser CPU, memoria, E/S de red o acceso al sistema de archivos mientras que el espacio de nombres restringe la visibilidad del grupo de procesos al resto del sistema.
visite para obtener más detalles Cómo los Cgroups y los espacios de nombres del kernel de Linux hicieron posibles los contenedores modernos
Los enlaces apropiados para esas dos nociones se han corregido en PR 14307:
Bajo el capó, Docker se basa en los siguientes componentes:
Los cgrupos y namespaces
capacidades del kernel de Linux
Con:
- cgrupo :Los grupos de control proporcionan un mecanismo para agregar/dividir conjuntos de tareas y todos sus futuros hijos en grupos jerárquicos con comportamiento especializado.
- espacio de nombres :envuelve un recurso del sistema global en una abstracción que hace parecer a los procesos dentro del espacio de nombres que tienen su propia instancia aislada del recurso global.
En resumen:
- Grupos C =limita la cantidad que puede usar;
- espacios de nombres =limita lo que puede ver (y por lo tanto usar)
Vea más en "Anatomía de un contenedor:espacios de nombres, cgroups y algo de magia del sistema de archivos" por Jérôme Petazzoni.
Los Cgroups involucran la medición y limitación de recursos:
- memoria
- CPU
- bloquear E/S
- red
Los espacios de nombres proporcionan a los procesos su propia vista del sistema
Múltiples espacios de nombres:
- pid
- red
- mnt
- pero
- ipc
- usuario:usuarios se está graduando de experimental en docker 1.10
(La reasignación por instancia de demonio de la raíz del contenedor a un usuario sin privilegios está en progreso:PR 12648:vea su diseño)