Saltar al contenido

¿Cuál es la diferencia entre Docker, LXD y LXC?

Posterior a investigar en diferentes repositorios y páginas finalmente dimos con la resolución que te compartimos a continuación.

Solución:

No, LXC, Docker y LXD no son lo mismo. En breve:

LXC

LinuX Containers (LXC) es un método de virtualización a nivel de sistema operativo para ejecutar múltiples sistemas Linux aislados (contenedores) en un solo host de control (host LXC)

https://wiki.archlinux.org/index.php/Linux_Containers

nivel bajo …

https://linuxcontainers.org/

Estibador

  • por Docker, Inc.
  • un sistema de contenedores que utiliza contenedores LXC
  • así que puedes: Build, Ship, and Run Any App, Anywhere http://www.docker.com

LXD

  • por Canonical, Ltd
  • un sistema de contenedores que utiliza contenedores LXC
  • Para que puedas: run LXD on Ubuntu and spin up instances of RHEL, CentOS, SUSE, Debian, Ubuntu and just about any other Linux too, instantly, ... http://www.zdnet.com/article/ubuntu-lxd-not-a-docker-replacement-a-docker-enhancement/

Docker frente a LXD

  • Docker se especializa en la implementación de aplicaciones
  • LXD se especializa en la implementación de máquinas virtuales (Linux)

Infografía de Docker vs LXD

Fuente: http://linux.softpedia.com/blog/infographic-lxd-machine-containers-from-ubuntu-linux-492602.shtml

Originalmente: https://insights.ubuntu.com/2015/09/23/infographic-lxd-machine-containers-from-ubuntu/

Nota técnica menor

  • la instalación de LXD incluye un programa de línea de comandos llamado coincidentemente lxc http://blog.scottlowe.org/2015/05/06/quick-intro-lxd/

Esta imagen puede ayudarte a entender la principal diferencia entre ellos:

ventana acoplable lxc x

Lo que todos ellos tienen en común es que estas 3 tecnologías están relacionadas con los contenedores.

Los contenedores son un mecanismo de virtualización liviano que no requiere que configure una máquina virtual en una emulación de hardware físico. En Linux, lo que tienen en común son las características del Kernel utilizadas: cgroups, namespaces(ipc, network, user, pid, mount). También intentan crear entornos más seguros mediante la creación de contenedores sin privilegios y la integración con funciones de seguridad como selinux. Estas tecnologías exportan API para integrarse mejor con otros softwares.

LXD y LXC

Estos dos integran una misma familia donde:

  • lxc: interfaz de espacio de usuario para las funciones de contención del kernel de Linux. Este es el tipo que administra los espacios de nombres del Kernel, los perfiles Apparmor y SELinux, Chroots, las capacidades del Kernel y todo lo demás relacionado con el kernel.
  • lxd: es un contenedor “hipervisor”. Está compuesto por un demonio (lxd), la interfaz de línea de comandos (lxc) y un complemento de OpenStack. Este chico fue desarrollado para proporcionar más flexibilidad y características a lxc, mientras todavía lo usa bajo el capó.

Básicamente, se crea un espacio de usuario de sistema operativo autónomo con su infraestructura aislada. lxc se basa más directamente en las funciones del sistema operativo para redes y almacenamiento que Docker.

Usted crea muchas máquinas virtuales, que tienen aislamientos de kernel y espacio de usuario, pero no son máquinas virtuales completas ya que no ejecutan kernels separados, ni están paravirtualizadas por la misma razón.

Canonical es el patrocinador principal aquí y Oracle también está invirtiendo horas de trabajo en esta tecnología.

Estibador

Tiene algunas diferencias, siendo la mayor de ellas el motor que envuelve las aplicaciones con un sistema de archivos autónomo en lugar de una “imagen de espacio de usuario” base. La idea es contener la aplicación y la imagen base para crear la impresión de que la aplicación es un proceso único dentro del motor. Docker usó la tecnología lxc como base para comunicarse con el kernel, pero hoy usa su propia biblioteca, libcontainer.

El sistema de archivos es una abstracción de Docker, mientras que lxc usa funciones del sistema de archivos directamente. La red también es una abstracción, mientras que con lxc puede configurar direcciones IP y configuraciones de enrutamiento más fácilmente. Microsoft, Amazon, Vmware, IBM y otros jugadores mantienen algunos sitios “similares a la App Store”.

Estibador. INC. es el patrocinador principal aquí. Vmware también está invirtiendo en esta tecnología.

Tecnología de contenedores relacionada:

Estas son otras tecnologías de contenedores que tiene Linux: OpenVZ y Linux-VServer

Cosas relacionadas:

  • Linux LXC frente a la cárcel de FreeBSD
  • Entendiendo el key diferencias entre LXC y Docker
  • Contenedores de sistemas operativos frente a contenedores de aplicaciones

Calificaciones y reseñas

Ten en cuenta recomendar esta reseña si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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