La implementación de aplicaciones en un clúster de Kubernetes puede ser un asunto complejo. A menudo requiere que los usuarios creen varios archivos de manifiesto YAML para crear pods, servicios y conjuntos de réplicas. Timón es un administrador de paquetes de código abierto para Kubernetes que permite a los desarrolladores automatizar sin problemas el proceso de implementación y configuración de aplicaciones en un clúster de Kubernetes. Si es nuevo en Kubernetes, es posible que desee familiarizarse primero con los conceptos básicos de Kubernetes.
En esta guía, le daremos una descripción general de Helm y cómo resulta útil para administrar aplicaciones y paquetes en el clúster de Kubernetes. Al momento de escribir esta guía, la última versión es Helm v3.
Terminologías y conceptos básicos de Helm
Como con cualquier tecnología, es bueno mirar algunas terminologías para comprender mejor cómo funciona. Pero básicamente, Helm se compone de dos elementos: Helm que es un cliente y Tiller que es un servidor. El timón se ejecuta dentro del clúster de Kubernetes. Veamos ahora las definiciones:
- Helm: esta es una interfaz de línea de comandos que le permite definir, implementar y actualizar aplicaciones de Kubernetes mediante gráficos.
- Tiller: este es un componente de servidor que se ejecuta en un clúster de Kubernetes y acepta comandos de helm. Maneja la implementación y configuración de aplicaciones de software en el clúster.
- Gráfico: esta es una colección de paquetes de helm que comprenden plantillas y archivos de configuración YAML que se representan en archivos de manifiesto de Kubernetes. Un solo gráfico puede implementar una aplicación simple, como un módulo Memcached o una aplicación web completa con una base de datos, etc. Los gráficos son muy fáciles de crear, publicar y compartir.
- Repositorio de gráficos: esta es una ubicación o base de datos donde se pueden recopilar y compartir gráficos.
- Lanzamiento: es una instancia de gráfico que se ejecuta dentro de un clúster de Kubernetes. Se puede instalar tantas veces como sea posible según el deseo de un usuario y cada vez que eso sucede, se crea una nueva versión.
Helm facilita las implementaciones y los procesos estandarizados y reutilizables. Esto lo convierte en una forma genial de administrar un clúster de Kubernetes. Los gráficos de Helms son particularmente útiles porque lo ayudan a comenzar sin comenzar desde cero.
Cómo instalar Helm en el clúster de Kubernetes
Dado que Helm funciona en un clúster de Kubernetes, asegúrese de configurar primero un clúster de Kubernetes. Asegúrese también de que todos los nodos estén listos. Puede lograr esto ejecutando el comando desde el plano de control:
$ kubectl get nodes
Hay un par de formas de instalar helm, pero la más simple de todas es usar un script automatizado. Por lo tanto, continúe y descargue el script automatizado usando el comando curl como se muestra:
$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
Otorgue permisos de ejecución y ejecute el script de la siguiente manera.
$ chmod 700 get_helm.sh $ ./get_helm.sh
Helm se instalará en el directorio /usr/local/bin.
Para verificar la versión de helm, ejecute:
$ helm version
Uso de Helm en el clúster de Kubernetes
El primer paso para usar helm es instalar gráficos en su sistema local. El centro de artefactos contiene cientos de repositorios de gráficos públicos que puede instalar localmente en su sistema. Centro de artefactos es un proyecto de código abierto que contiene miles de paquetes de Kubernetes.
Para instalar un gráfico desde el centro de artefactos, busque el nombre del gráfico en el campo de texto provisto. En este ejemplo, estamos buscando el gráfico de MariaDB.
Cuando presione ENTER, se le proporcionará una lista de gráficos para elegir.
Seleccione su gráfico preferido y se le proporcionará una lista de instrucciones sobre cómo instalarlo
Agregar un repositorio de gráficos
Antes de instalar un gráfico, primero debe agregar un repositorio de gráficos. Para lograr esto, use la sintaxis:
$ helm repo agregar [chart_repo] [chart URL]
Por ejemplo, para instalar el gráfico MariaDB, ejecute:
$ helm repo add bitnami https://charts.bitnami.com/bitnami
El resultado confirmará que el repositorio de gráficos se ha agregado con éxito a su sistema.
Instalación de un gráfico
Una vez que se ha agregado el repositorio de gráficos, puede instalar el gráfico usando la sintaxis:
$ timón instalar [release-name] [chart_repo]/[chart-name]
Por ejemplo, para instalar el gráfico de MariaDB con el nombre my-release, ejecute:
$ helm install my-release bitnami/mariadb
El cliente de helm imprime una lista de los recursos creados y los pasos de configuración adicionales que puede realizar.
Una vez hecho esto, puede listar el gráfico instalado usando el comando:
$ helm ls
Para volver a leer la información de configuración, ejecute:
$ helm status release-name
En este caso:
$ helm status my-release
Creando tu propio gráfico
También puede crear su propio gráfico usando el comando:
$ helm crea el nombre del gráfico
Por ejemplo, para crear un gráfico llamado my-chart ejecute:
$ helm create my-chart
Puede verificar la estructura de directorios del gráfico usando el comando de árbol que se muestra:
$ tree my-chart/
Eliminación de un gráfico
Para desinstalar un gráfico, utilice la sintaxis
$ helm delete nombre-versión
Por ejemplo, para eliminar el gráfico actualmente instalado, el comando será:
$ helm delete my-release
Obteniendo ayuda
Para obtener más opciones sobre el uso de helm CLI, ejecute el siguiente comando
$ helm get -h
Conclusión:
Para obtener más información sobre el timón y sus comandos, consulte el documentación del timón
Leer también: Cómo configurar el controlador de entrada NGINX en Kubernetes