Später · 18 Plattengesundheit: Proxmox-Host, NAS über SNMP, NVMe der KI-Box

- kern/platten.py: SMART aus pvesh, smartctl und SNMP in einer Form; rot bei SMART FAILED, kritischer Warnung,
  aufgebrauchter Reserve, ≥ 90 % verbraucht; gelb bei ≥ 80 %, Hitze, gewachsenen Fehlerzählern (Ausgangslage je
  Platte, „Zur Kenntnis genommen“ setzt sie neu)
- Ausführer: stündlich disks/list + disks/smart im Bericht (nur lesend)
- services/homelab/nas_snmp.py: kleiner SNMPv2c-GetBulk-Leser ohne neue Abhängigkeit, QNAP hdTable/diskTable,
  Zugang 0600, Einstellungen „Verbindung testen und speichern“
- services/platten.py: NVMe der KI-Box über sudo smartctl (smartmontools am 26.09. nachinstalliert)
- Wächter beider Rollen, Plattenfeld in beiden Cockpits, Doku

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-09-26 09:54:38 +02:00
co-authored by Claude Opus 5.5
parent 5325544d89
commit 904598031a
46 changed files with 1212 additions and 41 deletions
+11 -1
View File
@@ -149,6 +149,12 @@ Werte zu jedem Zeitpunkt; „Werte als Tabelle“ klappt die letzten Punkte als
Anteil geblockter Anfragen, sobald unter Einstellungen ein Zugang eingetragen ist.
- **Hinweise mit Ablauf:** „Gesehen“ nimmt einem Hinweis die Farbe, „24 h stumm“ schaltet Erinnerungen ab (wird er rot,
meldet er sich trotzdem), „Wieder melden“ hebt das auf. Kurze Wackler lösen keinen Alarm mehr aus.
- **Plattengesundheit** (seit 26.09.): die Platte des Proxmox-Hosts und — sobald SNMP am NAS an ist — die Platten des
NAS: ob sie sich gesund meldet, wie viel verbraucht ist, wie warm sie ist. Gemeldet wird nur, was schlecht ist oder
schlechter wird (etwa neue Medienfehler); „Zur Kenntnis genommen“ macht den heutigen Stand zur neuen Ausgangslage.
- **Neue Geräte im Netz** (seit 26.09.): Der Proxmox-Host sieht alle 30 Minuten nach, wer im Heimnetz antwortet.
Taucht ein unbekanntes Gerät auf, kommt einmal eine Nachricht und ein gelber Hinweis mit „Ist bekannt“. Handys mit
wechselnder (zufälliger) MAC erkennt er am Namen wieder.
## Homelab · Updates
@@ -228,7 +234,8 @@ Probleme oben. Je Dienst stehen da
- **Läuft seit** mit der Uhrzeit des letzten Starts, und **Neustarts**: wie oft systemd den Dienst nach einem Absturz
von selbst wieder gestartet hat (am Handy nur, wenn es welche gab).
„Protokoll" klappt unter der Zeile auf, was der Dienst zuletzt geschrieben hat, das Neueste unten. „Neu starten"
„Protokoll" klappt unter der Zeile auf, was der Dienst zuletzt geschrieben hat, das Neueste unten.
Im Cockpit der KI-Box steht seit 26.09. außerdem die **Plattengesundheit** ihrer NVMe (gesund, verbraucht, Wärme). „Neu starten"
startet ihn neu, „Starten" einen gestoppten oder gescheiterten Dienst; „Wecken" weckt einen schlafenden bis zum
nächsten Neustart der Box. Jeder dieser Knöpfe fragt vorher nach. Die Spracherkennung und die Konsole schlafen seit
24.09. mit Absicht; die Android-App wird sie später wieder brauchen.
@@ -252,6 +259,9 @@ Eine eigene Seite mit fünf Karten: KI-Box, Homelab, Lucy, Meldungen, Software-S
melden“, „Sicherheitsupdates automatisch“, „Alles automatisch im Fenster“) und je Gerät eine eigene.
- **AdGuard Home (Homelab):** ein Zugang (am besten ein eigener Benutzer), mit dem die Kachel zeigt, wie viel AdGuard
blockt. „Prüfen und speichern“ fragt AdGuard erst damit; das Passwort wird nie wieder angezeigt.
- **NAS-Platten (SNMP, Homelab):** Am QNAP unter Systemsteuerung → Netzwerk- und Dateidienste → SNMP den Dienst
einschalten (SNMP v1/v2) und einen Zugangsnamen („Community“) wählen, der nicht „public“ heißt; den hier eintragen.
„Verbindung testen und speichern“ fragt das NAS erst damit — antwortet es, erscheinen seine Platten im Cockpit.
- **Arcane-API-Schlüssel (Homelab):** in Arcane unter Einstellungen → API-Schlüssel anlegen und hier einfügen. „Prüfen
und speichern“ fragt Arcane zuerst, ob der Schlüssel gilt; erst dann wird er gespeichert — im Homelab-Teil, nicht
+13
View File
@@ -301,6 +301,19 @@ laufen lassen. Achtung: `ausfuehrer-einrichten.sh` schreibt `/etc/mc2-ausfuehrer
gerade „Alle aktualisieren“ oder ein Update, wartet es eine Minute. Einstellungen: `/var/lib/mc2/homelab-wartung.json`
(Oberfläche: Einstellungen → Homelab), Stand des letzten Fensters: `/var/lib/mc2/homelab-wartung-stand.json`. Die
Läufe schreiben Oberfläche und Steward in dieselbe Datei — seit 26.09. unter `flock`.
- **Plattengesundheit (seit 26.09.):** Der Ausführer liest stündlich `pvesh get /nodes/<node>/disks/list` und je Platte
`disks/smart` (nur lesend) und schickt beides im Bericht (`host.platten`); ausgewertet wird in `backend/kern/platten.py`
(rot: SMART FAILED, kritische Warnung, Reserve aufgebraucht, ≥ 90 % verbraucht; gelb: ≥ 80 %, zu heiß, gewachsene
Fehlerzähler). Ausgangslage je Platte in `/var/lib/mc2/platten-basis.json` (Box: `/srv/models/platten-basis.json`),
„Zur Kenntnis genommen“ setzt sie neu. Das NAS über SNMP v2c (`services/homelab/nas_snmp.py`, eigener kleiner
GetBulk-Leser, UDP 161): QNAP NAS-MIB `hdTable`, sonst QTS-MIB `diskTable`; Zugang in `/var/lib/mc2/nas-snmp.json`
(0600), abgefragt höchstens alle 10 min. Die KI-Box liest ihre NVMe mit `sudo -n smartctl -j -a` (Paket
`smartmontools`, am 26.09. nachinstalliert — bei einem Neuaufbau `sudo apt install smartmontools`).
- **Geräte im Heimnetz (seit 26.09.):** AdGuard sieht in diesem Netz fast nur die Fritzbox (sie reicht die Anfragen
weiter), deshalb pingt der Ausführer alle 30 min jede Adresse des /24 an `vmbr0` an und liest `ip neigh` (MAC, IP,
Rückwärtsname; nur lesend, größer als /24 nie). Register `/var/lib/mc2/netz-bekannt.json`; der erste Abgleich nimmt
alles als bekannt, Gäste des Hosts und neue MACs mit bekanntem Namen ebenso. Neues: einmal eine Nachricht, dazu ein
gelber Hinweis mit „Ist bekannt“. Liste: `curl -s http://192.168.178.31:9001/api/homelab/netz | jq`.
- **Wöchentliches Suchen:** Der Steward legt für jeden freigegebenen, laufenden Container, dessen Paketlisten älter als
7 Tage sind, den Auftrag `suchen` an (nur `apt-get update` bzw. `apk update` im Gast, es wird nichts installiert):
nachts 02:00–05:00, höchstens einmal je Gast und Tag, nicht während eines Updates; war die Instanz nachts aus, gleich