homelab-brain/infra/telegraf/README.md
Homelab Cursor d9dd087602 Klima-Bewertung: Telegraf Shelly-Ingest + Grafana-Dashboard
Shelly PM Mini Gen3 Leistung (klima_flur_oben/unten) nach InfluxDB sensors/power;
Grafana-Dashboard klima-bewertung korreliert Watt mit Raumtemperaturen.
2026-06-24 16:48:36 +02:00

73 lines
2.9 KiB
Markdown

# Telegraf - Telemetrie-Ingestion (CT143 "Raspi-Broker")
Versionierte Kopie der produktiven Telegraf-Konfiguration. **Laufort:**
`CT143` (pve-mu-3), Verzeichnis `/etc/telegraf/telegraf.d/`.
Diese Dateien sind die *Quelle der Wahrheit* (Konfiguration zaehlt Git/Doku).
Wenn am Server geaendert wird: hier nachziehen + committen + pushen.
## Architektur (Stand 21.06.2026)
MQTT-Broker = dedizierter **mosquitto 2.0.21** auf CT143 `192.168.178.36:1883`.
Telegraf ist der **alleinige** MQTT->InfluxDB-Ingest (die alten Python-Bruecken
`mqtt-influx-bridge.py` / `mqtt-rewrite-holzvergaser.py` sind gestoppt + disabled).
Zwei InfluxDB-Datenbanken:
- **`sensors`** - sauberes, aktives Schema (siehe `satellites.conf`).
- **`iobroker`** - eingefrorenes Archiv (Alt-Historie) + weiterhin openWB/PV (siehe `openwb.conf`).
## Routing (wichtig, damit nichts doppelt landet)
Beide Configs definieren je einen `outputs.influxdb`. Telegraf schickt jede Metrik
an *alle* Outputs, daher wird per name-Filter getrennt:
- `satellites.conf` -> DB `sensors`, **namepass** = `temperature`, `io_state`
- `openwb.conf` -> DB `iobroker`, **namedrop** = `temperature`, `io_state`
So schreibt der Satelliten-/Heizraum-Ingest ausschliesslich nach `sensors`,
und openWB/PV ausschliesslich nach `iobroker` - keine Dopplung.
## Schema in DB `sensors`
| Measurement | Tags | Wert | Quelle |
|---------------|-------------------------------|-------------|--------|
| `temperature` | `node` (Raum/heizraum), heizraum zus. `sensor`=ROM | float Grad C | `<raum>/temp`, `heizraum/<ROM>` |
| `io_state` | `node`=heizraum, `signal` (pumpe1-4/brenner/kessel) | int 0/1 | `heizraum/io/+`, `heizraum/state/kessel` |
Globaler Tag `host=Raspi-Broker` (Telegraf-Default).
## Deploy / Wiederherstellung
```bash
# auf CT143 (pve-mu-3):
pct push 143 satellites.conf /etc/telegraf/telegraf.d/satellites.conf
pct push 143 openwb.conf /etc/telegraf/telegraf.d/openwb.conf
pct exec 143 -- systemctl restart telegraf
# Verifikation:
pct exec 143 -- influx -database sensors -execute 'SHOW MEASUREMENTS'
```
## klima.conf (ab 24.06.2026)
Shelly PM Mini Gen3 Leistungsmessung der Klimaanlagen -> DB `sensors`, Measurement `power`.
| Tag | Bedeutung |
|-----|-----------|
| `node` | `klima_flur_oben` (Split oben), `klima_flur_unten` (Panasonic, vorbereitet) |
| `geraet` | `split_ac` / `panasonic` |
MQTT-Topics (Shelly Prefix):
- `klima_flur_oben/status/pm1:0`
- `klima_flur_unten/status/pm1:0`
Felder: `watt` (apower), `voltage`, `current`, `energy_wh_total` (Wh kumuliert).
Grafana-Dashboard: `Klimatisierung` (UID `klima-bewertung`) unter `/d/klima-bewertung/klimatisierung`
Deploy:
```bash
pct push 143 klima.conf /etc/telegraf/telegraf.d/klima.conf
# satellites.conf + openwb.conf namepass/namedrop aktualisieren (power)
pct exec 143 -- systemctl restart telegraf
pct push 143 klima-bewertung.json /etc/grafana/provisioning/dashboards/klima-bewertung.json
```