My Hardware
The kit I actually use. Workstation, homelab, and the second-hand-first philosophy behind most of it.
Workstation
husker. My daily driver. Started life as a 2017 gaming rig, rotated to workstation duty when the next gaming build arrived. Runs Arch Linux like everything else.
| Spec | Value |
|---|---|
| Board | ASUS ROG Maximus IX Formula |
| CPU | Intel Core i7-7700K @ 4.2GHz (4C/8T) |
| RAM | 32GB DDR4 (4× 8GB @ 2133 MT/s) |
| GPU | NVIDIA GeForce GTX 1080 Ti (11GB) |
| Storage | 250GB Samsung 960 EVO (NVMe) + 1TB Samsung 850 EVO (SATA) |
| OS | Arch Linux |
Gaming rig
The current gaming build. Eventually rotates in to replace husker when the next one arrives.
| Spec | Value |
|---|---|
| Board | Gigabyte Z790 AORUS ELITE AX |
| CPU | Intel Core i5-13600K (14C, 3.5GHz base) |
| CPU Cooler | Deepcool AK620 |
| RAM | 32GB DDR5-5600 CL36 (2× 16GB Corsair Vengeance) |
| GPU | Palit GameRock OmniBlack GeForce RTX 4080 (16GB) |
| Storage | 2× Samsung 970 EVO Plus 1TB NVMe |
| Case | Fractal Design Meshify 2 |
| PSU | Corsair RM850x, 850W (80+ Gold, fully modular) |
| OS | Windows for now, Linux migration on the roadmap |
Homelab
Eight-node bare-metal Kubernetes cluster plus a NAS, sitting on a Cisco managed switch behind an OPNsense firewall. See Naming Scheme for how everything gets its name, and The LackRack for what it all sits in.
Compute
Eight Dell OptiPlex 7040 Micros, all identical form factor. Identical hardware everywhere makes cluster management dull, which is the point.
x86 means everything just runs. They’re silent by design (built for office desks, not server rooms). Enterprise-grade, so they’ll happily run for years. And cheap enough that if one dies I replace it for £42 without thinking about it.
| Spec | Value |
|---|---|
| Form factor | Ultra Small (182×178×35mm, ~1.2kg) |
| CPU | Intel Core i5-6500T (4C, 2.5/3.1GHz) |
| RAM | 8–16GB DDR4 (max 32GB, 2× SODIMM) |
| Storage | 256–512GB SSD (SATA 2.5” or M.2) |
| Network | 1× Gigabit Ethernet (Intel I219-LM) |
| Power | 65W external adapter |
Nodes
| Hostname | Role |
|---|---|
| defiant | Control plane |
| serenity | Worker |
| rocinante | Worker |
| outlawstar | Worker |
| enterprise | Worker |
| voyager | Worker |
| galactica | Worker |
| destiny | Worker |
Storage
moya (TrueNAS Scale)
| Spec | Value |
|---|---|
| Hardware | HP ProLiant MicroServer N40L |
| CPU | AMD Turion II Neo N40L (2C, 1.5GHz, 15W) |
| RAM | 8GB DDR3 (upgrade to 16GB pending) |
| Storage | 4× 1TB HDD (ZFS general pool, stripe) |
| Network | 1× Gigabit Ethernet |
| Exports | NFSv4 for Kubernetes PVCs |
The pool is a 4-disk stripe with no redundancy (i know). Any single drive failure loses the whole pool, so critical data is protected by external S3 backups via kopia.
I have a second machine, I’m considering making it a mirror but given most of the critical data is backed up anyway and the space is mostly unused.. It’s not a priority.
Network
| Hostname | Role | Hardware |
|---|---|---|
| iris | Firewall / gateway | Sophos XG 115w Rev 3 (OPNsense) |
| vinculum | Managed switch | Cisco SG220-50 (50× GbE) |
| midway | WISP client bridge | TP-Link TL-WR902AC |
The homelab sits on its own 172.16.1.0/24 behind iris. The home WiFi (192.168.0.0/24) is a separate network, no routing between them by design. Internet arrives over WiFi via midway, hits iris, then flows into vinculum which fans out to every node.
Rack layout
18U LackRack, front-rail view:
| U | Equipment |
|---|---|
| 1U | defiant + rocinante |
| 2U | serenity + outlawstar |
| 3U | enterprise + voyager |
| 4U | galactica + destiny |
| 5U | 24-port CAT6A patch panel |
| 6U | vinculum (Cisco SG220-50) |
| 7U | iris (Sophos XG 115w) + midway (TL-WR902AC) |
| 8–14U | empty, future expansion |
| 15U | andromeda (LLM laptop, on a 1U shelf) |
| 16–18U | clearance for the HP N40Ls on the table below |
Each 1U shelf holds two Dell Micros side by side. I used a modified version of this print.As the lack rack has thicker legs, it doesn’t allow you to use the full width you’d typically expect too, so I had to make these narrower.
The issue with them is, the support on the underside is okay but not great. So I use the passthrough plate to hold them straight. I migth look to redesign these properly with metal rods for further support embedded in the frame.

