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

Infraestrutura TI

Como versionar sua infraestrutura com Terraform e GitLab

Deixando um pouco o assunto sobre Corona Vírus de lado, chegamos ao penúltimo post da nossa série de postagens sobre Terraform. Aqui iremos falar sobre como versionar sua infraestrutura utilizando

DevOps

Criando um Container do Docker (Sem o Docker!)

Aprenda na prática como o Docker gerencia seus containers. O intuito deste post é mostrar, na prática como o Docker gerencia seus containers. E qual jeito seria melhor de demonstrar o

Cloud

Maximize a eficiência da sua infraestrutura com o novo recurso de importação do Terraform

O Terraform pode importar recursos de infraestrutura existentes. Essa funcionalidade permite colocar recursos existentes sob o gerenciamento do Terraform. Isso é muito útil quando estamos iniciando no uso do terraform