Vamos a actualizar nuestra Política de privacidad próximamente. Te recomendamos consultar el avance.

Docker esencial

Otras tecnologías de contenedores

¡Prueba gratis durante 10 días

nuestros 1290 cursos !

Prueba gratis Mostrar modalidades de suscripción
Docker no es ni la primera ni la única tecnología de contenedores en el mercado. Desde Chroot hasta RKT, pasando por Jails, OpenVZ, LXC... comentaremos las tecnologías más conocidas y sus características generales.

Transcripción

Docker no es ni la primera ni la única tecnología de contenedores en el mercado. Desde los años 70, llevamos viendo diferentes tecnologías de contenedores en diferentes sistemas operativos que difieren en su objetivo y en su estilo de aplicar. Vamos a ver las más conocidas. Chroot es probablemente la más longeva de todas, apareciendo en el año 79 en Unix V7, lo que nos permitía, como su nombre (que es una abreviatura de "change root") nos dice, cambiar el "root" de un usuario o aplicación. Lo que hacía es que tomaba una carpeta de un usuario o una aplicación, y la convertía en el "root" para ese usuario o aplicación, haciendo que no pudiera acceder a ningún otro fichero de ese sistema operativo. Virtuozzo, aparecido ya muchos años más tarde, se volvió muy común en los años 2000 dentro de los sistemas de "hosting". Lo que permitía era empezar a crear unos límites que eran independientes para cada uno de los usuarios, que no solo limitaban el acceso a una aplicación, sino que además permitían contener un sistema operativo completo del que era dueño ese usuario. Solo se compartían los kernels, como se hace en la mayoría de los sistemas de contenedores, y se podía desplegar un sistema operativo completo con límites de recursos para que usaran todos sus usuarios. Virtuozzo era propiedad de la empresa Parallels, pero en determinado momento empezaron a funcionar como una empresa independiente. Las jaulas ("jails") de FreeBSD son muy parecidas a chroot, pero incluyen funcionalidades adicionales para poder crear límites en los recursos del sistema como la memoria, la CPU, los sitios a los que tiene acceso, que pueden llegar las aplicaciones que se ejecutan dentro. Es muy común en FreeBSD y se puede encontrar también en la mayoría de sus derivados. Los contenedores o zonas, de Solaris, que han ido cambiando de nombre con el tiempo, son muy parecidos también a las jaulas de Unix. Delimitan una zona que también tiene una especie de sistema operativo más o menos completo de la que no pueden salir ninguna de las aplicaciones que hay dentro. Es bastante común en grandes servidores, ya que siendo el sistema operativo Solaris en el que corre, se utilizaba para agregar gran cantidad de usuarios a grandes servidores y limitar el acceso a los recursos que tenían cada uno, pudiendo subdividir servidores en pequeñas parcelas para cada uno de ellos. OpenVZ no es otra cosa que, en 2001, cuando Virtuozzo hizo libre el código de su sistema de virtualización por contenedores. Ha sido bastante común durante muchos años, y lo utilizaban sistemas como Proxmox a la hora de virtualizar. Pero desde el año 2016 ya no es un sistema de contenedores, sino que han pasado a un sistema de virtualización completa con KVM. Las WPARs o "workload partitions" —también llamadas particiones— son el sistema de IBM para su sistema operativo Unix. Son muy parecidas a las particiones o zonas de Solaris. De la misma manera, se utilizan para grandes servidores, para introducir muchos clientes en ellos y poder particionar todos los tipos de recursos a los que tienen acceso. LXC es un sistema de virtualización en contenedores, vagamente parecido a OpenVZ, pero que está directamente integrado en el kernel del sistema operativo, haciendo mucho más fácil su utilización. Hay grandes empresas detrás de su programación, (sobre todo teniendo en cuenta que es parte del kernel) como Google, hay partes de Virtuozzo incluso, y se está volviendo muy común, por ejemplo, entre Proxmox, que ha tenido que cambiar de tipo de virtualización desde que OpenVZ es de virtualización completa. También, toda la documentación de virtualización que encontráis en los documentos oficiales de Ubuntu son con LXC. Y también en Debian se pueden encontrar en sus documentaciones por defecto. Docker, a día de hoy, probablemente es la más conocida entre el público común. Funciona desde 2013 y ya funciona tanto en Linux como en Windows, no solo creando contenedores Linux en Windows, sino que, ejecutándose dentro de Windows Server, permite ejecutar contenedores Windows dentro de Windows. Es decir, realizar virtualización con contenedores del propio sistema operativo Windows Core. Rkt, es una solución también llamada Rocket, propiedad del sistema operativo CoreOS. Es software libre también. Es un desarrollo que han hecho hace poco tiempo, a finales de 2014, en diciembre, si no recuerdo mal, y que es una especie de evolución que ha crecido por un sitio dierente al de Docker. Ahora mismo, están intentando unificar esfuerzos, unir el tipo de imagen que están utilizando, para que cumplan todos algún estándar en común, y se utiliza en diferentes versiones de sistemas de virtualización en contenedores. Por ejemplo, Kubernetes no solo está disponible con el motor Docker, sino que también hay una versión que se llama rktnetes ("rocketnetes"), que es con el motor rkt. Hay determinadas grandes empresas que les interesa más por diferencias de rendimiento o por diferencias de despliegue, pero al día de hoy, están unificándose mucho y están intentando tener lo más en común posible. Como veis, hay muchos tipos de contenedores diferentes. Los clásicos de toda la vida como las zonas, las jaulas, chroot, etc., llegan a contener sistemas operativos completos. Sin embargo, Docker y rkt, que son los últimos paradigmas con respecto a este sistema, no necesariamente contienen sistemas operativos completos, sino que tienden a contener únicamente la aplicación que se ejecuta en ellos. Cuanto menos, mejor. Es conveniente que tengáis un poco de idea más o menos de dónde vienen a dónde vamos y en que sistemas operativos podemos trabajar con ellos.

Docker esencial

Descubre lo que te ofrece Docker y aprende a empaquetar aplicaciones junto con todas sus dependencias en un contenedor virtual que podrás ejecutar desde cualquier servidor Linux.

2:18 horas (36 Videos)
Actualmente no hay comentarios.
 
Software:
Fecha de publicación:26/04/2017

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.