Llegamos a ustedes gracias a:



Noticias

Google se pone serio con Gitops

[28/05/2022] 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 el 2014- continúa 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 normalmente requiere un profundo conocimiento del dominio. Esto incluye la capacidad de escribir gráficos de Helm y código en el tan denostado lenguaje de programación 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 el distinguido ingeniero de Google y uno de los arquitectos originales de Kubernetes, Brian Grant, en una entrada del blog técnico.

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, proveedores como Weaveworks y Codefresh están intentando crear plataformas Gitops alojadas para facilitar la adopción por parte de las empresas.

"Si se entrecierra el ojo, Gitops es similar a Puppet", señaló 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 maní y el chocolate. El problema hasta la fecha ha sido que demasiadas empresas tienen dificultades para 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 solo toman segundos para hacer en una GUI pueden tomar días para hacer a través de las 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, previamente de código abierto, para ayudar a los equipos de la plataforma a gestionar su infraestructura".

Grant afirmó que Google Cloud 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 de "lo que ves es lo que obtienes (WYSIWYG), incluidas las tareas de creación, edición, transformación y actualización de paquetes".

Google Cloud 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 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 solo se interponen en el camino".

Aunque estos pasos iniciales solo admiten 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 Cloud 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 está "buscando comprometerse con la comunidad para hacer avanzar esta tecnología".

"Estamos muy emocionados de ver que Google invierte en Gitops y se une a la comunidad", señaló el fundador de Weaveworks, Alexis Richardson, quien 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", anotó.