Skip to content
Latchkey

O que e o Helm? O gerenciador de pacotes do Kubernetes

O Helm e o gerenciador de pacotes do Kubernetes - ele instala, atualiza e faz rollback de aplicacoes empacotadas como charts, da forma como o apt ou o npm gerenciam pacotes.

O Helm esta para o Kubernetes assim como o apt esta para o Debian: uma ferramenta para instalar e gerenciar aplicacoes empacotadas. Os pacotes sao charts; o Helm renderiza um chart com seus values, aplica o resultado ao cluster e o rastreia como um release versionado que voce pode atualizar ou reverter como uma unidade.

Helm vs um Helm chart

O Helm e a ferramenta (a CLI helm e sua logica); um chart e um pacote que ele opera. As pessoas dizem "Helm" de forma solta para ambos, mas a distincao importa: voce roda o Helm para instalar um chart.

Releases e lifecycle

Instalar um chart cria um release nomeado. O Helm registra cada revisao, entao helm upgrade, helm rollback e helm history dao controle total de lifecycle sobre o app inteiro de uma vez, e nao por manifest.

Templating com values

O Helm renderiza os templates do chart com um values file, produzindo manifests concretos. O mesmo chart serve muitos ambientes ao fornecer values diferentes - a chave para uma promocao limpa entre ambientes.

Repositorios do Helm

  • Charts sao compartilhados via chart repositories (e OCI registries).
  • helm repo add e helm pull buscam charts publicados.
  • Existem charts publicos para muitos apps comuns (bancos de dados, ingress, monitoring).

Helm na CI/CD

Pipelines de CD comumente rodam helm upgrade --install com a nova tag de imagem, ou fazem commit de mudancas de chart para um controller de GitOps aplicar. De qualquer forma, o Helm empacota o deploy em uma unica unidade versionada e passivel de rollback.

Principais conclusões

  • O Helm e o gerenciador de pacotes; os charts sao os pacotes que ele instala.
  • Releases dao install, upgrade e rollback versionados de um app inteiro.
  • Um chart serve muitos ambientes via diferentes values files.

Guias relacionados