↓Pular para o conteúdo principal
  1. Projetos/
PROJETO

Plataforma de Observabilidade Docker com Prometheus, Grafana, Loki e Traefik

Arquitetura própria para coletar métricas de host e containers, centralizar logs e publicar Grafana com TLS sem expor diretamente Prometheus, Loki e coletores.

·2 minutos

Objetivo #

Criar uma base de observabilidade para workloads Docker sem tornar Kubernetes um pré-requisito.

A implementação recuperada usa Docker Compose e separa quatro responsabilidades:

1
2
3
4
5
6
Métricas do host       → node-exporter
Métricas de containers → cAdvisor
Métricas / histórico   → Prometheus
Logs                    → Promtail → Loki
Visualização            → Grafana
Publicação              → Traefik / TLS

Arquitetura validada #

Os coletores e backends de telemetria ficam em rede Docker interna. Prometheus, Loki, cAdvisor e node-exporter não precisam publicar suas portas diretamente no host.

Grafana participa da rede interna e da rede do reverse proxy, sendo publicado por Traefik em HTTPS.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
Internet
   ↓
Traefik :443
   ↓
Grafana :3000
   ├── Prometheus :9090
   └── Loki :3100

Host
   ├── node-exporter :9100
   ├── cAdvisor :8080
   └── Promtail → Loki

Persistência e retenção #

Na implementação de referência:

  • Prometheus usa retenção explícita de 15 dias e volume persistente;
  • Loki persiste dados em volume local;
  • Grafana persiste sua base em /var/lib/grafana;
  • a configuração do Prometheus é montada read-only.

O objetivo é evitar que reiniciar containers apague justamente o histórico necessário para investigar incidentes.

Segurança operacional #

A arquitetura evita publicar diretamente as portas internas de observabilidade e concentra o acesso humano no Grafana atrás de TLS.

Também registra pontos que precisam ser tratados como sensíveis:

  • cAdvisor com visão privilegiada do host;
  • Promtail com acesso a logs e, na implementação de referência, ao Docker socket;
  • credencial administrativa do Grafana parametrizada;
  • signup do Grafana desabilitado.

Evolução #

O projeto pode ser expandido para vários hosts mantendo coletores locais e backends centrais, adicionando service discovery, geração de targets, alertas e OpenTelemetry conforme a necessidade.

A implementação detalhada recuperada comprova o padrão em um host Docker. A página não afirma implantação em centenas de VPS.

Conteúdo relacionado #

O artigo técnico “Como pensar observabilidade para uma frota de VPS Docker sem partir direto para Kubernetes” explica as decisões e os trade-offs desse desenho.

Tecnologias #

Docker Compose · Prometheus · node-exporter · cAdvisor · Loki · Promtail · Grafana · Traefik

TEM UM CENÁRIO PARECIDO?

Me chama.

Manda o contexto, os sintomas e o que já foi testado. Bora organizar as evidências antes de sair mexendo.

Falar com Castro →
Sem enrolação. Com evidência.