Uno de nuestros clientes se propuso dar un empujón a su sistema de CI/CD para hacer más eficientes sus procesos de integración de código y posterior construcción y despliegue.
El primer paso consistió en la migración sus flujos desde la herramienta CircleCI a Jenkins. Un trabajo complejo que se completó con éxito pero no obtuvo las mejoras esperadas en cuanto a usabilidad y rendimiento.
La arquitectura de la solución se basa en Jenkins, Docker y Kubernetes sobre cloud AWS. Para la monitorización tanto de la infraestructura como de las aplicaciones las herramientas se integran con Grafana.
Con este contexto acudieron a qualtio para revisar los aspectos que no terminaban de encajar y ver que acciones se podrían llevar a cabo para terminar de sacarle todo el provecho a sus nuevas herramientas.
El cliente experimentó problemas de rendimiento y eficiencia en sus pipelines de CI, lo que afectó negativamente a la productividad y la calidad del desarrollo. La migración a Jenkins no proporcionó los resultados esperados, generando tiempos prolongados y un consumo de recursos alejado de lo recomendable.
Cuando un sistema de CI/CD no funciona de una manera ágil, no utiliza un flujo correctamente definido y hace un uso ineficiente de los recursos de la infraestructura entonces se convierte en un impedimento al desarrollo más que en una ayuda.
Como primer paso, llevamos a cabo un exhaustivo assessment para comprender a fondo los pipelines existentes, así como los objetivos y requerimientos de los distintos equipos involucrados. A partir de esta evaluación, identificamos una serie de mejoras y seleccionamos aquellas que podrían tener un impacto significativo con el menor cambio posible en la forma de trabajo actual.
Implementamos cambios clave, logrando reducciones notables, entre el 50-80%, en los tiempos de ejecución de los diferentes pipelines, al mismo tiempo que optimizamos el consumo de recursos.
Simplificamos el proceso de provisionado de pods, optimizamos los recursos de los contenedores y refactorizamos el código de los pipelines, ajustándonos a las mejores prácticas recomendadas por Jenkins. Este enfoque no solo mejoró el rendimiento, sino que también proporcionó una mayor estabilidad y mantenibilidad al sistema de CI del cliente.
El éxito de esta intervención demuestra nuestra capacidad para abordar desafíos complejos en el ámbito de la Integración Continua y Continuous Delivery, ofreciendo soluciones efectivas y resultados tangibles.
Equipo dedicado a impulsar el éxito de nuestros clientes en un mundo digital en constante cambio.
FINANCIADO POR LA UNIÓN EUROPEA CON EL PROGRAMA KIT DIGITAL POR LOS FONDOS NEXT GENERATION (EU) DEL MECANISMO DE RECUPERACIÓN Y RESILIENCIA