Document hardware capacity baseline

This commit is contained in:
2026-05-26 19:39:42 +02:00
parent 02a50e1a58
commit a3d77d7529
4 changed files with 55 additions and 36 deletions
+4 -4
View File
@@ -15,15 +15,15 @@ Status: Arbeitsliste fuer die Umsetzung. Authelia-2FA/OIDC bleibt bewusst spaet,
Kontext bewusst gesichert, bevor weitere Live-Aenderungen passieren: Kontext bewusst gesichert, bevor weitere Live-Aenderungen passieren:
1. Hardware-/USV-Audit abschliessen: CPU/RAM/Mainboard/NIC/Disks/SMART sind erfasst; offen bleiben USV/Strom/BIOS. `apcaccess` ist vorhanden, `apcaccess status` lieferte zuletzt Connection refused. 1. Policy-Warnings triagieren: Plex Host-Netz, mutable Tags bei `ddns-updater`, `glances`, `scrutiny` und `monitoring-influxdb3-core` als Root-Ausnahme bewerten.
2. Policy-Warnings triagieren: Plex Host-Netz, mutable Tags bei `ddns-updater`, `glances`, `scrutiny` und `monitoring-influxdb3-core` als Root-Ausnahme bewerten. 2. USV-Entscheidung treffen: aktuell ist keine funktionierende USV-Abschaltung nachgewiesen.
3. Authelia 2FA/OIDC weiterhin nicht anfassen; das bleibt bewusst der letzte Block. 3. Authelia 2FA/OIDC weiterhin nicht anfassen; das bleibt bewusst der letzte Block.
## Sprint 0 - Inventar und Baseline ## Sprint 0 - Inventar und Baseline
| Status | Aufgabe | Ergebnis | | Status | Aufgabe | Ergebnis |
|---|---|---| |---|---|---|
| in Arbeit | Hardware-Inventar ausfuellen | CPU, RAM, Mainboard, NIC, Disks und SMART erfasst; USV/Strom/BIOS offen | | erledigt | Hardware-Inventar ausfuellen | CPU, RAM, Mainboard, BIOS, NIC, Controller, Disks, SMART und Capacity-Baseline erfasst; USV ist als nicht validiert dokumentiert |
| in Arbeit | Netzwerk-Inventar ausfuellen | Host-IP, Gateway, Tailscale-IP und AdGuard-Bind erfasst; Router-/VLAN-Details offen | | in Arbeit | Netzwerk-Inventar ausfuellen | Host-IP, Gateway, Tailscale-IP und AdGuard-Bind erfasst; Router-/VLAN-Details offen |
| offen | Externe Abhaengigkeiten dokumentieren | `docs/EXTERNAL_DEPENDENCIES.md` enthaelt Provider, Kritikalitaet, Ausfallplan | | offen | Externe Abhaengigkeiten dokumentieren | `docs/EXTERNAL_DEPENDENCIES.md` enthaelt Provider, Kritikalitaet, Ausfallplan |
| offen | Services-Recovery-Pfade beschreiben | `docs/SERVICES_RECOVERY.md` enthaelt Gitea-/Komodo-/Secrets-Sonderpfade | | offen | Services-Recovery-Pfade beschreiben | `docs/SERVICES_RECOVERY.md` enthaelt Gitea-/Komodo-/Secrets-Sonderpfade |
@@ -66,7 +66,7 @@ Kontext bewusst gesichert, bevor weitere Live-Aenderungen passieren:
| Status | Aufgabe | Ergebnis | | Status | Aufgabe | Ergebnis |
|---|---|---| |---|---|---|
| offen | Familien-Onboarding schreiben | Nextcloud, Immich, Vaultwarden, 2FA-Verlust, Ausfallverhalten kurz erklaert | | offen | Familien-Onboarding schreiben | Nextcloud, Immich, Vaultwarden, 2FA-Verlust, Ausfallverhalten kurz erklaert |
| offen | Capacity-/Lifecycle-Review erstellen | Wachstum, Schwellenwerte, Upgrade-Trigger und Disk-Replacement-Plan dokumentiert | | erledigt (Baseline) | Capacity-/Lifecycle-Review erstellen | Cache 6 %, Array/User-Shares 33 %, lokale Backups 2.2G; externe Backup-/Cold-Storage-Groessen bleiben offen |
| offen | USV-Test oder USV-Entscheidung | Power-Loss-Verhalten ist bekannt und dokumentiert | | offen | USV-Test oder USV-Entscheidung | Power-Loss-Verhalten ist bekannt und dokumentiert |
## Sprint 5 - Auth und Frontdoor, bewusst zuletzt ## Sprint 5 - Auth und Frontdoor, bewusst zuletzt
+12 -10
View File
@@ -1,6 +1,6 @@
# Capacity and Lifecycle - KalliLab CORE # Capacity and Lifecycle - KalliLab CORE
Status: Template, auszufuellen nach Hardware-/Storage-Audit. Status: Initiale Capacity-Baseline 2026-05-26; externe Backup-/Cold-Storage-Groessen offen.
## Zweck ## Zweck
@@ -10,9 +10,10 @@ Dieses Dokument haelt Wachstum, Schwellenwerte und Upgrade-Trigger fest. Es verh
| Bereich | Groesse | Belegt | Frei | Schwellwert | Bewertung | | Bereich | Groesse | Belegt | Frei | Schwellwert | Bewertung |
|---|---:|---:|---:|---:|---| |---|---:|---:|---:|---:|---|
| Cache | TBD | TBD | TBD | 70 % Planung / 85 % Aktion | TBD | | Cache | 1.9T | 97G | 1.8T | 70 % Planung / 85 % Aktion | gruen, 6 % belegt |
| Disk1 | TBD | TBD | TBD | 80 % Planung / 90 % Aktion | TBD | | Disk1 / Array | 5.5T | 1.8T | 3.7T | 80 % Planung / 90 % Aktion | gruen, 33 % belegt |
| Backups lokal | TBD | TBD | TBD | TBD | TBD | | User Shares gesamt | 5.5T | 1.8T | 3.7T | 80 % Planung / 90 % Aktion | gruen, entspricht aktuell Disk1 |
| Backups lokal | 5.5T geteilter Array-Space | 2.2G unter `/mnt/user/backups` | 3.7T Share-frei | Review bei Borg-/Dump-Wachstum | lokal nicht unabhaengig vom Array |
| Hetzner Borg | TBD | TBD | TBD | TBD | TBD | | Hetzner Borg | TBD | TBD | TBD | TBD | TBD |
| Externe Cold-Platte | TBD | TBD | TBD | TBD | TBD | | Externe Cold-Platte | TBD | TBD | TBD | TBD | TBD |
@@ -28,11 +29,12 @@ du -sh /mnt/user/documents /mnt/user/photos /mnt/user/media /mnt/user/backups 2>
| Bereich | Erwartetes Wachstum | Risiko | Naechste Aktion | | Bereich | Erwartetes Wachstum | Risiko | Naechste Aktion |
|---|---|---|---| |---|---|---|---|
| Immich Fotos/Videos | TBD | hoechster privater Datentopf | Restore-Test priorisieren | | Medien | aktuell ca. 1.7T | groesster Speicherblock | Array-Erweiterung vor 80 % planen |
| Paperless Dokumente | TBD | wichtig, moderates Wachstum | Restore-Test existiert | | Immich Fotos/Videos | aktuell ca. 23G | hoechster privater Datentopf | Restore-Test priorisieren |
| Paperless/Dokumente | aktuell ca. 199M im Documents-Share | wichtig, moderates Wachstum | Restore-Test existiert, Share-Wachstum beobachten |
| Nextcloud | TBD | Familiennutzung kann stark wachsen | Quota/Backup pruefen | | Nextcloud | TBD | Familiennutzung kann stark wachsen | Quota/Backup pruefen |
| Monitoring/Loki | TBD | Retention kann Disk fuellen | Retention dokumentieren | | Monitoring/Loki | begrenzt durch Retention | Retention kann Disk fuellen | Retention und Volume-Groesse bei Reviews pruefen |
| Borg Dumps | TBD | Retention und Excludes pruefen | Borg-Stale + Groessenprofil | | Borg Dumps | aktuell ca. 2.2G lokale Backups | Retention und Excludes pruefen | Borg-Stale + Groessenprofil |
## Upgrade-Trigger ## Upgrade-Trigger
@@ -45,6 +47,7 @@ du -sh /mnt/user/documents /mnt/user/photos /mnt/user/media /mnt/user/backups 2>
| RAM >90 % ueber 10 Minuten regelmaessig | RAM-Ausbau oder Service-Limits pruefen | | RAM >90 % ueber 10 Minuten regelmaessig | RAM-Ausbau oder Service-Limits pruefen |
| Borg-Laufzeit deutlich steigend | Scope, Netzwerk und Ziel pruefen | | Borg-Laufzeit deutlich steigend | Scope, Netzwerk und Ziel pruefen |
| SMART-Warnung | Ersatz planen, Restore-/Backup-Frische pruefen | | SMART-Warnung | Ersatz planen, Restore-/Backup-Frische pruefen |
| Keine USV-Abschaltung | USV anschaffen/anschliessen oder Power-Loss-Risiko bewusst akzeptieren |
## Restore-Zeitziele ## Restore-Zeitziele
@@ -59,5 +62,4 @@ du -sh /mnt/user/documents /mnt/user/photos /mnt/user/media /mnt/user/backups 2>
| Datum | Befund | Entscheidung | | Datum | Befund | Entscheidung |
|---|---|---| |---|---|---|
| TBD | Initial ausfuellen | TBD | | 2026-05-26 | Cache 6 %, Array/User-Shares 33 %, lokale Backups 2.2G; keine validierte USV-Abschaltung | Capacity gruen; naechste operative Risiken sind USV-Entscheidung und externe Backup-/Cold-Storage-Groessen |
+32 -22
View File
@@ -1,6 +1,6 @@
# Hardware Inventory - KalliLab CORE # Hardware Inventory - KalliLab CORE
Status: Initialer Host-Audit erfasst, offene Punkte markiert. Status: Hardware-Baseline erfasst; USV/Power-Loss bleibt offene Betreiberentscheidung.
Host: `Kallilabcore` Host: `Kallilabcore`
Letzte Pruefung: 2026-05-26 Letzte Pruefung: 2026-05-26
Naechster Review: 2026-08-26 Naechster Review: 2026-08-26
@@ -43,8 +43,10 @@ lscpu
| Feld | Wert | | Feld | Wert |
|---|---| |---|---|
| Gesamt | 31 GiB | | Gesamt | 31 GiB |
| Belegt im Normalbetrieb | ca. 7.8 GiB genutzt, ca. 23 GiB verfuegbar | | Belegt im Normalbetrieb | ca. 7.9 GiB genutzt, ca. 23 GiB verfuegbar |
| Slots / Ausbau | 4x 8 GB DDR4 belegt | | Slots / Ausbau | 4x 8 GB DDR4 belegt, gemischte Module |
| Module | Crucial CT8G4DFS8266.C8FE, Crucial CT8G4DFS8213.C8FDD1, 2x G.Skill F4-3600C17-8GVK |
| Konfigurierter Takt | 2133 MT/s |
| ECC | Nein | | ECC | Nein |
Pruefkommando: Pruefkommando:
@@ -59,8 +61,9 @@ dmidecode -t memory | grep -E "Size|Speed|Locator|Type" | head -40
| Feld | Wert | | Feld | Wert |
|---|---| |---|---|
| Mainboard | Gigabyte Technology Co., Ltd. B760M DS3H DDR4 | | Mainboard | Gigabyte Technology Co., Ltd. B760M DS3H DDR4 |
| BIOS/Firmware | TBD | | BIOS/Firmware | American Megatrends International F21, Release 2025-06-19 |
| SATA/HBA Controller | Onboard, Details TBD | | SATA/HBA Controller | Intel Raptor Lake SATA AHCI Controller, onboard |
| NVMe Controller | Samsung SM981/PM981/PM983 NVMe Controller |
| NVMe Slots | mindestens 1 belegt | | NVMe Slots | mindestens 1 belegt |
Pruefkommando: Pruefkommando:
@@ -74,7 +77,7 @@ lspci
| Interface | Speed | Rolle | Bemerkung | | Interface | Speed | Rolle | Bemerkung |
|---|---:|---|---| |---|---:|---|---|
| eth0 / bond0 / br0 | 1 Gbit/s full duplex | LAN | Host-IP `192.168.178.58/24`, Gateway `192.168.178.1` | | eth0 / bond0 / br0 | 1 Gbit/s full duplex | LAN | Realtek RTL8125 2.5GbE Controller, Link aktuell 1G; Host-IP `192.168.178.58/24`, Gateway `192.168.178.1` |
| tailscale1 | virtuell | VPN | Tailscale IPv4 `100.80.98.33` | | tailscale1 | virtuell | VPN | Tailscale IPv4 `100.80.98.33` |
Pruefkommando: Pruefkommando:
@@ -123,28 +126,29 @@ smartctl -a /dev/sdc
| Feld | Wert | | Feld | Wert |
|---|---| |---|---|
| USV vorhanden | Unklar | | USV vorhanden | Nicht validiert / keine erkannte USV |
| Modell | TBD | | Modell | Kein APC/Eaton/CyberPower-Geraet per `lsusb` erkannt |
| Verbindung | TBD | | Verbindung | `apcupsd` ist auf USB vorkonfiguriert, aber kein passendes USB-USV-Geraet sichtbar |
| Software | `apcaccess` vorhanden, aber `apcupsd` auf `localhost:3551` antwortet nicht | | Software | `apcaccess` vorhanden; `apcupsd` laeuft nicht, `localhost:3551` liefert Connection refused |
| Laufzeit im Idle | TBD | | Konfigurierte Schwellen | `BATTERYLEVEL 5`, `MINUTES 3`, `TIMEOUT 0`, aber inaktiv solange `apcupsd` nicht laeuft |
| Shutdown-Schwelle | TBD | | Laufzeit im Idle | Nicht messbar |
| Letzter Shutdown-Test | TBD | | Letzter Shutdown-Test | Nicht durchgefuehrt |
Bewertung: Bewertung:
- Wenn keine USV vorhanden ist: Risiko fuer Docker-/DB-State und laufende Writes bleibt offen. - Aktueller Befund 2026-05-26: keine funktionierende USV-Absicherung nachgewiesen.
- Wenn USV vorhanden ist: Shutdown-Pfad muss mindestens einmal getestet und dokumentiert werden. - `apcupsd` ist zwar auf dem System vorhanden, aber nicht aktiv.
- Aktueller Befund 2026-05-26: USV-Status ist nicht validiert; `apcaccess status` liefert `Connection refused`. - Power-Loss bleibt damit ein bewusst offenes Risiko fuer Docker-/DB-State und laufende Writes.
- Naechste Entscheidung: echte USV anschliessen und Shutdown testen oder Risiko bewusst akzeptieren und dokumentieren.
## Stromverbrauch ## Stromverbrauch
| Zustand | Verbrauch | Messmethode | Datum | | Zustand | Verbrauch | Messmethode | Datum |
|---|---:|---|---| |---|---:|---|---|
| Idle | TBD | TBD | TBD | | Idle | TBD | externes Messgeraet erforderlich | TBD |
| Normalbetrieb | TBD | TBD | TBD | | Normalbetrieb | TBD | externes Messgeraet erforderlich | TBD |
| Backup-Lauf | TBD | TBD | TBD | | Backup-Lauf | TBD | externes Messgeraet erforderlich | TBD |
| Last | TBD | TBD | TBD | | Last | TBD | externes Messgeraet erforderlich | TBD |
## Ersatzteil- und Lifecycle-Plan ## Ersatzteil- und Lifecycle-Plan
@@ -155,6 +159,7 @@ Bewertung:
| Parity | Kleiner als neue groesste Datenplatte | Parity-Upgrade vor Datenplatten-Upgrade | | Parity | Kleiner als neue groesste Datenplatte | Parity-Upgrade vor Datenplatten-Upgrade |
| Boot-USB | Lesefehler oder Alter TBD | Flash-Backup verifizieren, Ersatzstick vorbereiten | | Boot-USB | Lesefehler oder Alter TBD | Flash-Backup verifizieren, Ersatzstick vorbereiten |
| RAM | Swap/OOM oder Immich/Nextcloud-Druck | Ausbau planen | | RAM | Swap/OOM oder Immich/Nextcloud-Druck | Ausbau planen |
| USV | keine funktionierende USV-Abschaltung | USV anschaffen/anschliessen oder Risiko schriftlich akzeptieren |
## Audit-Kommandos ## Audit-Kommandos
@@ -165,13 +170,18 @@ cat /etc/unraid-version 2>/dev/null || true
lscpu lscpu
free -h free -h
dmidecode -t baseboard | head -30 dmidecode -t baseboard | head -30
dmidecode -t bios -t system -t baseboard
dmidecode -t memory | grep -E "Size|Speed|Locator|Type" | head -40 dmidecode -t memory | grep -E "Size|Speed|Locator|Type" | head -40
lspci | egrep -i 'sata|ahci|raid|nvme|ethernet|network'
ip -br link ip -br link
ethtool eth0
tailscale ip -4 tailscale ip -4
lsblk -o NAME,SIZE,MODEL,SERIAL,FSTYPE,MOUNTPOINT,VENDOR lsblk -o NAME,SIZE,MODEL,SERIAL,FSTYPE,MOUNTPOINT,VENDOR
findmnt -no FSTYPE /mnt/cache /mnt/disk1 /boot df -Th /mnt/cache /mnt/disk1 /mnt/user /boot
df -h /mnt/cache /mnt/disk1 /mnt/user
smartctl -a /dev/nvme0n1 | head -100 smartctl -a /dev/nvme0n1 | head -100
smartctl -a /dev/sdb | head -100 smartctl -a /dev/sdb | head -100
smartctl -a /dev/sdc | head -100 smartctl -a /dev/sdc | head -100
apcaccess status
/etc/rc.d/rc.apcupsd status
lsusb
``` ```
+7
View File
@@ -17,6 +17,13 @@ Dieses Dokument ist nur noch ein historischer Verlauf. Der aktuelle operative Ab
## Historische Meilensteine ## Historische Meilensteine
### 2026-05-26 - Hardware-/Capacity-Baseline abgeschlossen
- Hardware-Inventar auf Host-Befund aktualisiert: BIOS AMI F21 vom 2025-06-19, Intel Raptor Lake SATA AHCI, Samsung NVMe Controller und Realtek RTL8125 2.5GbE mit aktuellem 1G-Link.
- RAM-Baseline dokumentiert: 4x 8 GB DDR4 ohne ECC, gemischte Module, aktuell 2133 MT/s konfiguriert.
- Capacity-Baseline dokumentiert: Cache 1.9T mit 97G genutzt (6 %), Disk1/User-Shares 5.5T mit 1.8T genutzt (33 %), lokale Backups 2.2G unter `/mnt/user/backups`.
- USV-Befund dokumentiert: `apcupsd` ist vorhanden und auf USB vorkonfiguriert, laeuft aber nicht; `apcaccess status` liefert Connection refused und `lsusb` zeigt keine erkannte USV. Power-Loss bleibt damit eine offene Betreiberentscheidung.
### 2026-05-26 - Komodo/Gitea-Restdrift bereinigt ### 2026-05-26 - Komodo/Gitea-Restdrift bereinigt
- Der alte Komodo-Stack `grafana` wurde als historischer Altstand inert gemacht: keine Repo-Dateipfade, kein Webhook, keine alte Stack-ENV, keine `missing_files`/`remote_errors`. Rollback bleibt Git-Historie, nicht der alte Komodo-Stack. - Der alte Komodo-Stack `grafana` wurde als historischer Altstand inert gemacht: keine Repo-Dateipfade, kein Webhook, keine alte Stack-ENV, keine `missing_files`/`remote_errors`. Rollback bleibt Git-Historie, nicht der alte Komodo-Stack.