giropops-senhas-chart

giropops-senhas Helm Chart

Helm Chart para implantação da aplicação Giropops Senhas no Kubernetes, desenvolvido como parte do curso Descomplicando Kubernetes da LinuxTips.

A aplicação original pode ser encontrada em: badtuxx/giropops-senhas


Visão Geral

Este chart implanta dois componentes:

Componente Imagem Réplicas padrão Porta(s)
giropops-senhas zenardi/giropops-senhas:4.0 3 5000, 8088
redis redis 1 6379

Recursos criados


Pré-requisitos


Instalação

Adicionando o repositório Helm

helm repo add giropops-senhas https://zenardi.github.io/giropops-senhas-chart/
helm repo update

Instalando o chart

helm install giropops-senhas giropops-senhas/giropops-senhas

Com um namespace dedicado:

helm install giropops-senhas giropops-senhas/giropops-senhas \
  --namespace giropops \
  --create-namespace

Instalando a partir do código-fonte

git clone https://github.com/zenardi/giropops-senhas-chart.git
cd giropops-senhas-chart

helm install giropops-senhas ./charts

Configuração

Todos os valores configuráveis estão em charts/values.yaml. Abaixo estão os principais parâmetros.

Deployments

Parâmetro Descrição Padrão
deployments.giropops-senhas.image Imagem da aplicação zenardi/giropops-senhas:4.0
deployments.giropops-senhas.replicas Número de réplicas 3
deployments.giropops-senhas.resources.requests.memory Memória mínima 128Mi
deployments.giropops-senhas.resources.requests.cpu CPU mínima 250m
deployments.giropops-senhas.resources.limits.memory Limite de memória 256Mi
deployments.giropops-senhas.resources.limits.cpu Limite de CPU 500m
deployments.redis.image Imagem do Redis redis
deployments.redis.replicas Número de réplicas do Redis 1

Services

Parâmetro Descrição Padrão
services.giropops-senhas.ports[0].serviceType Tipo do serviço da aplicação NodePort
services.giropops-senhas.ports[0].NodePort NodePort exposto 32500
services.giropops-senhas.ports[1].serviceType Tipo do serviço de métricas ClusterIP
services.redis.ports[0].serviceType Tipo do serviço Redis ClusterIP

Observabilidade

Parâmetro Descrição Padrão
observability.giropops-senhas.logging Habilita logging "true"
observability.giropops-senhas.metrics.enabled Habilita métricas Prometheus "true"
observability.giropops-senhas.metrics.path Path das métricas /metrics

Banco de dados (ConfigMap)

Parâmetro Descrição Padrão
databases.giropops-senhas.mysql.host Host do MySQL mysql.svc.cluster.local
databases.giropops-senhas.mysql.port Porta do MySQL 3306
databases.giropops-senhas.mysql.name Nome do banco MyDB

Sobrescrevendo valores na instalação

helm install giropops-senhas ./charts \
  --set deployments.giropops-senhas.replicas=5 \
  --set deployments.giropops-senhas.image=zenardi/giropops-senhas:5.0

Ou via arquivo de valores customizados:

helm install giropops-senhas ./charts -f meus-valores.yaml

Acesso à aplicação

Após a instalação, a aplicação estará acessível via NodePort na porta 32500:

# Obtendo o IP de um nó do cluster
kubectl get nodes -o wide

# Acessando a aplicação
curl http://<NODE_IP>:32500

As métricas Prometheus ficam disponíveis internamente na porta 8088 no path /metrics.


Atualização

helm upgrade giropops-senhas ./charts

Remoção

helm uninstall giropops-senhas

Estrutura do Chart

charts/
├── Chart.yaml                       # Metadados do chart (nome, versão, descrição)
├── values.yaml                      # Valores padrão configuráveis
└── templates/
    ├── _helpers.tpl                 # Helpers reutilizáveis (labels, ports, resources, configmaps)
    ├── deployments.yaml             # Template de Deployments (gerado dinamicamente via range)
    ├── services.yaml                # Template de Services
    ├── databases-configmap.yaml     # ConfigMap de configuração de banco de dados
    └── observability-configmap.yaml # ConfigMap de configuração de observabilidade

Versões

Chart App Data
0.1.0 1.0 2026-03-21

Referências