archibald hat kein sudo und kein linger, aber Docker-Gruppe. Muster wie bei der llama-swap-Telemetrie auf dem ROG: ein Nutzer-Cron fuehrt den Exporteur aus, Telegraf laeuft als Container daneben und pusht per Remote Write zum Collector im Mesh. - scripts/archivebox-telemetrie.py: liest die ArchiveBox-Logs und die SQLite-DB IM Container (Host-User mm darf index.sqlite3 nicht oeffnen, Container-User 911 schon) und schreibt eine Prometheus-Exposition. Kein node-Label -- das setzt Telegraf per global_tags. - scripts/install-archivebox-telemetrie.sh: installiert Exporteur, Cron-Eintrag (jede Minute) und den Container, mit --dry-run. - stacks/telegraf-container/: telegraf 1.39, network_mode host, inputs.file (data_format prometheus), outputs.prometheus_remote_write.
33 lines
1.6 KiB
YAML
33 lines
1.6 KiB
YAML
# =============================================================================
|
|
# Telegraf als CONTAINER auf einem Knoten OHNE sudo.
|
|
#
|
|
# Fuer Knoten mit System-Telegraf ist install.sh der richtige Weg; hier genuegt
|
|
# die Docker-Gruppe, weil nur die fertige .prom-Datei gelesen und per Remote
|
|
# Write gepusht wird. Kein /hostfs, kein docker.sock, kein privileged -- nichts
|
|
# davon braucht eine dateibasierte App-Metrik.
|
|
#
|
|
# Werte kommen aus der Umgebung (Telegraf expandiert ${...} beim Laden), damit
|
|
# kein Geheimnis und keine IP doppelt im Repo steht.
|
|
# =============================================================================
|
|
services:
|
|
telegraf:
|
|
image: telegraf:1.39 # gleiche Version wie der Collector (imac)
|
|
container_name: telegraf-archibald
|
|
restart: unless-stopped
|
|
# host-Netz: derselbe Weg, den ein curl auf dem Host zum Collector nimmt.
|
|
# Ueber eine Bridge kaeme ein zusaetzlicher NAT/forward-Hop hinzu, der in
|
|
# NetBird-Firewall-Regeln haengenbleiben kann.
|
|
network_mode: host
|
|
environment:
|
|
NODE_NAME: archibald
|
|
# Direkter Mesh-Weg, kein Reverse-Proxy: der Collector laeuft mit
|
|
# --web.enable-remote-write-receiver und OHNE web.config.file, also ohne
|
|
# Auth. Ueber den Proxy-Weg waere ein Bearer-Token noetig.
|
|
PROM_URL: http://100.83.134.46:9090/api/v1/write
|
|
volumes:
|
|
- ./telegraf.conf:/etc/telegraf/telegraf.conf:ro
|
|
# VERZEICHNIS-Mount, bewusst kein Datei-Mount: der Cron-Exporteur ersetzt
|
|
# die .prom-Datei atomar per mv -- ein Datei-Mount haette danach weiter
|
|
# den alten Inode und lieferte still veraltete Werte.
|
|
- /home/mm/abx-telemetrie:/var/lib/abx-prom:ro
|