INNOVACIÓN EN LA TECNOLOGÍA

INNOVACIÓN EN LA TECNOLOGÍA

DevOps Y CONTENEDORES | ACTORES IMPORTANTES DE LA AGILIDAD

El mundo de la tecnológica sigue con gran avance e innovación y las tecnologías de DevOps y Contenerización son un ejemplo de ello. A lo largo de los años han desarrollado nuevos conceptos y son foco de las áreas técnicas y de operación, que buscan agilidad, automatización en la gestión y disminución de los tiempos, ventajas que promete la adopción correcta de los procesos de DevOps y la utilización de la tecnología de contenedores.

Debido al aumento y celeridad de los saltos tecnológicos, el mercado de software requiere producir resultados de alta calidad en poco tiempo, aumentando la agilidad y limitando el número de errores del ciclo de vida (ALM). En este escenario DevOps tiene el reto de ser parte de la solución y sobreponer los problemas tradicionales de las áreas de TI: reuniones de definición, gestión de procesos de adquisición e infraestructura, acoplamiento de áreas para el modelo de gobierno entre otras.

Por otra parte, las tecnologías de contenerización trae todas las características para simplificar el proceso de gestión de aplicaciones, permitir la portabilidad entre ambientes (onpremises – Cloud) y centralizar las tareas de los equipos de operación, dando así una agilidad y movilidad al software, sin perder de vista las implicaciones de automatización y gestión con DevOps.

El “todo como como código” ha venido abriendo un marco importante de desarrollo de habilidades dentro del ciclo de software, que sugiere el incorporar estrategias de scripting dentro de DevOps y así poder optimizar la forma que se automatizan los procesos incluidos.

Vamos involucrar esos conceptos para exponer las bondades de la implementación exitosa de DevOps, llevando de la mano las tecnologías de innovación.

Fases de la metodología 3HTP

Dentro de la fase de adopción (primera fase de metodología 3HTP) es importante transformar los conceptos de instalaciones de software onpremises y llevar a modelos dinámicos donde participen soluciones desde infraestructura como código (Iac), contenerización de aplicaciones, plataformas como servicio y habilitación de scripts y/o pluggins para la ejecución software del toolchain; a eso se le llamada el DevOps Hibrido y lo que en marca es la habilidad de poder definir una estrategia más rápida de implementación.

En el mercado de Software DevOps encontramos muchas soluciones que ofrecen esas posibilidades, pero lo realmente importante es saber definir las herramientas que “aportan a mi realidad empresarial actual”, es decir, que el análisis del toolchain a implementar este dado por el alcance que tiene cada herramienta versus las funcionalidades que se necesitan en el objetivo trazado como roadmap de implementación.

El DevOps híbrido permite mezclar esos conceptos de tecnologías para acelerar el paso a la profesionalización (Fase 2 de metodología 3HTP) y a su vez aportar como ejemplo medidas de automatización, disminución de costos de infraestructura, aprovechamiento de recursos y sobre todo agilidad. También encontramos motores de integración continua que permite la ejecución de Jobs, con integración a tareas de automatización al software y ejecución tareas de disponibilización y aprovisionamiento de plataformas completas para las aplicaciones.

El diagrama del grafico Nr2 muestra un ejemplo de una implementación que podría está dada por diferentes tipos de soluciones de software para aportar al toolchain: Los repositorios de Fuentes de Artefactos y de Imagen (ahora con la tendencia Contenedores) que generalmente hacen parte casi de un activo para la compañía por su valor y su importancia. Por otro lado un motor de integración continua con un pipeline que permite que la ejecución de las fases de DevOps involucren la creación del contenedor donde este el software que necesita ser llamado a cumplir una tarea en cierto momento del tiempo (compilación, análisis de código, pruebas unitarias, etc), llamado de scripts de infraestructura como código, que permitan la creación y el aprovisionamiento de un ambiente por ejemplo para las fases de Pruebas QA, que son de necesidad “volátil” y finalmente el llamado a scripts que automatizan una labor por sí mismo o por medio de un software. Finalmente, también permite la colaboración del equipo y mejora continua con el feedback y retroalimentación a la solución de ALM que, podría ser un software como servicio (JIRA, VSTS, EWM, etc).

La velocidad de los equipos de Desarrollo y del área de tecnología debe estar dada por la implementación de soluciones que aporten y den esa rapidez que el mercado existe y esa agilidad que tanto se habla. La adopción de herramientas tecnológicas hoy se puede ver de diferentes puntos de vista y el aprovechamiento de los recursos es una parte vital dentro de las metas que tiene TI.

Es tiempo de reenfocar los procesos y modelo de adopción, y lanzarse a la gestión de una arquitectura DevOps Híbrida para satisfacer las necesidades de la organización; Es tiempo de incrementar los skill de scripting de los equipos involucrados en DevOps (Desarrollo, Pruebas, infraestructura, producción) y empezar laboratorios de esas nuevas soluciones que ayuda en el camino de disminuir tiempos y costos.

Los próximos años, DevOps se enfrenta optimizar y mejorar las particiones que se han creado en las fases intermedias del proceso del ciclo de vida CI/CT/CD/RM, y lograr empezar a entregar un túnel (pipeline) que realmente conecte de punta a punta a Desarrollo con Operaciones de forma ininterrumpida y con los estándares de Automatización, calidad, agilidad, seguridad que el software y las aplicaciones requieran.

Ivan Pedraza