Contenedores: una solución al desarrollo de microservicios

0 1.171

Por Octavio Ruiz Calatayud, de Ingeniería de Clientes de Telefónica.

Mucho se habla sobre los contenedores y sobre cómo nos ayudarán a agilizar el despliegue de las nuevas aplicaciones de TI, en muchas ocasiones referidas como aplicaciones de cloud nativas. No obstante, pocas veces se reflexiona sobre los prolegómenos –al menos los principales- que han dado pie e impulso al desarrollo de esta tecnología y cuáles son algunos factores que seguramente facilitarán su adopción.

Este artículo queda enmarcado dentro de un trabajo de un ámbito más global, realizado junto a Luis Alcalde Gibaja y a Ramón Pérez Hernández, compañeros de Ingeniería de Clientes especializados en Cloud, en Telefónica, que se titula “Contenedores: Una solución al desarrollo de microservicios”, donde se analiza el estado del arte referente al mundo de los contenedores, se profundiza en la tecnología de contenedores y se analiza Docker como caso práctico de aplicación.

Las infraestructuras como motor de cambio

Desde un punto de vista puro de infraestructuras de aplicaciones la virtualización, para el máximo aprovechamiento de los recursos hardware mediante la ejecución de múltiples cargas de trabajo en un servidor o host físico y la cloud, para el ofrecimiento de servicios en pago por uso, con un portal en modo autoservicio, con comunicaciones solventes y de garantías, con recursos elásticos bajo demanda, han sido motores de un cambio que está promoviendo una revolución en el mercado hardware de servidores y almacenamiento, y de la forma en la que las compañías, grandes y pequeñas, abordan la adquisición de recursos de TI para el despliegue de sus aplicaciones de negocio.

Tan es así que a día de hoy resulta inevitable que cuando se plantea el uso de contenedores surja por ejemplo el dilema sobre si montarlos en una plataforma virtualizada o en una bare-metal o que se dude de la seguridad, estabilidad y modo de gestión de tu aplicación una vez desplegada y por tanto se piense en arquitecturas y soluciones diversas y que suponen en ocasiones una disrupción frente al status quo.

El desarrollo de software como motor de cambio

Por otra parte las formas por las que desarrollar software están si no en plena transformación como mínimo siendo cuestionadas o repensadas. ¿Quién no ha oído hablar de DevOps? Nos estamos cuestionando el modo en el que desarrollamos aplicaciones con el fin de centrarnos en la aplicación de negocio, en facilitar que su diseño permita elasticidad y agilidad ante el crecimiento y decrecimiento del uso de dicha aplicación, haciendo uso por ejemplo de los microservicios, haciendo que cada funcionalidad de una aplicación sea independiente y pueda escalar conforme a lo estrictamente necesario, optimizando así los recursos empleados para la ejecución de la aplicación.

De forma tradicional ha sido y sigue siendo una práctica habitual la alienación de las aplicaciones una vez han sido desplegadas en infraestructuras de TI, esto es, afrontar que las aplicaciones se tienen que adaptar a silos tecnológicos donde bien sea principalmente el cómputo, el almacenamiento o la red, imponen unas limitaciones con respecto a su ejecución o relativa a su rendimiento que difícilmente pueden ser obviadas y que aunque se suele intentar mitigar siguen provocando por ejemplo incidencias en el paso a producción de nuevas versiones de las aplicaciones.

Ambas formas de desarrollo generan lo que el mercado ha denominado TI Bimodal, con distintos enfoques, valores añadidos, periodos de desarrollo y de modo que en función del escenario en el que nos encontremos adoptemos fundamentalmente un camino tradicional -que funciona y da soporte al negocio de una inmensa mayoría de clientes a nivel mundial de forma satisfactoria, no lo olvidemos- o uno más novedoso y que se puede caracterizar bien sea por su agilidad y bajo tiempo de despliegue o para cuando estamos ante un proyecto con un camino incierto si pensamos seguir el camino tradicional.

Los contenedores suponen una alerta tecnológica

Sin la pretensión de querer embarcarnos todos hacia esta nueva tecnología de forma incondicional, dada esta situación parece lógico pretender que la aplicación de negocio sea la protagonista y epicentro de los nuevos desarrollos que los clientes necesiten abordar… pero ojo, siempre que se intuya o vislumbre un beneficio con respecto al camino tradicional de desarrollo y despliegue de las aplicaciones de TI.

La adopción de contenedores en el despliegue de una aplicación de negocio no obstante no parece que vaya a suponer necesariamente un alivio o mejora con respecto a la complejidad que suele acompañar este tipo de diseños, puestas en marcha y posterior operación o gestión del entorno de TI.  Requiere especiales atenciones en su despliegue en sistemas distribuidos, por ejemplo por lo que respecta a la automatización en el descubrimiento de servicios (al crecer y decrecer de forma continua) o a la gestión de la red (con distintas alternativas de implantación) o aún más introduce incertidumbres en la gestión de la seguridad de estas arquitecturas, al deber seguir nuevas prácticas y procedimientos operativos cuyas mejores prácticas seguramente requieran de una mayor experiencia de campo.

Apuntes finales

Si bien aún estamos algo lejos de poder considerar que el despliegue de proyectos basados en contenedores son el día a día de una buena parte de las organizaciones existen encuestas que apuntan a que los contenedores moverán un volumen de negocio 4 veces mayor dentro de 4 años (llegando a mover más de un billón de dólares en 2017). Fiel reflejo de este punto es la apuesta de múltiples fabricantes hardware y software para sacar el mayor rédito posible de esta situación.

El desarrollo de código basado en contenedores apunta a ser muy conveniente, dada las capacidades de portabilidad hacia infraestructuras diversas.

Los clientes poco a poco van planteándose la adopción de este tipo de soluciones, muchas veces movidos por sus necesidades de negocio y/o técnicas y es que los contenedores permiten plantear casos de negocio más rentables o simplemente viables. En la parte que nos concierne y como empresa tecnológica, seguiremos acompañando y asesorando al cliente ante esta nueva revolución.

Vía Photo by Teguh Jati Prasetyo for shutterstock

También podría gustarte

Sin comentarios

Deja tu comentario sobre esta noticia