Aislar sistemas con Linux Namespaces

por | Nov 16, 2016

Si has utilizado herramientas como Docker, ya sabes que estas herramientas son capaces de aislar procesos en pequeños "contenedores". Ejecutar procesos en contenedores Docker es como ejecutarlos en máquinas virtuales, solamente estos contenedores son significativamente más livianos que máquinas virtuales.

Con la introducción de Linux namespaces, se hizo posible tener varios árboles de proceso "anidados". Cada árbol de proceso puede tener un conjunto de procesos completamente aislado. Esto puede asegurar que los procesos pertenecientes a un árbol de proceso no pueden inspeccionar o matar a los procesos en otros árboles de procesos hermanos o progenitores. Cada vez que un equipo Linux arranca, comienza con un solo proceso, con identificador de proceso (PID) 1.

Este proceso es la raíz del árbol de procesos, e inicia el resto del sistema realizando el trabajo de mantenimiento adecuado e iniciando los daemons / services correctos. Todos los otros procesos comienzan debajo de este proceso en el árbol. El espacio de nombres PID permite girar un nuevo árbol, con su propio proceso PID 1. El proceso que hace esto permanece en el espacio de nombres padre, en el árbol original, pero hace que el niño sea la raíz de su propio árbol de procesos.

Un espacio de nombres de red permite que cada uno de estos procesos vea un conjunto completamente diferente de redes interfaces. Incluso la interfaz de bucle de retorno es diferente para cada espacio de nombres de red. Para proporcionar una interfaz de red utilizable en el espacio de nombres secundario, es necesario configurar interfaces de red «virtual» adicionales que abarquen múltiples espacios de nombres. Linux también mantiene una estructura de datos para todos los puntos de montaje del sistema.

Hay otros espacios de nombres en los que estos procesos pueden aislarse, a saber, usuario, IPC y UTS. El espacio de nombres de usuario permite que un proceso tenga privilegios de root dentro del espacio de nombres, sin darle ese acceso a procesos fuera del espacio de nombres. El aislamiento de un proceso por el espacio de nombres IPC le da sus propios recursos de comunicación entre procesos, por ejemplo, mensajes System V, IPC y POSIX. El espacio de nombres UTS aísla dos identificadores específicos del sistema: nodename y domainname.

Para más detalles, consulte el artículo original disponible en Toptal blog

COMPARTIR

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Entradas recientes

On premise vs cloud. ¿Cuál es mejor para tu empresa?

La elección de la infraestructura tecnológica es crucial para el crecimiento y la competitividad de las empresas. Este artículo analiza las ventajas y desventajas de los modelos «on premise» y «cloud computing», enfocándose en aspectos como los costos, la escalabilidad, la seguridad y la gestión.

Archivos


Mantente al día de toda la actualidad de UDS ENTERPRISE a través de nuestras redes sociales. ¡Síguenos!

Ir al contenido