Volver al blog

Instalación de software en Kubernetes con el gestor de paquetes Helm 3 en Windows

Instalación de software en Kubernetes con el gestor de paquetes Helm 3 en Windows

A Si vienes de un entorno de desarrollo, probablemente conozcas el término Gestor de Paquetes. Los Gestores de Paquetes te permiten instalar dependencias, actualizar y degradar versiones, etc. En este tutorial, veremos un gestor de paquetes muy popular para Kubernetes, llamado Helm.

Helm ayuda a gestionar aplicaciones de Kubernetes. Con Helm, puedes definir una aplicación de Kubernetes, especificando los metadatos, dependencias y configuraciones de la aplicación. Helm también puede instalar aplicaciones en Kubernetes, así como actualizar y degradar las aplicaciones. Finalmente, puedes compartir tu aplicación con otros usando el archivo de Helm. En este tutorial, te mostraremos cómo instalar Helm 3, así como configurar, actualizar, revertir y gestionar charts y releases en el sistema operativo Windows.

Let’s begin!

Prerrequisitos

Antes de comenzar el tutorial, debes asegurarte de tener instaladas primero las siguientes herramientas:

  • Si no tienes configurado Kubernetes en Windows, la forma más fácil es comenzar con Docker Desktop. Ve a https://www.docker.com/products/docker-desktop. Descarga e instala Docker Desktop. En este tutorial, vamos a trabajar con Windows. Por lo tanto, necesitaremos instalar WSL 2 Backend. Este es un subsistema de Linux para Windows y permite el soporte para Docker:

Docker Desktop Kubernetes with Helm

Una vez que Docker Desktop esté listo, ve a Settings -> Kubernetes, y marca la opción que dice Enable Kubernetes:

Docker Settings Kubernetes with Helm

Enable k8s Kubernetes with Helm

Para comprobar si todo funciona correctamente, ve a la terminal o powershell, según el sistema que estés utilizando, y escribe el siguiente comando:

Si ves la siguiente salida, estás listo para continuar:

kubectl Kubernetes with Helm

Alternativamente, si decides trabajar en Ubuntu puedes seguir nuestra guía detallada: How to Install and Use Kubernetes on Ubuntu 20.04.

Además, antes de comenzar con el proceso de instalación, echemos un vistazo a algunos términos clave asociados con Helm.

  • Charts

 Los archivos YAML de Kubernetes se empaquetan en los Helm charts.

  • Repositorios de Helm

Helm ofrece soporte para repositorios. Un repositorio de Helm es una ubicación que alberga Helm charts para que otros puedan usarlos. Helm te permite crear tus propios repositorios, así como admitir repositorios de terceros.

  • Tiller

Tiller es el componente de servidor de Helm. Debe instalarse en el clúster de Kubernetes. Toma el Helm Chart y configura el clúster en consecuencia.

También puedes echar un vistazo a nuestra blog post that gives a detailed overview of Helm y explica los métodos de Helm para simplificar el despliegue de aplicaciones en Kubernetes.

¡Ahora, estamos listos para comenzar!

Paso 1: Instalar Helm 3

Instalar Helm 3 es un proceso sencillo. Las versiones están disponibles on the Helm GitHub page. Puedes descargar la versión que vayas a utilizar según el sistema operativo de tu elección. En este tutorial vamos a utilizar el sistema operativo Windows, así que para Windows sigue los pasos a continuación:

  1. En la página de GitHub, descarga los binarios de Helm para Windows.

  2. Una vez finalizada la descarga, encontrarás el archivo comprimido en tu carpeta de Downloads o dondequiera que lo hayas descargado.

  3. A continuación, mueve este archivo a una ubicación conveniente y descomprímelo. Deberías encontrar el archivo helm.exe en el contenido descomprimido:
    helm_binary

  4. Copia la ubicación de la carpeta y agrégala a la variable PATH en las variables de entorno de tu sistema.

  5. Una vez que termines, abre la terminal y escribe el siguiente comando:

Si ves la siguiente salida, ya tienes todo listo con la instalación de Helm. Luego puedes pasar a los siguientes pasos:

helm

Paso 2: Configurar repositorios e instalar un Helm Chart

Helm admite el acceso y la gestión de repositorios. Los repositorios son donde se almacenan los Helm Charts. Inicialmente, Helm no tiene su propio repositorio. En su lugar, Helm anima a los administradores y especialistas en DevOps a producir sus propios repositorios. Esto significa que si quieres tener MongoDB en tu clúster de Kubernetes, tendrás que agregarlo tú mismo al repositorio de Helm. Para ayudarte a encontrar los repositorios, puedes usar Artifact.io. Es un catálogo de código abierto para todos los Helm charts, gestionado por the CNCF.

A continuación, le mostraremos cómo configurar un repositorio y descargar e instalar el software. Tomaremos la instalación de MongoDB como ejemplo. Suponga que va a instalar MongoDB en su clúster de Kubernetes. Siga los pasos a continuación para la instalación:

  1. Primero, vaya a https://artifacthub.io.

  2. A continuación, busque MongoDB. Una vez que busque, verá que hay muchas opciones disponibles. La que nos interesa es MongoDB by Bitnami:
    search_mongodb

  3. Cuando finalice la búsqueda, verá diferentes opciones. Al lado de cada chart, puede ver el editor, la versión y otra información relevante. Una vez que localice el chart que desea, debe seleccionarlo. Aquí estamos haciendo clic en MongoDB by Bitnami:
    select_mongodb

  4. Ahora realmente puede comenzar la parte técnica. Si observa la descripción general, verá que hay una buena guía para cualquiera que desee instalar cualquiera de los servicios. Puede consultar diferentes opciones, configuraciones, parámetros, cómo eliminar el chart y cualquier otra cosa sobre la que necesite información. Busque el botón Install y haga clic en él:
    mongodb_install Kubernetes with Helm

  5. Aquí tiene todo lo que necesita para instalar MongoDB. Primero, debe agregar el repositorio y luego instalar el chart. Para agregar el repositorio, abra la terminal y escriba el comando:

Encontrará la siguiente salida:

repo_add_bitnami

Ahora que tiene configurado el repositorio, debe instalar el chart. Copie el comando del cuadro de diálogo y luego ejecútelo:

Una vez que el proceso finalice, ya estará todo listo con MongoDB.

Paso 3: Gestionar versiones

En el desarrollo de software, la gestión de versiones (releases) es vital. Siempre hay momentos en los que necesita actualizar o revertir a versiones anteriores. Afortunadamente, gestionar versiones en Helm es un proceso relativamente sencillo. Helm mantiene los números de versión para que siempre pueda revertir a la versión anterior. Del mismo modo, suponga que su aplicación está desplegada y en producción, y necesita realizar configuraciones: Helm también admite esto. A continuación, repasaremos algunas de las mejores prácticas para ayudarle a realizar estas operaciones.

  • Cómo actualizar la aplicación

Suponga que en su values.YAML archivo, menciona que necesita tener dos instancias de la aplicación en ejecución. Esto podría deberse a que su aplicación necesita tener alta disponibilidad. Pero más tarde, se da cuenta de que la aplicación necesita tener tres instancias. Sin Helm, primero tendrá que detener la aplicación y luego configurarla y volver a desplegarla. Con Helm, primero puede realizar cambios en el archivo values.YAML y luego simplemente ejecutar el siguiente comando. En el directorio donde se encuentran los archivos de Helm, ejecute el siguiente comando:

  • Cómo revertir la versión

Ahora suponga que su versión falla. Tal vez configuró números de puerto o rutas incorrectos. Para revertir a cualquier versión anterior, todo lo que necesita hacer es ejecutar el comando a continuación, y luego Helm revertirá la versión a la anterior:

Helm se encargará de todas las versiones y del control de versiones. Esta es una de las mayores ventajas de usar Helm con Kubernetes. Para ver todas las versiones de cualquier aplicación, ejecute el siguiente comando en el directorio que contiene los charts de Helm y los archivos YAML:

Paso 4: Crear su propio chart

Finalmente, ahora que se siente cómodo con Helm y comprende cómo funciona, es hora de crear su propio chart. Al crear su propio chart personalizado, puede distribuir fácilmente su aplicación, así como alojarla en cualquier repositorio. Crear su chart es un proceso bastante sencillo si sigue los pasos que describiremos a continuación. Primero, abra la terminal y ejecute el siguiente comando:

Esto creará el directorio con el nombre que proporcionó. Estamos usando el nombre my-app. Veamos el contenido de la carpeta:

Obtendrá la siguiente estructura:

Aquí hay un resumen del contenido en la salida:

  • carpeta charts – Utilizada para añadir charts dependientes.
  • carpeta templates – Configuración que se desplegará en el clúster.
  • archivo YAML – Esquema de la estructura del chart de Helm.
  • archivo YAML – Información de formato para configurar el chart.

A continuación, siga los pasos siguientes para instalar y configurar su chart:

  • Configurar imagen y pull

Abra el archivo values.YAML. Aquí busque el nodo de la imagen. Luego, puede configurarlo como desee. Los valores posibles son IfNotPresent, Always, Latest. Puede encontrar el conjunto completo de valores en la documentación oficial.

  • Anular el nombre del chart

Este paso es opcional, por lo que puede omitirlo si lo desea:
override

  • Nombre del servicio

Abra el archivo values.YAML y localice el serviceName. Luego, añada el nombre deseado. Es bueno tener un nombre preparado antes de instalar el chart:
service_name

  • Instalar el chart

Finalmente, para instalar el chart ejecute el siguiente comando:

Le aconsejamos que explore detenidamente todas las opciones presentes para configurar su chart antes de desplegarlo en el clúster.

Por qué a los desarrolladores les encanta Helm

Helm está ganando popularidad entre los desarrolladores y especialistas en DevOps que deben levantar y bajar los despliegues ocasionalmente. Estos son algunos de los principales beneficios de Helm:

  1. Helm simplifica el proceso de despliegue. No aporta nada nuevo que aprender, sino que hace que los despliegues YAML existentes sean fácilmente configurables por el usuario.

  2. En lugar de cambiar la configuración con frecuencia, como el número de clústeres o puertos, Helm la hace fácilmente configurable. Todo lo que el usuario tiene que hacer es actualizar los valores en el archivo values.YAML .

  3. Helm permite compartir la aplicación con otros usuarios empaquetándola en los repositorios.

Conclusión

En este tutorial, repasamos cómo configurar el gestor de paquetes Helm desde cero en Windows. Analizamos diferentes conceptos clave que deben entenderse claramente para aprovechar el potencial de Helm. También vimos diferentes funcionalidades disponibles dentro de los repositorios explorados de Helm. Ahora debería sentirse cómodo con Helm e implementarlo en su próximo proyecto o despliegue de Kubernetes.

Para aumentar aún más sus conocimientos sobre Kubernetes y sus funcionalidades, puede echar un vistazo a más tutoriales de nuestro blog:

¡Feliz computación!

author

Pranay Kapgate

Autor · CloudSigma

Preslav Dobrev es diseñador creativo en CloudSigma, centrado en una identidad empresarial coherente mediante el uso de canales de marketing tradicionales e innovadores. Es experto en fusionar la visión artística con el marketing estratégico para crear narrativas de marca impactantes.

Comentarios

Aún no hay comentarios. Sea el primero.