Descubra como o Helm facilita a instalação de aplicações no Kubernetes

Descubra como o Helm facilita a instalação de aplicações no Kubernetes

O que é?

O Helm é um gerenciador de pacotes para o Kubernetes que permite que os desenvolvedores e operadores configurem e implantem mais facilmente aplicativos nos clusters do Kubernetes. Ele descreve a estrutura de uma aplicação através dos Helm Charts, facilitando a instalação e o gerenciamento de pacotes e suas dependências. O Helm é semelhante aos gerenciadores de pacotes de sistemas operacionais yum, apt, snap, etc. A ideia do Helm é basicamente a mesma, facilitar a instalação de aplicações para Kubernetes.

Quais as vantagens?

Os Charts são fáceis de criar, versionar, compartilhar e publicar. Os Charts do Helm descrevem até mesmo a mais complexa aplicação, estabelecem repetibilidade na instalação de apps, e servem como um único ponto de autoridade.

Por exemplo, suponhamos que você precise instalar o Prometheus em seu cluster k8s. Você precisa que ele seja persistente, que seja configurado exclusivamente por uma configmap e ser exposto para a sua equipe através de uma URL.

Para esses requisitos expostos, já concluímos que precisaremos desses objetos do Kubernetes:

  • um deployment para publicar o server;

  • um service para fazer o acesso aos pods da aplicação;

  • uma configmap para manter e gerenciar as configurações;

  • um pvc ( PersistentVolumeClaim) para permitir que os dados sejam persistidos;

  • um ingress para expor o server por uma URL;

Se fossemos realizar uma instalação simples do prometheus, teríamos que criar ao menos esses 5 objetos do Kubernetes. Com o helm conseguímos configurar tudo isso com a execução de um comando. O helm possui um repositório que conta com inúmeros charts¹ disponibilizados pela comunidade. Eles podem ser utilizados para instalar diversas aplicações no Kubernetes. Por sorte o Prometheus conta com um chart que permitirá que façamos essa instalação com apenas um comando.

Mas para isso, temos que ter o helm instalado em nosso server, então vamos lá fazer isso.

Através do gerenciador de pacotes Apt (Debian/Ubuntu)

curl https://baltocdn.com/helm/signing.asc | sudo apt-key add - sudo apt-get install apt-transport-https --yes echo "deb https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list sudo apt-get update sudo apt-get install helm

Agora com o helm já instalado, podemos prosseguir com a instalação do prometheus;

Adicione o repositório

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts

Instale o chart

helm install my-prometheus prometheus-community/prometheus –version 15.8.5

instalamos o Prometheus, porém ainda não atendemos todos os requisitos que definimos anteriormente, pois a instalação padrão não expõe o server por uma URL. Para tal precisamos configurar o chart. Faremos isso através do arquivo prometheus-config.yaml

server:
ingress:
enabled: true
hosts:
prometheus.examplo.com

Atualizaremos nosso pacote passando o arquivo de configuração que acabamos de criar:

helm upgrade my-prometheus -f prometheus-config.yaml prometheus-community/prometheus

Agora podemos acessar o nosso prometheus através da URL prometheus.exemplo.com

Em resumo, o Helm se tornou o gerenciador de pacotes do Kubernetes e experimentou um crescimento constante ao resolver os principais problemas de desenvolvimento de aplicações na plataforma de infraestrutura.

Líder em Treinamento e serviços de Consultoria, Suporte e Implantação para o mundo open source. Conheça nossas soluções:

CURSOSCONSULTORIA

Anterior Descubra como o Rundeck pode otimizar suas tarefas de sysadmin
Próxima Crie sua primeira aplicação em Python: Guia passo a passo

About author

João Pedro Santos
João Pedro Santos 3 posts

Linux Sysadmin que ama desafios, com experiência em troubleshooting em ambiente opensource e aplicações web. Focado em administração de infraestrutura em Nuvem, Software de código aberto, Monitoramento e Devops. Entusiasta da tecnologia e consultor de T.I. Linkedin: https://www.linkedin.com/in/joaopmdds/

View all posts by this author →

Você pode gostar também

DevOps

Curso Python para Integração API e DevOps: Novidades e Benefícios

Prez@dos, É com enorme satisfação que anuncio: o curso Python for Sysadmin está de cara nova. As bases do antigo curso foram mantidas, não se preocupe, mas como tudo na

Notícias

Seja o melhor aluno e garanta sua contratação na 4Linux

A 4Linux escolherá 20 pessoas para realizarem gratuitamente seus cursos Devops e garante contratar o melhor aluno, venha para o caça talentos Devops. Quem pode participar? Poderá participar todas as

Infraestrutura TI

A lenda do arquivo perdido. Domine a busca de arquivos no Linux com o comando find!

Você já se perguntou como os especialistas em Linux conseguem encontrar arquivos em um emaranhado de diretórios? Saiba que há um comando mágico chamado find que lhes concede esse poder.