$ lscpu --lab
The lab
This is the hardware the blog keeps talking about. Five Proxmox nodes, a Ceph pool measured in hundreds of terabytes, a 10GbE fabric with jumbo frames, three different NVIDIA generations, and a small fleet of Raspberry Pis doing the jobs that should never share a failure domain with everything else. It's over-built on purpose. That's the whole point.
captured July 2026 · addressing and VLAN details left out on purpose

# how it fits together
One diagram for the whole shape of it. Traffic comes in from the top, through the edge and the firewall, across the 10GbE core, and down onto the compute and storage that run the workloads. The Pi fleet hangs off to the side on purpose, so home automation keeps working when the cluster is down for maintenance.
# the cluster
| Node | CPU | Cores | RAM | GPU |
|---|---|---|---|---|
| pve-00 | AMD EPYC 7282 | 16C / 32T | 256 GB ECC | RTX 4070 Ti + GTX 1660 |
| pve-01 | Threadripper 2920X | 12C / 24T | 128 GB ECC | GTX 1080 Ti |
| pve-02 | Core i7-6700 | 4C / 8T | 64 GB | iGPU only |
| pve-03 | Core i7-6700 | 4C / 8T | 48 GB | iGPU only |
| pve-04 | Core i7-7700 | 4C / 8T | 32 GB | iGPU only |
| totals | 5 nodes | 40C / 80T | 528 GB | 3 discrete GPUs |
Two tiers on purpose. pve-00 and pve-01 are the heavy compute and GPU hosts, both on ECC memory, with discrete NVIDIA cards passed through to Kubernetes workers. The three HP small-form-factor boxes are consumer hardware doing honest work as quorum and Ceph OSD hosts. Not everything needs to be a server to be useful.
# three GPU generations
Three NVIDIA architectures, each passed straight through to a Talos Kubernetes worker. The newer cards get sliced up with MPS so several workloads can share them; the 1080 Ti stays dedicated. Transcode, local inference, and the occasional experiment all land here.
| Card | Architecture | Host | Passed to |
|---|---|---|---|
| RTX 4070 Ti | Ada Lovelace | pve-00 | K8s GPU worker (MPS shared) |
| GTX 1660 | Turing | pve-00 | K8s GPU worker (MPS shared) |
| GTX 1080 Ti | Pascal | pve-01 | K8s GPU worker (dedicated) |
# storage
Everything sits on Ceph, on the order of 230 TiB raw spread across every node. Spinning disks make up the bulk pool, NVMe backs the fast pool and local VM storage, and a couple of Intel Optane drives handle metadata. The big NVMe counts hang off ASUS Hyper M.2 carrier cards using PCIe bifurcation. This is the layer that taught me the most, mostly the hard way, which is a story the blog gets into. Backups run to a dedicated Proxmox Backup Server, because "I have backups" and "I have tested restores" are not the same sentence.
# the fabric
A Brocade ICX6610 sits at the core, with 10GbE SFP+ uplinks to every node and jumbo frames end to end. Each node runs a two-bridge, VLAN-aware layout over two 10GbE links: one trunk carries tenant and VM traffic, the other isolates the latency-sensitive storage and cluster replication on its own physical port. That split is what lets a firewall VM live-migrate between nodes without dropping a packet. Routing between the dozen or so segments is handled by a high-availability OPNsense pair with CARP failover.
The per-node 10GbE cards are a museum of whatever was good and cheap at the time: Intel X550, Mellanox ConnectX-3 Pro, and Chelsio T320. They all do the same job. Edge switching and wireless are UniFi, and an APC UPS with a network card keeps the rack alive long enough to shut down cleanly.
# the pi fleet
A handful of Raspberry Pis run the things that should keep working even when the cluster is down for maintenance, mainly home automation and out-of-band tooling. They are named after Culture ships, which felt appropriate for machines whose entire job is to be quietly competent.
| Host | Model | Storage | Role |
|---|---|---|---|
| ocisly | Raspberry Pi 5 (16 GB) | 2 TB NVMe via PCIe HAT | Home automation primary |
| mistakenot | Raspberry Pi 5 (8 GB) | 512 GB NVMe | IaC toolchain and edge services |
| flere | Raspberry Pi 4 (4 GB) | microSD / USB | Lightweight services |
They share a small bag of USB radios that move between nodes as needed: a Z-Wave controller, a multiprotocol Zigbee/Thread stick, and a Google Coral TPU for edge ML.
# what it runs
The hardware is only half the story. Here's what runs on it, grouped and not exhaustive. It drifts as I add and retire things.
Plex, the full *arr automation stack, request management, and download clients pinned behind a VPN.
The reason any of this started.
Home Assistant, Frigate NVR with Coral TPU detection, Music Assistant, and a bag of Zigbee, Z-Wave, and Thread radios.
Runs on the Pi fleet so it survives cluster maintenance.
Nextcloud, a recipe box, a wiki, and Penpot for design.
The stuff I'd otherwise rent from someone else.
Self-hosted GitLab with CI runners, Prometheus and Grafana plus Graylog for observability, Authentik for SSO, Infisical and Vaultwarden for secrets, Umami for analytics, and a public status page.
The boring, important layer that keeps the rest honest.
# chassis and power
| Node | Chassis | PSU |
|---|---|---|
| pve-00 | Rosewill RSV-L4412 4U (12 hot-swap bays) | EVGA SuperNOVA 1600 P2 (Platinum) |
| pve-01 | Corsair Carbide 330R mid-tower | EVGA SuperNOVA 850 T2 (Titanium) |
| pve-02/03/04 | HP EliteDesk 800 G2 SFF (stock) | HP stock SFF |
Want the story behind all this instead of the spec sheet? The blog has the how-it-got-here and the incidents that shaped it.