ENES

Helm

El gestor de paquetes de Kubernetes: instalás una app entera con un comando.

Un chart de Helm hecho de plantillas más un archivo de valores se convierte en manifiestos de Kubernetes y se instala como un release en un cluster

Helm es una herramienta para instalar y actualizar aplicaciones en Kubernetes. Una app real en Kubernetes necesita un montón de archivos YAML: Deployments, Services, ConfigMaps, Secrets, reglas de Ingress. Helm los empaqueta en algo llamado chart, así que en vez de aplicar una docena de archivos a mano corrés helm install my-db bitnami/postgresql y tenés una base de datos andando.

Un chart es una carpeta de plantillas con huecos para completar, más un archivo values.yaml con valores por defecto: cuántas réplicas, qué versión de la imagen, cuánta memoria. Vos pisás lo que necesites, por ejemplo un disco más grande en producción, y Helm completa las plantillas y manda el resultado al cluster. Cada instalación es un release con historial de versiones, así que helm upgrade lo lleva hacia adelante y helm rollback lo devuelve a una versión anterior si algo se rompe.

Los charts se comparten en repositorios, y el software popular, desde bases de datos hasta herramientas de monitoreo, suele publicar un chart oficial. Helm es un proyecto graduado de la Cloud Native Computing Foundation y muchas veces lo manejan herramientas de GitOps como Argo CD o Flux. La queja típica es que el YAML con plantillas se vuelve difícil de leer; alternativas como Kustomize, en cambio, parchean YAML común.

Para quedarse

Para seguir leyendo

Términos relacionados

Más de Cloud