Como habréis podido leer en algún otro articulo soy muy crítico con el concepto de nube híbrida, siempre he tenido la sensación que es más una táctica para evitar tomar decisiones que una estrategia.
Pues bien el destino tiene un sentido del humor retorcido y resulta que IronIA Fintech es un ejemplo de nube híbrida, lo que significa que este artículo tiene algo de retractación de mi espíritu tecnológico talibán.
Dicho esto merece la pena que explique con cierto detalle para que y como estamos utilizando este concepto de nube híbrida.
En nuestro caso toda nuestra arquitectura emplea Google Cloud, de la mano de nuestro partner Cartagon, realizamos toda la implantación y desarrollo de nuestros entornos de calidad y producción así como del entorno de analitica e Inteligencia Artifical.
Pero se nos presentaba un problema, aunque Google Cloud nos ofrecía la posibilidad de tener un servicio de repositorio de código, nuestra intención era realizar integración continua y despliegue continuo de la forma más automatizada posible. No dudo que se podría haber hecho 100% con Google Cloud pero como además queríamos un entorno para gestionar épicas, historias de usuarios y planes de pruebas, es decir, un entorno DevOps completo; nos decantamos por Azure DevOps.
Ya teníamos la arquitectura, habíamos seleccionado dos herramientas. Perdonarme el tono de sarcasmo pero es que hay demasiados compañeros de profesión que piensa que seleccionar herramientas es arquitectura de software y eso pone de manifiesto el efecto Dunning-Kruger en su máxima expresión. Bien superado que estas decisiones sólo son una parte de la arquitectura nos toca obtener el objetivo para el que las seleccionamos, este punto también se olvida fácilmente; es lo mismo que comprar la bici el objetivo era tenerla o utilizarla.
Para obtener el objetivo tuvimos que integrar ambas soluciones, el repositorio de código pasó a ser GitHub, el control del proceso lo hacíamos en Azure Devpos y la ejecución de los despliegue en Google Cloud.
En resumen, un proceso completo de DevOps empleando dos plataformas de Cloud.
Este proceso al final se ve mucho menos colorido en la propia solución de Azure DevOps.
Los beneficios de este proceso son bastante claros para nosotros:
Control sobre el código desplegado en cada entorno.
Proceso de marcha atrás en cualquier entorno desplegando de forma automática a releases anteriores. Corrección rápida de errores.
Sin necesidad de programadores o técnicos en los despliegues. Lo que minimiza el uso de recursos reduciendo los costes de mantenimiento del software y de los entornos. Hacer más con menos recursos.
Integración continua. Ningún programador puede ignorar las dependencias.
Proceso de pruebas integrado en el proceso, auditable y trazable. Imprescindible para certificaciones como la ISO 27001.
Como decía el título de este artículo un sueño hecho realidad, con mi teléfono móvil puedo desplegar una nueva realease en producción teniendo toda la información sobre el código las pruebas realizadas y las aprobaciones anteriores.
Estamos preparando un evento para contarlo todavía más en detalle y que lo podáis verlo funcionar, cuando tengamos más información la publicaremos.
Comments