Taller Virtualización - Trabajando con contenedores LXC

Introducción

Linux Containers (LXC) es una tecnología de virtualización a nivel de sistema operativo para ejecutar múltiples sistemas Linux aislados (contenedores) en un único host Linux. LXC combina las interfaces de kernel de cgroups y de espacios de nombres para proporcionar un entorno aislado para los contenedores.

En este taller vamos a ver cómo trabajar con contenedores LXC. Vamos a:

  • Conocer el concepto de contenedores. Y la diferencia entre contenedores de sistemas y de aplicaciones.
  • Crear y gestionar contenedores LXC.
  • Configurar los contenedores LXC.
  • Gestionar las redes a las que se conectan los contenedores.
  • Añadir almacenamiento a los contenedores LXC.
  • Tener una aproximación a la herramienta LXD.

¿Qué tienes que hacer?

  • Crea un contenedor LXC con la última distribución de Ubuntu. Lista los contenedores. Inicia el contenedor y comprueba la dirección IP que ha tomado. ¿Tiene conectividad al exterior?. Sal del contenedor y ejecuta un apt update en el contenedor sin estar conectado a él.

1

2

  • Modifica la configuración del contenedor, y limita el uso de memoria a 512M y que use una sola CPU.

3

  • Comprueba que se ha creado un bridge llamado lxcbr0 donde está conectado el contenedor. Cambia la configuración del contenedor para desconectar de este bridge y conectarlo a la red red-nat que creaste en el taller anterior. Toma de nuevo direccionamiento y comprueba de nuevo la dirección IP, y que sigue teniendo conectividad al exterior.

4

  • Añade una nueva interfaz de red al contenedor y conéctala a la red red-externa que creaste en el taller anterior. Toma direccionamiento en esta nueva interfaz y comprueba que esta en el direccionamiento del instituto.

5

  • Crea en el host el directorio /opt/web, crea el fichero index.html y monta este directorio en el directorio /srv/www del contenedor.

  • Ingresamos los siguientes comandos en la consola del host:

sudo mkdir /opt/web
sudo nano /opte/web/index.html
  • Modificamos el fichero **
nano /var/lib/lxc/contenedor1/config
  • Ingresamos la siguiente línea en la parte de la configuración del contenedor:
lxc.mount.entry=/opt/web srv/www none bind 0 0

6

  • Instala LXD y crea un contenedor y una máquina virtual.Te recomiendo que lo hagas en una máquina virtual limpia.

7