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 addehelm pullbuscam 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.