helmcharts

Helm charts: apache prueba

Este repositorio tiene el chart para instalar un apache de prueba en un cluster de K8s, el objetivo de este ejercicio se realizó para practicar la creación de un Chart propio. El deployment a usar es el mismo de este ejercicio: https://github.com/ajmezav/Cronjob-with-kubectl—restart-deployment-apache/blob/main/deployment_apache.yaml . Los pasos que se siguieron fueron los siguientes:

  helm create apache_prueba 

, al hacer esto se creará la siguiente estructura:

image

Para este ejemplo solo dejaremos los siguientes archivos:

image

;Donde Chart.yaml tiene el versionamiento y descripción de el Chart personalizado, el archivo values.yaml contiene los valores que seran leídos como parametros en los templates y que el usuario final puede modificar al instalar el Chart , la carpeta templates contiene los manifiestos que desplegará el chart en este caso es un deployment.

helm package apache_prueba

esto básicamente comprimirá toda la estructura que contiene el repositorio Helm (Chart, values,templates ,etc)

helm repo index .

image

Instalar el Chart:

 helm repo add apache https://ajmezav.github.io/helmcharts/
 helm repo update
 helm search repo apache
 helm install --dry-run myapache apache/apache_prueba
helm install myapache apache/apache_prueba

Hacer actualización del chart instalado

Para actualizar el Chart se debe crear de nuevo el repo o comprimir con “helm package” y crear el nuevo index , aparte de cambiar el versionamiento en el Chart.yaml y publicar los cambios en Git , por último se procede a actualizar la instalación del Chart:

helm repo update
helm upgrade myapache apache/apache_prueba

Valores parametrizables en el Chart:

Se puede cambiar la cantidad de réplicas de Pods a desplegar con este chart:

helm install  myapache apache/apache_prueba --set replica_pod=2

Para ver qué opciones se pueden configurar en un chart, use:

helm show values apache/apache_prueba

Uninstall Chart

helm uninstall myapache

Listar y remover Repos de Helm

helm repo list
helm repo remove apache

Ref: https://helm.sh/es/docs/intro/using_helm/