Introducción a las Listas de Helm de Kubernetes

Introducción a las Listas de Helm de Kubernetes

  • ITOps y DevOps
6 min de lectura Actualizado Apr 10, 2020

Puntos clave: Kubernetes Helm están un gestor de paquetes que simplifica el despliegue de aplicaciones mediante gráficos de Helm reutilizables, que agrupan los recursos necesarios en paquetes individuales. Esta herramienta mejora la productividad y reduce la complejidad de desplegar aplicaciones en Kubernetes.

  • Helm permite a los desarrolladores desplegar aplicaciones con un solo comando.
  • Simplifica la gestión de aplicaciones y entornos Kubernetes.

En esta entrada son vamos a hablar de una herramienta utilizada con Kubernetes llamada Helm. Como parte de nuestra Guía de Kubernetes en varias partes , este artículo será:

  • Explora cartas de Helm
  • Determina cuándo y por qué utilizar los Cartas de Timón y Cartas de Timón
  • Proporciona instrucciones para empezar

Para explorar otros temas de K8s, utiliza el menú de navegación en el lado derecho.

¿Qué es Helm?

En términos sencillos, Helm están un gestor de paquetes para Kubernetes. Helm están el equivalente en K8s de yum o apt. Helm despliega gráficos, que te puede considerar como una aplicación empaquetada. están una colección de todos tus recursos de aplicación versionados y preconfigurados que pueden desplegarse como una sola unidad. te entonces pueden desplegar otra versión del gráfico con un conjunto diferente de configuraciones.

Helm ayuda de tres maneras clave:

  • Mejora la productividad
  • Reduce la complejidad de los despliegues de microservicios
  • Permite la adaptación de aplicaciones nativas en la nube

¿Por qué utilizar Helm?

Escribir y mantener manifiestos YAML de Kubernetes para todos los objetos Kubernetes requeridos puede ser una tarea que consume mucho tiempo y es tediosa. Para los despliegues más sencillos, te necesitarás al menos 3 manifiestos YAML con valores duplicados y codificados de forma fija. Helm simplifica este proceso y crea un único paquete que puede anunciarse a tu clúster.

Helm están una aplicación cliente/servidor y, hasta hace poco, dependía de que Tiller (el servidor Helm) se desplegara en tu clúster. Esto se instala al instalar/inicializar Helm en tu máquina cliente. Tiller simplemente recibe las solicitudes del cliente e instala el paquete en tu clúster. Helm puede compararse fácilmente con el RPM de los paquetes DEB en Linux, proporcionando una forma cómoda para que los desarrolladores empaqueten y envíen una aplicación a sus usuarios finales para su instalación.

Una vez que te Helm instalado y configurado (detalles abajo), te son poder instala aplicaciones listas para producción de proveedores de software, como MongoDB, MySQL y otros, en tu clúster Kubernetes con un comando de instala de Helm muy sencillo . Además, eliminar las aplicaciones instaladas en tu clúster están tan fácil como instalarlas.

¿Qué son los cartas de Helm?

Los Helm Charts son simplemente manifiestos YAML de Kubernetes combinados en un único paquete que puede anunciarse a tus clústeres Kubernetes. Una vez empaquetado, instalar un Helm Chart en tu clúster están tan sencillo como ejecutar una sola instalación de Helm, lo que simplifica mucho el despliegue de aplicaciones contenedorizadas.

Descripción de Helm

Helm tiene dos partes:

  • El cliente (CLI), que vive en tu estación de trabajo local.
  • El servidor (Tiller), que vive en el clúster Kubernetes para ejecutar lo que se necesita.

La idea están que te utiliza la CLI para impulsar los recursos te necesitan y el tiller Haz asegurará que ese estado están de hecho el caso creando/actualizando/eliminando recursos del gráfico. Para entender completamente el timón, hay 3 conceptos con los que son debemos Obtén familiarizados:

  • Chart: Un paquete de recursos Kubernetes preconfigurados.
  • Release: Una instancia específica de un gráfico que se ha desplegado en el clúster usando Helm.
  • Repositorio: Un grupo de gráficos publicados que pueden estar disponibles para otros.

Beneficios de Helm

A los desarrolladores les gusta Helm por muchas razones:

Aumenta la productividad

Los ingenieros de software son buenos escribiendo software, y su tiempo está mejor empleado haciendo precisamente eso. Usar Helm permite al software desplegar sus entornos de prueba con solo pulsar un botón.

Un ejemplo de esto podría ser que, para probar una nueva funcionalidad, un ingeniero necesita una base de datos SQL. En lugar de pasar por el proceso de instalación local del software, creando las bases de datos y tablas necesarias, el ingeniero puede simplemente ejecutar un único comando de Instalación de Helm para Crea y preparar la base de datos lista para la prueba.

Reduce la duplicación y la complejidad

Una vez que el gráfico están construido una vez, puede usarse una y otra vez y por cualquiera. El hecho de que te pueda utiliza el mismo gráfico para cualquier entorno reduce la complejidad de crear algo para desarrollo, prueba y producción. te simplemente ajustar te gráfico y Haz asegurarse de que están listo para aplicarse a cualquier entorno. Y te Obtén el beneficio de usar un gráfico listo para producción en desarrollo.

Suaviza la curva de aprendizaje del K8S

No es ningún secreto que la curva de aprendizaje para Kubernetes y contenedores está larga para el desarrollador medio. Helm simplifica esa curva de aprendizaje: los desarrolladores no requieren un entendimiento completo y detallado de la función de cada objeto Kubernetes para Comienza a desarrollar y desplegar aplicaciones contenedores.

Helm se integra fácilmente en Pipelines CI/CD y permite a los ingenieros de software centrarse en escribir código, no en desplegar aplicaciones.

Simplifica los despliegues

Helm Charts Haz fácil establecer valores predeterminados sobrescribibles en el archivo values.yaml , permitiendo a proveedores de software o administradores de gráficos Define una configuración base. Los desarrolladores y usuarios de gráficos pueden anular estos ajustes al instalar su gráfico para adaptarse a sus necesidades. Si la instalación predeterminada están necesaria, entonces no se están necesario anular la escritura.

Desplegar aplicaciones en Kubernetes no está un proceso sencillo, ya que diferentes objetos están estrechamente acoplados. Esto requería conocimientos específicos de estos objetos y de cuáles son sus funciones para poder desplegarlos con éxito. Helm elimina la complejidad de eso haciendo gran parte del trabajo duro por ti.

Descripción de una carta de timón

Helm tiene cierta estructura al te Crea un nuevo gráfico. Para Crea, ejecuta "helm Crea TU-CHART-NAME". Una vez que este están creado, la estructura de directorios debería ser así:

    YOUR-CHART-NAME/
 |
 |- .helmignore 
 | 
 |- Chart.yaml 
 | 
 |- values.yaml 
 | 
 |- charts/ 
 |
 |- templates/
  • .helmignore: Esto contiene todos los archivos para ignorar al empaquetar el gráfico. Similar a . gitignore, si te son familiarizado con git.
  • Chart.yaml: Aquí están donde te poner toda la información sobre el gráfico te son el embalaje. Por ejemplo, tu número de versión, etc. Aquí están donde te pondrá todos esos detalles.
  • Values.yaml: Aquí están donde te Define todos los valores te quieres inyectar en tus plantillas. Si te son familiarizado con terraform, piensa en esto como un archivo de helms variable.tf.
  • Gráficos: Aquí están donde te almacena otros gráficos de los que depende tu gráfico. te puede estar llamando a otro gráfico que tu gráfico necesita para funcionar correctamente.
  • Plantillas: Esta carpeta están donde te poner el manifiesto real te son desplegar con el gráfico. Por ejemplo, te puede estar desplegando un despliegue nginx que necesita un servicio, un configmap y secretos. te tendrá tu deployment.yaml, service.yaml, config.yaml y secrets.yaml todos en el director de plantillas. Todos Obtén sus valores de values.yaml mencionado arriba.

Instalación de Helm y configuración de Helm Charts

¿Listo para utilizar Helm? Instalar y configurar Helm para tu clúster K8S está un proceso muy rápido y sencillo: son varias versiones de Helm que se pueden instalar (v1/v2 y más recientemente v3), todas ellas configurables según las necesidades de tu organización. Consulta la página de inicio para las instrucciones sobre cómo descargar e instalar Helm.

Comenzar tu primer gráfico de Helm está tan sencillo como instalar algunos gráficos desde el repositorio estable, que está disponible en GitHub. El repositorio estable de Helm está un conjunto de aplicaciones seleccionadas listas para ser implementadas en tu clúster.

Los usuarios de Helm pueden escribir sus propios gráficos o obtener cartas del repositorio estable:

Si te quieres escribir tus propios Helm Charts para tus aplicaciones, Helm ofrece una sencilla Guía para Desarrolladores para empezar.

Helm simplifica el despliegue de software

En resumen, Helm elimina mucha de la complejidad de desplegar software y tus propias aplicaciones en Kubernetes. Se puede instalar en cuestión de minutos y te puedes estar desplegando gráficos desde el repositorio estable en muy poco tiempo. Escribir tus propios gráficos también están un proceso sencillo, aunque requiere comprensión de los objetos de Kubernetes. Helm puede empoderar a tus desarrolladores para trabajar de forma más eficiente proporcionándoles las herramientas necesarias para probar su código localmente.

Recursos adicionales

Para más información sobre Kubernetes, explora estos recursos:

Estas publicaciones son mías y no representan necesariamente la posición, estrategias u opinión de BMC.

Más de ITOps y DevOps

Suscríbete al Informe

Al registrarse para esta oferta te son confirmar que te leído y aceptado la Política de Privacidad de BMC.

Gracias te

Tú te has suscrito a The Brief
El Brief abarca la orquestación de mainframe y empresa—BMC AMI y Control-M—y la investigación de analistas, despliegues de clientes y eventos en ambas áreas.