Kubernetes running on small, quiet, always-on nodes.
- 3 × Raspberry Pi
- Kubernetes
- Pi-hole / AdGuard
Hardware / the workbench
A VAIO at eleven, a lot of family machines in between, and now a small Kubernetes cluster in the house. The answer used to be on the board.
01 / The first laptop
The first machine I opened was a VAIO with an old Pentium running at 0.6 GHz and 256 MB of RAM. The display connector had a false contact. The screen worked, then it didn't, then it worked again if you held it at the right angle — the kind of fault that makes you suspect everything except the actual problem.
I didn't have internet. I had a week, a multimeter, and a lot of guesses. I traced the connector, checked continuity, cleaned the contacts, and eventually resoldered the joint for stability. It worked.
The internet wasn't the answer. The board was.
That was the moment hardware stopped being a black box. It was also the beginning of a pattern: open it, understand it, fix it, then do it again on something harder.
02 / The years between
After the VAIO came the usual trail: family laptops that needed cleaning, reinstalling, upgrading, or rescuing. Then building machines, setting up networks, recovering data, and learning why the cheapest power supply is not a bargain.
This was long before the AI era. The answer came from reading the board, trying the obvious thing, breaking it, and trying again. I didn't know the word “failure domain” yet, but I was already learning it one dead machine at a time.
That habit never went away. It is the same one I use on software now: understand the system before changing it, then make the change small enough to reverse.
A Lenovo LOQ that does the daily work: code, builds, music, and the occasional game.
Lenovo LOQ
AMD Ryzen 7 7435HS · 3.10 GHz
NVIDIA RTX 4060 Mobile
16 GB · 6000 MHz
1 TB NVMe
Windows + Linux, depending on the job
The always-on layer is a cluster of Raspberry Pis running Kubernetes. The heavy machine wakes up when it is needed, and the GPU work gets split between two cards.
Kubernetes running on small, quiet, always-on nodes.
Ryzen 7 2700X and 32 GB DDR4, woken by Wake-on-LAN.
TrueNAS, Jellyfin, and the services the house actually uses.
Raspberry Pi cluster · Kubernetes
Wake-on-LAN, on demand
AMD Ryzen 7 2700X
NVIDIA RTX 2060
NVIDIA GTX 1050
32 GB DDR4 · 2666 MHz
2 × 2 TB HDD + 256 GB NVMe
TrueNAS, Jellyfin, Pi-hole/AdGuard, Kubernetes workloads
The Plex scheduling is the part I like most. A custom Docker scheduler watches the load. When the 1050 is handling too many users, the work moves to the 2060. The server itself does not stay on all day; Wake-on-LAN brings it up when a workload needs it. It is a small system, but it has real failure modes, real power constraints, and real users — my family.
Find the failure domain before you replace the part. The same rule applies to a service and a display connector.
Power and thermal budgets are not optional. Neither is the performance budget.
Document the weird fix. Future-you will not remember why the cable is routed that way.
Test the unhappy path. A machine that boots is not the same as a machine that survives.
The longer version
The same curiosity runs through the software work. If you need someone who is comfortable with the whole stack — including the machine it runs on — that is the job I want.