Files
hobbs-iac/stacks/node-exporter/docker-compose.yml
jeremy 971fe8dda8 feat: standalone node-exporter + telegraf compose per node
Post-Swarm: node-exporter must run standalone with pid:host, since Swarm mode
blocked it and cross-node /proc namespaces contaminated swap metrics. Marks the
stacks/ definition superseded.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-11 11:19:04 -05:00

35 lines
1.0 KiB
YAML

# SUPERSEDED 2026-03-21: Do NOT deploy this as a Swarm stack.
# Swarm mode blocks pid: host, causing cross-node /proc namespace contamination
# where node-exporter reads wrong host's memory metrics.
# Use standalone Compose on each node instead:
# compose/hf-pdocker-01/node-exporter/docker-compose.yml
# compose/hf-pdocker-02/node-exporter/docker-compose.yml
# compose/bart/node-exporter/docker-compose.yml
services:
node-exporter:
image: prom/node-exporter:v1.7.0
hostname: "{{.Node.Hostname}}"
pid: host
ports:
- "9100:9100"
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- '--path.procfs=/host/proc'
- '--path.rootfs=/rootfs'
- '--path.sysfs=/host/sys'
- '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "3"
deploy:
mode: global
resources:
limits:
memory: 128M