refactor: simplificar docker-compose a stack esencial
Simplificación del stack de observabilidad manteniendo solo los servicios esenciales: Servicios activos: - Alloy (puertos mínimos: 12345, 9999, 3101) - Prometheus (métricas) - Loki (logs) - Grafana (visualización) Servicios comentados: - Tempo (trazas distribuidas) - Promtail (reemplazado por Alloy) - Node Exporter (métricas del host) - cAdvisor (métricas de contenedores) Cambios: - Reducción de puertos de Alloy (eliminados puertos de trazas: OTLP, Jaeger, Zipkin) - Actualización de dependencias de Alloy y Grafana - Limpieza de volúmenes no utilizados (tempo_data, promtail_positions) - Grafana ahora solo depende de Prometheus y Loki El stack simplificado mantiene capacidad completa de métricas y logs con menor complejidad operacional.
This commit is contained in:
+63
-77
@@ -33,41 +33,29 @@ services:
|
||||
- monitoring
|
||||
restart: always
|
||||
|
||||
# Tempo para trazas - Solo almacenamiento (Alloy maneja la recolección)
|
||||
tempo:
|
||||
image: grafana/tempo:latest
|
||||
container_name: tempo
|
||||
ports:
|
||||
- "${TEMPO_PORT:-3200}:3200" # Solo puerto de consulta, sin endpoints de recepción
|
||||
volumes:
|
||||
- ./config/tempo/tempo.yaml:/etc/tempo/tempo.yaml
|
||||
- tempo_data:/var/tempo
|
||||
command:
|
||||
- -config.file=/etc/tempo/tempo.yaml
|
||||
networks:
|
||||
- monitoring
|
||||
restart: always
|
||||
# # Tempo para trazas - Solo almacenamiento (Alloy maneja la recolección)
|
||||
# tempo:
|
||||
# image: grafana/tempo:latest
|
||||
# container_name: tempo
|
||||
# ports:
|
||||
# - "${TEMPO_PORT:-3200}:3200" # Solo puerto de consulta, sin endpoints de recepción
|
||||
# volumes:
|
||||
# - ./config/tempo/tempo.yaml:/etc/tempo/tempo.yaml
|
||||
# - tempo_data:/var/tempo
|
||||
# command:
|
||||
# - -config.file=/etc/tempo/tempo.yaml
|
||||
# networks:
|
||||
# - monitoring
|
||||
# restart: always
|
||||
|
||||
# Grafana Alloy para colección de datos - ÚNICA PUERTA DE ENTRADA
|
||||
# Grafana Alloy para colección de métricas y logs
|
||||
alloy:
|
||||
image: grafana/alloy:latest
|
||||
container_name: alloy
|
||||
ports:
|
||||
- "${ALLOY_UI_PORT:-12345}:12345" # Puerto para la UI de Alloy
|
||||
# Puertos para métricas
|
||||
- "${ALLOY_METRICS_PORT:-9999}:9999" # HTTP receiver para métricas externas
|
||||
# Puertos para logs
|
||||
- "${ALLOY_LOGS_HTTP_PORT:-3101}:3101" # HTTP receiver para logs externos
|
||||
- "${ALLOY_SYSLOG_PORT:-1514}:1514" # Syslog TCP receiver
|
||||
# Puertos para trazas - OpenTelemetry
|
||||
- "${ALLOY_OTLP_GRPC_PORT:-4317}:4317" # OTLP gRPC
|
||||
- "${ALLOY_OTLP_HTTP_PORT:-4318}:4318" # OTLP HTTP
|
||||
# Puertos para trazas - Jaeger compatibility
|
||||
- "${ALLOY_JAEGER_GRPC_PORT:-14250}:14250" # Jaeger gRPC
|
||||
- "${ALLOY_JAEGER_HTTP_PORT:-14268}:14268" # Jaeger HTTP
|
||||
- "${ALLOY_JAEGER_COMPACT_PORT:-6831}:6831/udp" # Jaeger compact thrift
|
||||
# Puertos para trazas - Zipkin compatibility
|
||||
- "${ALLOY_ZIPKIN_PORT:-9411}:9411" # Zipkin HTTP
|
||||
volumes:
|
||||
- ./config/alloy/alloy.river:/etc/alloy/config.river
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
@@ -89,7 +77,6 @@ services:
|
||||
depends_on:
|
||||
- prometheus
|
||||
- loki
|
||||
- tempo
|
||||
|
||||
# Grafana para visualización
|
||||
grafana:
|
||||
@@ -115,56 +102,55 @@ services:
|
||||
depends_on:
|
||||
- prometheus
|
||||
- loki
|
||||
- tempo
|
||||
|
||||
# Node Exporter para métricas del host
|
||||
node-exporter:
|
||||
image: prom/node-exporter:latest
|
||||
container_name: node-exporter
|
||||
ports:
|
||||
- "${NODE_EXPORTER_PORT:-9100}:9100"
|
||||
command:
|
||||
- '--path.rootfs=/host'
|
||||
volumes:
|
||||
- /proc:/host/proc:ro
|
||||
- /sys:/host/sys:ro
|
||||
- /:/host:ro
|
||||
networks:
|
||||
- monitoring
|
||||
restart: always
|
||||
# # Node Exporter para métricas del host
|
||||
# node-exporter:
|
||||
# image: prom/node-exporter:latest
|
||||
# container_name: node-exporter
|
||||
# ports:
|
||||
# - "${NODE_EXPORTER_PORT:-9100}:9100"
|
||||
# command:
|
||||
# - '--path.rootfs=/host'
|
||||
# volumes:
|
||||
# - /proc:/host/proc:ro
|
||||
# - /sys:/host/sys:ro
|
||||
# - /:/host:ro
|
||||
# networks:
|
||||
# - monitoring
|
||||
# restart: always
|
||||
|
||||
# cAdvisor para métricas detalladas de Docker
|
||||
cadvisor:
|
||||
image: gcr.io/cadvisor/cadvisor:latest
|
||||
container_name: cadvisor
|
||||
privileged: true
|
||||
ports:
|
||||
- "${CADVISOR_PORT:-8081}:8080"
|
||||
volumes:
|
||||
- /:/rootfs:ro
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- /sys:/sys:ro
|
||||
- /var/lib/docker/:/var/lib/docker:ro
|
||||
- /dev/disk/:/dev/disk:ro
|
||||
networks:
|
||||
- monitoring
|
||||
restart: always
|
||||
# # cAdvisor para métricas detalladas de Docker
|
||||
# cadvisor:
|
||||
# image: gcr.io/cadvisor/cadvisor:latest
|
||||
# container_name: cadvisor
|
||||
# privileged: true
|
||||
# ports:
|
||||
# - "${CADVISOR_PORT:-8081}:8080"
|
||||
# volumes:
|
||||
# - /:/rootfs:ro
|
||||
# - /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
# - /sys:/sys:ro
|
||||
# - /var/lib/docker/:/var/lib/docker:ro
|
||||
# - /dev/disk/:/dev/disk:ro
|
||||
# networks:
|
||||
# - monitoring
|
||||
# restart: always
|
||||
|
||||
# Promtail para exportar logs de todos los contenedores hacia Alloy
|
||||
promtail:
|
||||
image: grafana/promtail:latest
|
||||
container_name: promtail
|
||||
command: -config.file=/etc/promtail/promtail-config.yml
|
||||
volumes:
|
||||
- ./config/promtail/promtail-config.yml:/etc/promtail/promtail-config.yml:ro
|
||||
- promtail_positions:/var/lib/promtail
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- /var/lib/docker/containers:/var/lib/docker/containers:ro
|
||||
networks:
|
||||
- monitoring
|
||||
restart: always
|
||||
depends_on:
|
||||
- alloy
|
||||
# # Promtail para exportar logs de todos los contenedores hacia Alloy
|
||||
# promtail:
|
||||
# image: grafana/promtail:latest
|
||||
# container_name: promtail
|
||||
# command: -config.file=/etc/promtail/promtail-config.yml
|
||||
# volumes:
|
||||
# - ./config/promtail/promtail-config.yml:/etc/promtail/promtail-config.yml:ro
|
||||
# - promtail_positions:/var/lib/promtail
|
||||
# - /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
# - /var/lib/docker/containers:/var/lib/docker/containers:ro
|
||||
# networks:
|
||||
# - monitoring
|
||||
# restart: always
|
||||
# depends_on:
|
||||
# - alloy
|
||||
|
||||
networks:
|
||||
monitoring:
|
||||
@@ -174,7 +160,7 @@ networks:
|
||||
volumes:
|
||||
prometheus_data:
|
||||
loki_data:
|
||||
tempo_data:
|
||||
alloy_data:
|
||||
grafana_data:
|
||||
promtail_positions:
|
||||
# tempo_data:
|
||||
# promtail_positions:
|
||||
|
||||
Reference in New Issue
Block a user