Blog  //  Noviembre 2016  //  Docker, contenerización eficiente y rentable

Docker, contenerización eficiente y rentable




¿Cuántas veces has tenido que suspender el servicio de una aplicación de negocio para hacerle ajustes?, ¿y en cuántas ocasiones el proceso se ha prolongado más de lo previsto? Docker te permite ejecutar tus aplicaciones de forma ligera y compacta, garantizando la continuidad y disponibilidad del servicio.

Cada vez más empresas utilizan Docker, entre los principales motivos podemos destacar la reducción de la complejidad en la administración del servicio, el aumento de la agilidad en todos los puntos del ciclo de vida de una aplicación y el ahorro de recursos. ¿Por cuál de ellos deberías utilizar Docker en tu empresa?

Docker trabaja a nivel del núcleo del sistema operativo (tanto Linux como Windows). ¿Y esto en qué se traduce? En un importante ahorro tecnológico y económico. Para el departamento técnico, la utilización de Docker simplifica notablemente el paso de desarrollo a producción, siendo una herramienta muy utilizada en entornos DevOps. Docker maneja contenedores que se van desplegando progresivamente  y que pueden lanzarse y cerrarse de forma muy rápida permitiendo gestionar eficientemente los recursos de la infraestructura donde se ejecuta. Estos contenedores funcionan a través de imágenes autocontenidas, es decir, que incluyen todos los ficheros necesarios para ejecutar la aplicación en el dispositivo y entorno que sea. Así, nunca más oirás entre tus técnicos eso de "en mi ordenador funcionaba" durante los ciclos de pruebas.

Docker no se limita únicamente a ser un motor de contenedores sino que tiene a su alrededor un vasto ecosistema que lo potencia. Trabaja nativamente con gestores de clusters y orquestadores de la talla de Kubernetes, Mesos o Amazon ECS, además de tener su herramienta nativa. Esto permite dimensionar el servicio mediante funciones de escalado, garantizar la continuidad del servicio mediante la autoreparación y gestionar la infraestructura definiendo estados deseados.

Gracias a las bases sobre las que se asienta Docker, el footprint de la aplicación es mucho más ligero. Este sistema de contenedores sin duda ha revolucionado el proceso de despliegue y mantenimiento de aplicaciones. Es mucho más minimalista, más fácil de utilizar, fácil de mantener y tiene una curva de aprendizaje que llega a hacer que los técnicos perciban su interfaz como la propia de su empresa.

¿Y qué sucede con la seguridad? Docker permite desplegar las aplicaciones automáticamente y sin replicaciones. De esta manera, el procedimiento se vuelve mucho más ligero y seguro, ya que evita el error humano. Las imágenes firmadas garantizan la integridad de su contenido y al contener solo lo indispensable para la ejecución de la aplicación está menos expuesta a vulnerabilidades y ataques.

Docker como estándar

Docker se ha convertido en un estándar de mercado por todas las características que aporta en cada tramo del ciclo de vida de la aplicación. Desde desarrollo a producción contribuye aportando valor. Podríamos afirmar que todo en Docker es código. Esto nos habilita la creación de imágenes, la creación de infraestructuras, la definición de servicios como conjunto de aplicativos y sus relaciones, gestión centralizada de logs, actualizaciones y despliegues, control de versiones, integración con herramientas de integración/entrega continua, etc… todo esto sin olvidar que Docker es hardware agnostic con lo que un contenedor funcionará igual en un portátil, en una máquina virtual o en la nube sin necesidad de ningún cambio.

Docker es software de código abierto (aunque tiene soporte comercial si se desea contratar). A su código contribuyen grandes empresas del sector como Microsoft o Google y proveedores de la entidad de Amazon Web Services, VMWare o Azure ofrecen nativamente la posibilidad de ejecutar contenedores en su infraestructura. Podríamos estar hablando de un producto sin fecha de caducidad y con una ilimitada capacidad de crecimiento, ya que se puede combinar de tantas formas como se imagine gracias a plugins e integraciones con herramientas de terceros. Empresas punteras como Netflix, Spotify, Ebay, BBC, General Electrics, twitter, BBVA, Washington Post, ADP, Paypal o Amadeus lo usan.

Docker es realmente interesante para desarrollar y mantener microservicios. El sistema de contenedores no monolítico permite que cada unidad que da servicio al usuario pueda reforzarse de forma única, con el consiguiente ahorro económico. De esta forma facilita el continuous delivery y reduce el time to market tanto en caso de error como para lanzar nuevas aplicaciones que hagan tu negocio más competitivo. ¿Se te ocurre una forma mejor de optimizar tus recursos?
Escrito por:
Ángel Luis Mula : Administrador de sistemas en BABEL.
Publicado el 28/11/2016 por BABEL | con 2 comentarios
Comentarios:
Miguel G. Sanguino
Muy de acuerdo. Y ademas super fácil de usar para los que somos desarrolladores. El poder levantar un entorno como el pro en tu local, sin ejecutar un commando de shell y sin que te consuma la maquina, genial!!

Gran artículo!
12/12/2016 18:19:03

Juan María Reina Ortiz
¿Puedo decir que me recuerda a las zonas de Solaris? Antes se las llamaba "Solaris Containers"...
12/12/2016 14:49:58

 Security code