gitops

GitOps como única fuente de verdad en el desarrollo de aplicaciones cloud native

Probablemente os hayáis encontrado alguna vez en la tesitura de estar programando o trabajando con una hoja de cálculo y que, de repente, algo se tuerza. Pasar de ir todo conforme a los planes y estar cerca de la implementación a que no funcione. Uno entonces empieza a revisar, de arriba abajo, de derecha a izquierda pero, por mucho que revise, añada o quite, el problema sigue ahí. Se pierde tanto tiempo que sería el equivalente a rehacer desde cero, que es lo que al final se acaba haciendo… Ahí radica la utilidad de GitOps para aplicaciones nativas en la nube.

Y es que la situación que describía es perfectamente extrapolable a cualquier proyecto de transformación digital. Con la dificultad añadida de que esa gestión o trabajo no es individual, sino colectivo. El proceso implica a diferentes departamentos, incluso a agentes externos a la organización.

En mi día a día profesional reconozco pocas cosas de las que aprendí en la escuela o la universidad. Todo a nuestro alrededor -la sociedad, las ciudades- también ha cambiado tremendamente en los últimos años. Incluso el liderazgo económico y empresarial. Y, cómo no, el mundo de la tecnología, que, además, impulsa y realimenta todos los demás cambios.

GitOps para simplificar y acelerar las implementaciones de aplicaciones

Hace tiempo que dejamos de tratar a nuestros sistemas como infraestructuras inmutables.. Esto supuso un cambio de paradigma para muchos departamentos de sistemas y uno de sus retos actuales es disponer de “una única fuente de verdad”.

Me explico: a la hora de analizar y proponer mejoras en los servicios TIC es muy útil contar con un repositorio que defina qué es lo que hay desplegado y todas las versiones de código e infraestructura que se han ido utilizando (las fotos intermedias).

GitOps se ha establecido como el modelo operativo para el desarrollo y construcción de aplicaciones nativas en la nube desde la aparición de los contenedores como pieza central de la implementación de iniciativas agile en los departamentos de sistemas.

GitOps tiene como motor de sus operaciones, cómo no podía ser de otra manera, a Git, la herramienta de gestión de versiones desarrollada por Linus Torvald. Sí, el padre de Linux, uno de los mayores fenómenos alrededor del movimiento del software libre. Y, por supuesto, Git, como sistema de control de versiones distribuido, se basa en una licencia de código abierto, que permite gestionar el despliegue de código con la velocidad y eficiencia que los departamentos de sistemas requieren en el entorno VUCA actual.

Una visión extremo a extremo

Desde el nacimiento de Kubernetes como herramienta para la gestión de contenedores y microservicios, el modelo GitOps ha definido diferentes buenas prácticas en lo que a la administración de clústeres de Kubernetes y entrega de aplicaciones se refiere. Git se usa como una fuente única de verdad para la infraestructura declarativa y las aplicaciones. Permite monitorizar cada uno de los elementos desplegados en el clúster y alerta de diferencias entre el código del repositorio Git y la infraestructura y aplicaciones desplegadas.

La metodología GitOps, junto a diferentes modelos de trabajo como implementación y distribución continua (CI/CD), permite disponer de una visión extremo a extremo de todo el proceso de creación y despliegue de infraestructura y aplicaciones. Esto garantiza la reducción de los tiempos de entrega de nuevas versiones, elimina errores y permite sistemas mucho más robustos, en lo que a pruebas unitarias y de seguridad se refiere.

Pilares de una correcta implementación de GitOps

A continuación os dejo los cuatro principios que hay que tener en cuenta para implementar de forma correcta la metodología GitOps:

  1. Todos los sistemas han de estar descritos de forma declarativa
  2. Las versiones del estado ideal de la plataforma serán custodiadas en Git
  3. La gestión de cambios se automatizará y centralizará en un único sistema/herramienta.
  4. Y, por último, pero no menos importante, hay que monitorizar y gestiona los entornos mediante agentes para alertas ante cualquier anomalía entre el estado deseado y los recursos desplegados.

GitOps es una solución para incrementar la productividad de los recursos, aumentar la estabilidad de los sistemas, dotarlos de escalabilidad “ilimitada”, mejorar la experiencia de los desarrolladores o alcanzar mejores estándares de seguridad.

Imagen; spacemoeba

Alejandro de Fuenmayor es ingeniero de Telecom. y MBA. Vive en las nubes desde hace ya unos cuantos años, desde que las cosas dejaron de ser tangibles y todo empezó a ser digital. Convencido de que las TIC tienen que hacernos la vida aún más divertida y sencilla, es consciente de que estamos todavía escribiendo la primera página de una nueva era para la humanidad.

Soluciones y Sectores

Te puede interesar

Conoce toda nuestra Propuesta de Valor para Grandes Clientes

Para tu conectividad

Somos líderes en tecnologías de conectividad, contamos con un potente ecosistema de alianzas, conocemos al 100% los procesos y aplicamos las tecnologías a las necesidades de cualquier sector.

Para tu nube

Todas las ventajas que el Cloud puede aportar a tu negocio: Soluciones de los principales proveedores y puesta en marcha por equipos profesionales de primer nivel.

Para tu Ciberseguridad y Seguridad Tecnológica

Somos conscientes de que es esencial dotar a las empresas de los recursos necesarios para hacer frente a los riesgos de seguridad que pongan en peligro su negocio y su reputación.

Para tus Procesos

Desde Telefónica Empresas, te ayudamos a conocer, reducir y controlar tus procesos, generar eficiencias y optimizar operaciones, garantizando la permanencia de tu negocio.

Para tus Clientes

Conectar con tus clientes es básico para la pervivencia de tu negocio. Te ofrecemos todo tipo de soluciones (CRM, Asistentes virtuales, Espacios inteligentes, líneas 900…)
empleados dispositivos

Para tus Empleados

La propuesta de Telefónica Empresas incluye todas las herramientas que tus empleados necesitan para trabajar con la mejor experiencia de usuario. Porque retener el talento es básico.

Consultoría e innovación tecnológica

Toda nuestra experiencia de transformación e innovación a tu alcance. Porque en Telefónica Empresas contamos con un equipo con experiencia tanto en proyectos internos de la compañía, como con clientes de distintos sectores y tamaños.

Ir arriba