Software
Cloud Computing
DevOps
Kubernetes

Google se toma en serio Gitops

El proveedor de la nube está apoyando a Gitops como una mejor manera de gestionar y controlar las configuraciones a través de entornos Kubernetes de rápido crecimiento.

Google Cloud

Google ha hecho su compromiso más significativo hasta ahora con la práctica emergente de Gitops, mediante la creación de un conjunto de herramientas de código abierto destinadas a ayudar a las organizaciones a configurar y gestionar de forma coherente sus aplicaciones en contenedores a escala.

A medida que el orquestador de contenedores Kubernetes, que surgió de Google en 2014, sigue convirtiéndose en una capa central para las organizaciones nativas de la nube, ser capaz de gestionar flotas de contenedores, y conciliar el estado deseado con el estado real, se ha convertido en una tarea especializada que suele requerir un profundo conocimiento del dominio. Esto incluye la capacidad de escribir gráficos y código de Helm, en el muy criticado lenguaje YAML.

"Empresas de todos los tamaños están aprovechando Kubernetes para modernizar la forma en que construyen, despliegan y operan las aplicaciones en su infraestructura. A medida que estas empresas amplían el número de clústeres de desarrollo y producción que utilizan, la creación y aplicación de configuraciones y políticas de seguridad coherentes en un entorno cada vez mayor se hace difícil", escribió la semana pasada en un blog técnico el ingeniero de Google y uno de los arquitectos originales de Kubernetes, Brian Grant.

 

Gitops: el desarrollo comienza con Git

Gitops ha surgido como una extensión de los principios devops existentes para abordar algunos de estos desafíos. Al tratar la infraestructura principalmente como código, tanto una aplicación como su infraestructura subyacente pueden almacenarse en un sistema de control de versiones, probablemente Git, que se convierte en una única fuente de verdad para los equipos de desarrollo y operaciones.

Un agente de software, más comúnmente las herramientas de entrega continua de código abierto Argo o Flux, asegura que el estado real de una aplicación coincida con el estado deseado según lo declarado en los archivos de configuración. Ahora, además de eso, proveedores como Weaveworks y Codefresh están tratando de crear plataformas Gitops alojadas para facilitar la adopción por parte de las empresas.

"Si se entrecierra el ojo, Gitops es similar a Puppet", dijo Grant a InfoWorld en una entrevista. "Es un enfoque declarativo, completo con un agente de software que mantiene las cosas sincronizadas".

Sin embargo, la práctica naciente todavía requiere algo de trabajo pesado por parte de los especialistas en operaciones para escribir y mantener estos archivos de configuración de Kubernetes y garantizar que los procesos estén en su lugar para dar a sus desarrolladores lo que necesitan, sin sacrificar la seguridad y la consistencia.

 

Cómo trabaja Google para simplificar Gitops

Grant dice que ha apoyado a Gitops desde sus primeros días, y Google ciertamente ve que Kubernetes y Gitops van juntos como la mantequilla de cacahuete y el chocolate. El problema hasta la fecha ha sido que demasiadas empresas luchan por configurar y gestionar de forma coherente varias configuraciones de Kubernetes a escala.

En concreto, Google Cloud está trabajando en varias herramientas que deberían ayudar a simplificar la gestión de los entornos de Kubernetes utilizando los principios de Gitops, haciendo que varias tareas de configuración sean más compatibles con herramientas fáciles de usar para los desarrolladores, como las interfaces gráficas de usuario (GUI) y las interfaces de línea de comandos (CLI).

"Hemos escuchado de los usuarios que los cambios que toman sólo segundos para hacer en una GUI pueden tomar días para hacer a través de herramientas de configuración", escribió Grant. "Para que Gitops sea realmente utilizable, tenemos que abordar la dicotomía inherente entre las superficies de cliente preferidas y las herramientas de configuración".

En el centro de estos esfuerzos está kpt, una "cadena de herramientas centrada en los paquetes para ayudar a los equipos de la plataforma a gestionar su infraestructura", de código abierto.

Grant afirma que Google está ampliando ahora esa cadena de herramientas para que funcione con el orquestador de paquetes Porch, de modo que los desarrolladores puedan crear y automatizar configuraciones "lo que ves es lo que obtienes" (WYSIWYG), incluidas las tareas de creación, edición, transformación y actualización de paquetes.

Google también ha creado un plugin de código abierto para Backstage, una popular plataforma de código abierto que surgió de Spotify para ayudar a los equipos de la plataforma a crear portales internos de autoservicio para desarrolladores. "Eso proporciona una experiencia de GUI WYSIWYG. Se basa en el orquestador de paquetes para permitir a los equipos de plataformas y aplicaciones crear y editar fácilmente la configuración, al mismo tiempo que se refuerzan los límites de seguridad", escribió Grant. "No es necesario escribir YAML, parches o plantillas, ni siquiera bifurcar, confirmar, etiquetar, empujar y fusionar los cambios".

Si bien el uso de una GUI para ejecutar las prácticas de Gitops no es nuevo, "los enfoques prevalecientes requieren la creación de abstracciones, a menudo delgadas, que necesitan ser construidas a medida en la parte superior del modelo de recursos de Kubernetes", escribió Grant. "Esto crea una situación en la que los equipos de la plataforma tienen que hacer mucho trabajo adicional para crear una experiencia de gestión en la parte superior de Kubernetes". Ahora, con estos esfuerzos, Google espera que pueda "habilitar una interfaz gráfica de usuario que complemente el ecosistema existente, en lugar de requerir abstracciones delgadas que sólo se interponen en el camino."

Si bien estos pasos iniciales sólo soportan el aprovisionamiento y la gestión de espacios de nombres y sus recursos de políticas adyacentes de Kubernetes, Google planea seguir trabajando para habilitar más y más tareas de administración de clústeres en el futuro.

Los operadores de clústeres y los administradores de plataformas también pueden empezar a utilizar kpt de forma similar a algo como kustomize para la gestión simplificada de la configuración, en el sentido de que permite la selección de funciones para transformar recursos y crear variantes. Estas funciones pueden utilizarse como base para un catálogo de configuración, de modo que en el futuro se puedan poner en marcha instancias similares con mayor rapidez.

"Las funciones componibles permiten una experiencia de bajo código para los constructores de la plataforma y una experiencia sin código para los usuarios de la plataforma", escribió Grant.

Google también ha abierto recientemente su propia implementación de referencia de Gitops, llamada Config Sync, y la ha incluido como parte de kpt.

Por último, Grant destacó el proyecto de automatización de la red nativa de la Fundación Linux, Nephio, que, según él, "se basa en kpt, Porch y Config Sync para automatizar la configuración de las funciones de red interconectadas y la infraestructura subyacente que soporta esas funciones".

 

¿Qué es lo siguiente para Gitops?

Google quiere que kpt se convierta en un estándar abierto que pueda ayudar a simplificar la adopción más amplia de Gitops, con Grant escribiendo que el proveedor de la nube está "buscando comprometerse con la comunidad para avanzar en esta tecnología".

"Estamos muy contentos de ver a Google invertir en Gitops y unirse a la comunidad", ha dicho el fundador de Weaveworks Alexis Richardson, que acuñó el término Gitops. "Los clientes están pidiendo herramientas para desarrolladores para desplegar nuevos servicios sin conocer los detalles de Kubernetes. El nuevo sistema de Google hace exactamente eso, y funciona de forma inmediata con todas nuestras herramientas. Lo mejor de todo es que cualquiera puede utilizarlo y construir sobre él para enviar soluciones de nivel empresarial".

El analista de RedMonk, James Governor, considera que este anuncio es una prueba más de que Gitops sigue consolidándose en el sector. "El hecho de que Google Cloud apoye directamente a Gitops es otro fuerte marcador a favor del enfoque del flujo de trabajo", según ha explicado.



Contenido Patrocinado

Forma parte de nuestra comunidad

 

¿Te interesan nuestras conferencias?

 

 
Cobertura de nuestros encuentros
 
 
 
 
Lee aquí nuestra revista de canal

DealerWorld Digital