From a3aed327ec6b3fcd08f35e33e384088c3f552951 Mon Sep 17 00:00:00 2001 From: tommy Date: Mon, 6 Jul 2026 22:15:45 -0500 Subject: [PATCH] Add hardware inventory (PVE nodes, standalone hosts, GPUs, UPS, allocation map) Gathered 2026-07-06 via SSH probe + Proxmox read-only API. Flags: compute6 NIC @100Mb (bad cable/port), beast SPOF concentration. Co-Authored-By: Claude Opus 4.8 --- runbooks/hardware-inventory.md | 50 ++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 runbooks/hardware-inventory.md diff --git a/runbooks/hardware-inventory.md b/runbooks/hardware-inventory.md new file mode 100644 index 0000000..90852c9 --- /dev/null +++ b/runbooks/hardware-inventory.md @@ -0,0 +1,50 @@ +# Homelab Hardware Inventory + +_Gathered 2026-07-06 via SSH probe (all hosts) + Proxmox read-only API. Serials/DIMM/SMART captured only on nodes with passwordless sudo (compute5, compute6); the rest are pending a sudo pass._ + +## PVE cluster — physical nodes (6) + +| Node | IP | Model | CPU | RAM | Storage | iGPU | NIC | +|---|---|---|---|---|---|---|---| +| **beast** | .200 | Gigabyte X570 AORUS MASTER (BIOS F39) | Ryzen 9 5950X (16c/32t) | 128 GB | 2× Samsung 870 EVO 1TB SATA, 2× Crucial BX500 2TB SATA, 2× HGST 8TB USB HDD (USB-ZFS), Sabrent Rocket 4TB NVMe, Samsung 990 PRO 2TB NVMe | — (2× P2200 discrete, passed to VM 101) | 1 GbE | +| **compute2** | .192 | Dell OptiPlex 3090 | i5-10500T (6c/12t) | 32 GB | Crucial MX500 1TB SATA, Samsung 970 EVO+ 1TB NVMe | UHD 630 | 1 GbE | +| **compute3** | .193 | Dell OptiPlex 3080 | i5-10500T (6c/12t) | 32 GB | Crucial BX500 1TB SATA, Samsung 990 PRO 2TB NVMe | UHD 630 | 1 GbE | +| **compute4** | .194 | Dell OptiPlex 7050 | i7-7700T (4c/8t) | 16 GB | Bliksem 120GB SATA, SK hynix PC601 1TB NVMe | HD 630 | 1 GbE | +| **compute5** | .196 | Dell OptiPlex Micro Plus 7010 (SN 1JPM7Y3) | i7-13700T (16c/24t) | 32 GB DDR5-4800 | WD SN740 256GB NVMe (18% wear), SK hynix PC711 1TB NVMe | UHD 770 | 1 GbE | +| **compute6** | .198 | GMKtec NucBox K10 | i9-13900HK (14c/20t) | 64 GB DDR5-5600 (2×32, A-DATA) | EDILOCA EN206 256GB SATA, Crucial P5 1TB + P3 Plus 1TB NVMe | Iris Xe | **100 Mb ⚠️** | + +All PVE nodes on kernel 6.17.13-pve. **beast = PVE master + NUT master**, holds the GPUs and most critical guests. + +## Standalone physical hosts +- **pbs** (.153) — HP EliteDesk 800 G4 DM 35W, i5-8500T (6c), 32 GB, Samsung 870 EVO 1TB SATA + Samsung 990 EVO 1TB NVMe + USB drives backing the USB-ZFS datastores (1TB Toshiba MD1000, 2× Hitachi 3TB, Toshiba 2TB, WD10EZEX 1TB), 1 GbE. Proxmox Backup Server 7.0.0-3 — **not** a cluster member. +- **pi4** (.227) — Raspberry Pi 4 (Cortex-A72 4c, 4 GB, 32 GB microSD), 1 GbE, aarch64. Off-host Prometheus watchdog. + +## Storage appliances +- **TrueNAS Scale = VM 100 on beast** (4 vCPU, 34 GB) — serves `tank` over NFS (`/mnt/Tank/Media` → media-server `/mnt/media`). Physical disk backing = beast's disks (exact passthrough map TBD). +- **Synology** (.82) — external physical NAS (model TBD, no SSH). NFS `/volume1/PBS` → PBS datastore. + +## GPUs +- **2× NVIDIA Quadro P2200** (5 GB GDDR5 each) — physically in beast, **PCI-passthrough to Media-Server VM 101** (driver 580.159.03). Used for Plex / Immich / Tdarr transcode. +- iGPUs for QuickSync: compute4 (HD 630) + compute6 (Iris Xe) run Tdarr nodes. + +## UPS (NUT master = beast) +- **cyberpower1** — CyberPower CP1500PFCLCDa (1500 VA / 1000 W tower), ~31% load. +- **cyberpower2** — CyberPower CP1500PFCRM2U (1500 VA / 1000 W rack), ~12% load. + +## Guest / workload allocation + +**PVE VMs & LXCs** +- **beast**: 100 TrueNAS (4c/34G), 101 Media-Server (8c/17G/230G + 2 GPU), 102 dns-server LXC (Technitium), 103 nextcloud LXC (8c/9G), 104 nut LXC, 108 docker-node02 (8c/4G), 900 ubuntu-template (stopped). +- **compute2**: 106 docker-node01 (4c/6G), 107 ansible-control (2c/2G). +- **compute3**: 109 wazuh (4c/9G). + +**Host-level Docker on PVE nodes** (NOT LXC-wrapped — `pct list` empty on these): +- **compute4**: tdarr-node. +- **compute5**: node-exporter. +- **compute6**: tdarr-node, diun, vikunja, speedtest-tracker, ntfy, node-exporter, netdata, glances, watchyourlan, **linkding**. + +## Notable findings / TODOs +- ⚠️ **compute6 NIC runs at 100 Mb** (ethtool-confirmed; the K10 has 2.5 GbE) — bad cable/switch port. `speedtest-tracker` runs on this node, so its WAN results are capped/misleading. Fix the cable/port. +- **beast concentration / SPOF** — PVE master + NUT master + GPUs + TrueNAS + Media-Server + Nextcloud + DNS all on one machine. +- **Kernel skew** — docker-node01/02 + ansible-control on 6.8.0-111 (pending update); media-server 6.8.0-134; PVE nodes 6.17.13-pve. +- **Deferred (need root sudo):** serials/DIMM/SMART on beast, compute2, compute3, compute4, pbs; TrueNAS `tank` disk-passthrough map; Synology model.