Saltar al contenido
BABEL Blog

¿Qué versión de Docker necesito?

23 marzo 2017

Categorías

Tags

  • BABEL
  • Blog
  • DevOps
  • Docker


El pasado 2 de marzo, prácticamente coincidiendo con el cuarto aniversario de Docker, se anunció un nuevo modelo de nomenclatura para sus productos, homogeneizando nombres y simplificando su estructura. A partir de ahora Docker se divide en dos plataformas:
  • El conocido como Docker Engine pasa a llamarse Docker Community Edition (CE).
  • Docker Datacenter /Docker engine CS (Commercial Supported) pasa a llamarse Docker Enterprise Edition (EE). Además se simplifica creando 3 niveles de soporte.
Junto con esto presentaron un nuevo modelo de liberación de versiones y de mantenimiento de estas. En primer lugar se abandona el versionado numeral tal como se estaba usando hasta ahora y se convierte a una basada en el año y mes de lanzamiento, similar al utilizado por Canonical en Ubuntu. De esta forma después de Docker v1.13 aparece la versión v17.03. Más allá de un cambio meramente estético esto lleva asociado un cambio en el modelo de soporte y mantenimiento. La versión de la API queda fuera de este nomenclatura y se mantendrá como hasta ahora, intentando mantener la compatibilidad siempre con las versiones anteriores. La versión CE ahora tendrá dos variantes:
  • Edge: De liberación mensual y en la que solo se proporcionará soporte a bugs y fallos de seguridad durante el mes en curso.
  • Stable: De liberación trimestral con cuatro meses de soporte.
Por su parte Docker EE lleva el mismo ritmo de liberación que la versión Stable pero el soporte se garantiza durante un año.


Docker EE

Hasta la llegada de esta versión el soporte estaba muy segmentado en función de las funcionalidades que quisiésemos contratar y los productos que incluyese este soporte. Además no estaba demasiado claro qué infraestructura estaba certificada y quién era el encargado de dar este soporte (el proveedor en la nube, el desarrollador del sistema operativo o el fabricante, por ejemplo). Entendamos que esta versión está dirigida a aplicaciones críticas en la que necesitemos una garantía de soporte.

Para simplificar todo esto se han acometido tres planes:
  1. Reducción de los planes de soporte a 3: Básico, estándar o avanzado.
  2. Creación de un programa de certificación a nivel de infraestructuras y plugins.
  3. Centralización de toda la oferta e información en Docker store, con todos los planes de precio, información y elementos certificados. Incluye además contenedores certificados validados por la propia Docker Inc.


Los planes

En la siguiente imagen podemos ver la matriz de planes con las características incluidas en cada uno.



La licencia es por nodo (máquina física o virtual) y tiene un coste mensual. En el caso de los proveedores de cloud como Azure o AWS el coste es por hora de uso y los planes se reducen agrupándolos. Todos los precios se pueden obtener en Docker store.
 


Programa de certificación

Para poder acceder a la versión EE es necesario que nuestra infraestructura esté dentro de las certificadas. Para ello se ha creado un programa de certificación y homologación en la que Docker garantiza que sus herramientas funcionaran sin problema y que existe una vía directa de comunicación entre proveedor y fabricante para agilizar la resolución de incidencias y compartir información.

De partida podemos contratar esta versión para Azure, AWS, Red hat linux, Oracle linux, SUSE, Ubuntu, CentOS y Windows server 2016 y pronto se unirá Google Cloud.



Por la parte de plugins y contenedores certificados podemos encontrar productos de empresas como netapp, nexenta, weaveworks, sysdig, nutanix o Microsoft.


Docker store

Sin abandonar el repositorio público conocido como Docker Hub, la empresa se ha lanzado a crear un marketplace donde centralizar los contenedores, plugins y versiones de sus herramientas dando un enfoque más corporativo y facilitando la búsqueda con filtros donde se describe el origen y el soporte del que goza cada recurso.


Además ha añadido repositorios con los paquetes e instrucciones de la versión CE para las SO más populares como MacOS, Windows 10 o Debian y la posibilidad de contratar el soporte directamente desde este sitio. Por ejemplo, en las versiones de AWS y Azure accederemos a una plantilla donde se nos desplegará la infraestructura automáticamente y el coste de la licencia se aplicará a nuestro factura de ese proveedor (en el caso de Azure hay disponible un periodo de prueba de 30 días para evaluar el producto).

Finalmente, si también es posible contratar soporte para entornos menos críticos donde no necesitamos una atención inmediata a nuestras incidencias, pero para ello necesitamos ponernos en contacto directamente con la empresa.
 

¿Este es el principio del fin de Docker como lo conocíamos?

Todos los cambios producen miedos y gustan más a unos grupos que a otros. Por una parte está noticia ha sido muy bien acogida por la gente que necesita un proveedor fuerte para dar el salto y poner en producción arquitecturas basadas en contenedores. Los miedos sobre quien ofrecería el soporte y la fortaleza del proyecto se deben disipar al ver que si se desea se puede contratar un soporte refrendado por grandes de la industria tecnológica y una garantía de soporte clara y bien documentada.

Para los amantes de los productos open source y la gente que necesita un producto en evolución continua el anuncio de que la versión EE se apoye en la versión CE Stable, que el ritmo de liberación sea más rápido en la variante Edge y que no haya habido ningún cambio en las licencias junto el anuncio de que otra de las bases de Docker como es containerd haya sido donado a CNCF (como ya fue donado hace año y medio runC a OCP) debería ser motivo de alegría por el triunfo de otro producto nacido de un modelo de software libre. 

Por suerte Docker sigue siendo modular y nos permite adaptar el stack tecnológico a nuestras necesidades. Este modelo de soporte no nos impone el uso de orquestadores y gestores de clusters y a los que no les convenza Docker Datacenter pueden usar alternativas como kubernetes, rancher o Mesos/marathon, openshift, etc... Cada proyecto tiene unas necesidades y, al menos por ahora, Docker Inc te sigue sin obligar a utilizar únicamente sus herramientas.
 
Descripción imagen
Ángel Luis Mula Perfil en Linkedin

Apasionado de la automatización, la eficiencia y la optimización. Después de casi 20 años administrando sistemas, estoy convencido de que en un ambiente tecnológico lo más importante es el equipo humano. Haciendo foco en el mundo de los contenedores, la monitorización y la filosofía DevOps

Mas post de Ángel Luis Mula