Open Source · 2026 Homelab Infrastructure

DIY Mini-Supercomputer

How much free compute is gathering dust in your closet? I pooled a pile of forgotten hardware — a few old laptops, a spare desktop, some mini-PCs — into ~52 vCPUs, ~82 GB of RAM, and ~3.2 TB of storage: one private cluster, for $0. This is the single USB stick that did it — flash it, boot any machine, and minutes later it's a node in your cluster.

View on GitHub ↗ Read the build guide ↗
Year
2026
Category
Open Source · Infra
Cluster
52 vCPU · 82 GB
Domain
Distributed Systems

Background

Most of us have a drawer or shelf of machines that are too good to throw away and too slow to use alone — a retired work laptop, a mini-PC, an old desktop. Individually they're e-waste in waiting. Pooled together, they're a genuinely useful private cloud.

The goal was a single, reusable provisioning artifact: build one USB stick, then provision any number of machines with it — no per-device clicking through installers, no bespoke setup. Flash once, reuse forever. The result is a self-serve way to turn heterogeneous, recycled hardware into a single Kubernetes cluster you control from anywhere.

How it works

One reusable image
The official Ubuntu 24.04 ISO is remastered (xorriso) into an unattended autoinstall image. Every machine installs itself identically, zero prompts.
Fully offline install
The OS install needs no network at all. Anything network-dependent is deferred to first boot, so even Wi-Fi-only laptops provision cleanly.
Tailscale mesh
Each node auto-joins a private mesh VPN on boot with a baked auth key, so it's reachable at a stable address regardless of flaky home networking.
One-command join
A fresh node becomes a cluster member with a single k3s-join nodeN — which also names the node and wires it to the control-plane.
Clone-safe identity
Fresh machine-id on every shutdown, unique throwaway hostnames, DHCP instead of baked static IPs — so the same image never collides across machines.
Laptops welcome
Wi-Fi credentials baked in (2.4 + 5 GHz), lid-close suspend disabled — so an old laptop runs happily as a headless server node.

Built with

k3s (Kubernetes) Ubuntu 24.04 autoinstall cloud-init xorriso Tailscale netplan systemd Bash

The cluster it built

52 vCPUs pooled
82 GB RAM
3.2 TB storage
4 nodes, 1 cluster

A Ryzen 7 9700X workstation as the control-plane, three Intel i5 mini-PCs as workers — all stitched into one k3s cluster over Tailscale, each one provisioned from the same USB stick in minutes. Adding the next machine is now trivial: flash, boot, join.

Why it matters

Beyond the compute, the project is a template for sustainable hardware reuse: a documented, reproducible path from a pile of mismatched, retired machines to a working private cluster — using only free tools and a weekend. The full build, including every bug fought and fixed along the way, is written up as an open guide for anyone to follow.

So — how much can you recover?

Go count the machines gathering dust: the laptop with the tired battery, the pre-pandemic desktop, the mini-PC you forgot you owned, that Raspberry Pi in a drawer. Every one of them is idle compute you already paid for. Flash one USB, boot them, join them, and watch a free cluster grow out of your junk drawer. What can you bring back to life?