Nuevos retos, nuevas necesidades, nuevas soluciones. Windows Server 2016 soporta los containers, capacidad mejorada en Windows Server 2019, pero ¿qué son los containers?
El concepto de container, aplicado a la informática, consiste en agrupar y aislar entre sí aplicaciones o grupos de aplicaciones que se ejecutan sobre un mismo núcleo de sistema operativo.
Para entenderlo mejor, podríamos llegar a hacer el símil con la virtualización de máquinas. En ella, se comparte un mismo hardware entre diversos sistemas operativos. En el caso de los containers, vamos a un paso más allá en este mundo. Imagínese que necesita desplegar una aplicación web como puede ser el WordPress. A priori, se requiere de un servidor Web y un servidor de base de datos. Dependiendo del grado de carga y alta disponibilidad podría ser que se necesitaran dos servidores web como frontales configurados de una forma concreta. La opción actual que aplicaríamos en este caso, sería desplegar tres máquinas virtuales: dos servidores web y un servidor de base de datos, configurando según las necesidades. Sí!, ya sé que dependiendo de la carga se puede hacer todo en una máquina virtual, pero vamos a hacerlo bien y separemos las máquinas. Esto quiere decir: servidor físico, plataforma de virtualización, tres máquinas virtuales con sus tres sistemas operativos y, finalmente, la parte de aplicación que corresponda a cada una de las máquinas virtuales.
Pasando este ejemplo en un entorno de containers podría quedar de la siguiente manera: el servidor físico, la plataforma de virtualización, una máquina virtual con su sistema operativo habilitado para alojar containers y los containers correspondientes: dos de servidor web y un de base de datos.
Ventaja a priori, la cantidad de recursos necesarios para mantener encendida la aplicación:
- En el primer caso, requería de tres máquinas virtuales con su sistema operativo, se mantiene triplicada la parte común del sistema operativo.
- En el segundo caso, sólo requiere de una máquina virtual con su sistema operativo, sólo varía la parte de las aplicaciones.
Por lo tanto, menos superficie de ataque, menos configuraciones y más movible. Sólo cambiando el container de equipo te llevas toda la aplicación y a funcionar, sin necesidad de reinstalaciones.
En definitiva, en el entorno de containers, en lugar de compartir sólo el hardware, debiendo instalar el mismo sistema operativo en varias máquinas para diferentes aplicaciones, lo que se hace es instalar el mismo sistema operativo y encima de él las diferentes aplicaciones en forma de cajas, aisladas entre sí, como si fueran máquinas virtuales.
EL CONTAINER SE PUEDE HACER CORRER EN ENTORNOS LINUX Y WINDOWS SERVER 2016 O WINDOWS 10.
Sí, lo entiendo, es un concepto nuevo y puede ser un poco espeso, pero la idea gusta y debe verse como una herramienta más que se pone a nuestra disposición. ¿Puede ser un lío? No, simplemente se tiene que aplicar donde corresponda:
- Para cosas de mayor rendimiento y más eficientes — Containers
- Para cosas más seguras y aisladas — Máquinas Virtuales.
Si desea saber más de esta tecnología puede consultar el proyecto de código abierto Docker que mantiene la empresa con el mismo nombre, Docker, y que es el motor que integra Microsoft para dar servicio de containers a los nuevos sistemas operativos.
En Windows, los containers, pueden ser de dos tipos diferentes según el grado de aislamiento entre ellos:
- Windows Server Container. Las instancias de los containers se ejecutan a la vez sobre el mismo anfitrión, compartiendo el mismo núcleo común.
- Hyper-V Container. Las instancias de los containers se ejecutan a la vez en el mismo anfitrión, pero no comparten el mismo núcleo sino que aísla entre cada uno utilizando la tecnología de virtualización Hyper-V.
A NIVEL FUNCIONAL, LOS WINDOWS SERVER CONTAINERS Y HYPER-V CONTAINERS, SE CREAN, GESTIONAN Y FUNCIONAN DE FORMA IDÉNTICA.
¿Tienes más dudas? ¿Desea conocer más de cerca esta tecnología? Deja tus comentarios y estaremos encantados de responderte. Si te ha gustado este contenido suscríbete a nuestra newsletter.