From 874c61820d2c7cddf47f757b220063419181ce99 Mon Sep 17 00:00:00 2001 From: Prathamesh Musale Date: Mon, 11 May 2026 10:40:57 +0000 Subject: [PATCH] host-metrics: stack.yml + compose skeleton Co-Authored-By: Claude Sonnet 4.6 --- .../compose/docker-compose-host-metrics.yml | 21 +++++++++++++++++++ .../data/stacks/host-metrics/README.md | 12 +++++++++++ .../data/stacks/host-metrics/stack.yml | 5 +++++ 3 files changed, 38 insertions(+) create mode 100644 stack_orchestrator/data/compose/docker-compose-host-metrics.yml create mode 100644 stack_orchestrator/data/stacks/host-metrics/README.md create mode 100644 stack_orchestrator/data/stacks/host-metrics/stack.yml diff --git a/stack_orchestrator/data/compose/docker-compose-host-metrics.yml b/stack_orchestrator/data/compose/docker-compose-host-metrics.yml new file mode 100644 index 00000000..62d613a7 --- /dev/null +++ b/stack_orchestrator/data/compose/docker-compose-host-metrics.yml @@ -0,0 +1,21 @@ +services: + telegraf: + image: telegraf:1.36 + restart: unless-stopped + network_mode: host + pid: host + entrypoint: ["/scripts/telegraf-entrypoint.sh"] + environment: + INFLUXDB_URL: ${INFLUXDB_URL} + INFLUXDB_DB: ${INFLUXDB_DB:-host_metrics} + INFLUXDB_USER: ${INFLUXDB_WRITE_USER} + INFLUXDB_PASSWORD: ${INFLUXDB_WRITE_PASSWORD} + COLLECT_INTERVAL: ${COLLECT_INTERVAL:-10s} + HOST_TAG: ${HOST_TAG:-} + COLLECT_ZFS: ${COLLECT_ZFS:-false} + volumes: + - ../config/host-metrics/telegraf.conf.tpl:/etc/telegraf/telegraf.conf.tpl:ro + - ../config/host-metrics/scripts/telegraf-entrypoint.sh:/scripts/telegraf-entrypoint.sh:ro + - /proc:/hostfs/proc:ro + - /sys:/hostfs/sys:ro + - /:/hostfs:ro diff --git a/stack_orchestrator/data/stacks/host-metrics/README.md b/stack_orchestrator/data/stacks/host-metrics/README.md new file mode 100644 index 00000000..d281e638 --- /dev/null +++ b/stack_orchestrator/data/stacks/host-metrics/README.md @@ -0,0 +1,12 @@ +# host-metrics stack + +Per-host system metrics collector. Runs telegraf with host networking, host +PID namespace, and read-only bind mounts of /proc, /sys, and / so it can +report real CPU, memory, disk, network, and process metrics for the machine +it runs on. Writes to an InfluxDB 1.x endpoint of your choosing. + +Deploy one instance per machine you want monitored. + +## Quick deploy + +(Filled in by a later task.) diff --git a/stack_orchestrator/data/stacks/host-metrics/stack.yml b/stack_orchestrator/data/stacks/host-metrics/stack.yml new file mode 100644 index 00000000..a9a0ce52 --- /dev/null +++ b/stack_orchestrator/data/stacks/host-metrics/stack.yml @@ -0,0 +1,5 @@ +version: "1.1" +name: host-metrics +description: "Per-host system metrics collector (telegraf -> InfluxDB)" +pods: + - host-metrics