From 3249c62de10f0d195f3626615906e3eee4dd834f Mon Sep 17 00:00:00 2001 From: mm Date: Sun, 13 Sep 2026 21:41:19 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20README=20konsistent=20=E2=80=94=20PVE?= =?UTF-8?q?=20ohne=20Token,=20Root-Drop-in,=20Pruef-Reihenfolge?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index c01bb5c..c357bad 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,6 @@ curl -fsSL https://gitea.m-m.bio/mm/netbird-telegraf-installer/raw/branch/main/i | `--token ` | **Pflicht.** Bearer-Token des Reverse-Proxys | | `--collector ` | Direktweg innerhalb des NetBird statt Reverse Proxy (z. B. `100.83.134.46`); braucht dann keinen Token-Zwang, aber die Node muss Peer sein | | `--role proxmox\|apache\|docker\|none` | Zusatz-Profil; Default `auto` erkennt Proxmox, Docker und Apache selbst | -| `--pve-token 'telegraf@pve!monitoring=…'` | Proxmox-API-Token für VM/CT-Metriken | | `--apache-log ` | Access-Log (Default `/var/log/apache2/access.log`) | | `--uninstall` | alles entfernen | @@ -59,21 +58,22 @@ Dann auf **jedem PVE-Knoten** (auf dem Host selbst, nicht in einer VM). ```sh curl -fsSL https://gitea.m-m.bio/mm/netbird-telegraf-installer/raw/branch/main/install.sh \ - | sh -s -- --name pve1 --token \ - --role proxmox --pve-token 'telegraf@pve!monitoring=' + | sh -s -- --name --token --role proxmox ``` > Auf Debian/Ubuntu/Normalnutzer dagegen `| sudo sh -s -- …` verwenden. Das Script prüft `id -u` selbst und bricht mit klarer Meldung ab, wenn es nicht root ist. -`--pve-node` und `--pve-url` sind optional: Ohne Angabe ermittelt das Script den Knotennamen per `pvesh get /nodes` und nutzt `https://127.0.0.1:8006/api2/json`. +Der Installer erkennt den PVE-Knoten selbst (`pvesh get /nodes`) und legt das systemd-Drop-in +`10-proxmox-root.conf` an — Telegraf läuft für diese Rolle als **root**, weil `pvesh` root verlangt. -| Option | Bedeutung | -|---|---| -| `--pve-token 'user@realm!id='` | **Pflicht** für VM/CT-Metriken | -| `--pve-node ` | PVE-Knotenname wie im PVE-Baum (Default: per `pvesh` erkannt) | -| `--pve-url ` | PVE-API-URL, wenn Telegraf nicht auf dem PVE-Host läuft | +Liefert pro Gast: `proxmox_vm_cpu_usage_percent`, `_cpu_cores`, `_mem_bytes`, `_mem_max_bytes`, +`_mem_usage_percent`, `_swap_bytes`, `_disk_bytes`, `_disk_max_bytes`, `_diskread/_diskwrite_bytes_total`, +`_net_in/_net_out_bytes_total`, `_uptime_seconds`, `_running` — je mit `vmid`, `name`, `node`, `type`, `status`. +Plus die normalen Host-Metriken des Knotens. -Liefert: Node-Metriken (CPU, RAM, Disk, Netzwerk), VM-/CT-Statistiken pro `vmid` (CPU, RAM, Disk, Netz, Uptime, Status). +> **Wenn nach der Installation keine VM-Metriken kommen:** `systemctl cat telegraf | grep User` muss +> `User=root` zeigen. Vorher prüfen: `pvesh get /cluster/resources --output-format json` muss als root +> Daten liefern. Als Nicht-root gibt `pvesh` nur `ipcc_send_rec[...] failed` aus — ohne Fehler im Log. ### Apache @@ -136,4 +136,5 @@ Dort ist `network_mode: host` gesetzt — ohne das sieht Telegraf nur `lo`+`eth0 - Der Proxy verlangt Bearer-Token; das Header wird vor dem Weiterleiten entfernt und liegt damit nicht bei Prometheus/Loki. - Telegraf läuft als Benutzer `telegraf` (Docker-Socket read-only via Gruppe `docker`, Apache-Logs via Gruppe `adm`). +- **Ausnahme `--role proxmox`:** systemd-Drop-in setzt `User=root`, weil `pvesh` root benötigt. Nur auf PVE-Hosts, wo du ohnehin root bist. - Dieses Repo ist öffentlich und enthält keine Secrets.