Como instalar o Helm no Kubernetes

The package manager for Kubernetes

O Helm é o gerenciador de pacotes do Kubernetes. É muito comum construir uma certa quantidade de arquivos .yaml e instala-los no Kubernetes. Acontece que gerenciar isso nem sempre é algo tranquilo. Com esse artigo você vai aprender como instalar o Helm no seu ambiente Kubernetes para o seu uso no dia-a-dia. Isso por que é natual fazer atualizações e vários desses arquivos ao mesmo tempo. Uma solução capaz de lidar com instalação em pacotes, atualização de versões e remoções em bloco pode ser um grande diferencial.

Além de tudo isso vale considerar que há outras abordagens podem ser realizadas em substituição do uso dos helm packages, como utilizar o argo-cd apontando diretamente para um repositório do git, mas não abordaremos alternativas nesse artigo. Mas, soluções como essas devem sempre ser consideradas. Os pacotes instalados no Kubernetes através do Helm são chamadas de Releases.

Em seguida um site passou a ser uma referência para o tema, o ArtifactHub.io. Esse é um agregador de repositórios com uma grande quantidade de pacotes disponíveis que facilitam significativamente o início das atividades no Kubernetes.

Ao mesmo tempo há aqui no blog um artigo que fala sobre a instalação de vários pacotes no Kubernetes com o Helm: https://www.anselme.com.br/2022/09/06/10-ferramentas-mais-utilizadas-no-kubernetes/.

Instalação de pacotes Helm

Afinal é bastante simples instalar a linha de comando do Helm em seu ambiente onde acessa o kubernetes. O link https://helm.sh/docs/intro/install/ é a referência oficial sobre o tema. Lá há orientações para instalar manualmente baixando o tar.gz; instalando com um arquivo .sh; com o home brew para ambientes Mac; em Windows com o Chocolatey ou Scoop; apt, dnf, yum, snap, pkg em ambientes Linux.

Por isso podemos notar que são muitas opções. Veja como instalar por scripts de bash:

# Download do helm
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3

# O arquivo baixado passa a ter permissão de execução
chmod 700 get_helm.sh

# Execução da instalação do Helm através do Script
./get_helm.sh

# Verificação da versão do Helm
helm version

Como manter os pacotes Helm

Além disso, após navegar no site ArtifactHub.io é possível encontrar milhares de pacotes helm prontos para instalação. Ao abrir qualquer link de pacote é possível encontrar uma documentação com as várias versões e como instalar. Essa é uma tarefa bastante simples. As principais linhas de comando relacionadas podem ser encontradas a seguir:

# Comando para listar os pacotes helm instalados
helm list

# Comando para instalar um pacote helm
# helm install <release> <pacote-helm> [-n <namespace>] [-- outros parametros]
helm install anselme-cd argo/argo-cd -n argo-namespace --version 5.4.0 

# Comando para analisar o pacote antes de executar
helm template mysql > template.yaml
cat template.yaml

# Comando para desinstalar o release helm instalado
#helm uinstall <release>
helm uinstall anselme-cd

Como lidar com os repositórios Helm

Por fim, como em qualquer gerenciador de pacotes há como configurar os repositórios que ele pode referenciar. Com o comando helm repo é possível fazer toda a manipulação dos repositórios. Normalmente o comando de instalação de um pacote helm vem acompanhado da linha de comando para adição dos repositórios.

# Comando para listar todos os repositórios instalados
helm repo list

# Comando para adicionar um novo repositório ao helm
# helm repo add <apelido> <url-do-repositorio>
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts


Thiago Anselme
Thiago Anselme - Gerente de TI - Arquiteto de Soluções

Ele atua/atuou como Dev Full Stack C# .NET / Angular / Kubernetes e afins. Ele possui certificações Microsoft MCTS (6x), MCPD em Web, ITIL v3 e CKAD (Kubernetes) . Thiago é apaixonado por tecnologia, entusiasta de TI desde a infância bem como amante de aprendizado contínuo.

Deixe um comentário