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>
This commit is contained in:
2026-07-11 11:19:04 -05:00
parent 266ea11447
commit 971fe8dda8
7 changed files with 149 additions and 1 deletions
+11 -1
View File
@@ -1,7 +1,16 @@
# 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:latest
image: prom/node-exporter:v1.7.0
hostname: "{{.Node.Hostname}}"
pid: host
ports:
- "9100:9100"
volumes:
@@ -12,6 +21,7 @@ services:
- '--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: