HeroManager
roda em HeroCtl
Produto irmão da casa rodando no mesmo cluster do site institucional. Comer a própria comida, sem cerimônia.
HeroManager é um SaaS de gestão de equipes do mesmo grupo que mantém o HeroCtl. Em vez de hospedar o produto na Heroku ou Render como qualquer startup faria no dia 1, ele virou job no cluster do próprio orquestrador desde o lançamento. O job hero-manager roda 2 réplicas do app web Node.js, 1 banco Postgres como serviço interno do cluster e 3 contêineres auxiliares (worker de filas, cron, gerador de relatórios). 6 meses em produção, zero downtime documentado, deploy completo em 30 segundos. O custo cabe em uma linha de fatura mensal: o mesmo cluster de R$200 que serve mais 4 sites.
O que existia antes
Antes do HeroCtl, o protótipo do HeroManager rodou 2 meses na Heroku em plano Standard 1X — R$680/mês para 1 dyno + Postgres mini. Cada deploy levava 4 minutos e o build às vezes estourava memória. Migrar pro cluster próprio aconteceu na semana em que o HeroCtl entrou em produção: foi o primeiro job real do cluster, antes mesmo do site institucional. A migração levou 1 manifesto de 40 linhas e 1 tarde para subir o Postgres com volume persistente.
No cluster, hoje
Lista dos serviços que sustentam HeroManager no plano de controle replicado.
Números medidos em produção
Antes versus depois
Critérios que importaram pra HeroManager, lado a lado.
| Critério | Antes | Depois |
|---|---|---|
| Custo mensal | R$680 (Heroku Standard 1X + Postgres) | Compartilha cluster R$200 |
| Tempo de deploy | 4 min | ~30s |
| Downtime em deploy | 5-10s | Zero |
| Banco gerenciado | Postgres mini Heroku | Postgres como job do cluster |
| Lock-in | Alto — buildpacks + add-ons | Manifesto portátil |
| Suporte em português | Não | Sim, mesma equipe |
O que ficou aprendido
- [01]Rolling deploy em ~30s removeu a aba de "manutenção" do roadmap — sobe versão durante o expediente sem reclamação.
- [02]Postgres como job do cluster (com volume persistente) substituiu add-on gerenciado sem dor; backup automático para storage S3-compatible roda como tarefa cron.
- [03]Monitoramento veio embutido — não precisou subir Prometheus + Grafana + Loki. Os gráficos do painel administrativo já entregam o que a equipe olhava no Heroku Metrics.
- [04]O custo marginal de subir o produto no cluster próprio foi efetivamente zero, porque a infra já existia para o site institucional. A linha "hospedagem" sumiu da planilha.
- [05]A operação ficou mais previsível: mesma ferramenta para o site público, para o produto e para os clientes externos.
A linha de custo
R$680/mês liberados — passaram a financiar mais 1 servidor de redundância do cluster.
“Migramos pelo custo, ficamos pela operação simples. Hoje subir versão é menos cerimônia que abrir um pull request.”
— Equipe HeroManager
O cluster por trás
A mesma infraestrutura que serve HeroManager também serve outros 4 sites e produtos.
Mesmo cluster. Próximo workload.
Plano Community gratuito permanente, sem feature gates. Mesma infraestrutura que sustenta HeroManager hoje em produção.