0008 Diskless netboot for rackpi5
Context
SD cards are the least reliable component in the Pi fleet, and
rackpi5sits in the rack where card swaps are annoying.sporealready serves NFS/PXE for the lab.
Decision
rackpi5runs diskless. Its default boot is a stateless RAM image built from the flake (nix/images/pi5-ram.nix, therackpi5-ramconfiguration) and served over HTTP fromspore; the NFS-rootrackpi5configuration is the fallback tier.
Consequences
No local storage to fail; a reboot always boots a known-good image, and "deploying" means publishing a new image on spore.
sporebecomes boot-critical infrastructure — its NFS/PXE stack is scraped and alerted on by the folly monitoring stack.All rackpi5 state is ephemeral by design; anything worth keeping must live elsewhere.
Gotcha class to watch: DHCP/netboot identity mixups (a MAC swap between
dnsandrackpi5has bitten before).
Links
Linked references 5
ADR/0008 Diskless netboot for rackpi5 — stateless RAM image served from spore
NFS/PXE boot server — boot-critical for Hosts/rackpi5 (ADR/0008 Diskless netboot for rackpi5); monitored by folly.
Diskless: PXE-netboots the rackpi5-ram image from Hosts/spore and runs entirely from RAM (lsblk shows no disks; static hostname is rackpi5-ram). See ADR/0008 Diskless netboot for rackpi5.
Raspberry Pis: cloudpi4, homepi4, weatherpi4, dns, rackpi5 (diskless — see ADR/0008 Diskless netboot for rackpi5), spore (NFS/PXE server)
| Host | Purpose | Hardware | Notes |
|---|---|---|---|
| Hosts/cloudpi4 | utility Pi | Pi 4B 4 GB | still Ubuntu 22.04, not NixOS |
| Hosts/homepi4 | kiosk | Pi 4B 8 GB | Runbooks/Kiosk; use homepi4-wifi.lolwtf.ca |
| Hosts/weatherpi4 | kiosk | Pi 4B 8 GB | reach over Tailscale; Runbooks/Kiosk |
| Hosts/dns | DNS | Pi 5 8 GB | |
| Hosts/rackpi5 | rack status | Pi 5 8 GB | diskless — RAM image from spore (ADR/0008 Diskless netboot for rackpi5) |
| Hosts/spore | NFS/PXE boot server | Pi 5 8 GB, NVMe | boot-critical for rackpi5; monitored by folly |
| Hosts/radiopi0 | radio | Pi Zero W | unmanaged — Raspbian buster, Pirate Radio case + pHAT BEAT DAC |