House of Raspberry Pi's

January 25, 2021 3 minutes

My homelab constitutes of almost exclusively Raspeberry Pi’s. You might be thinking it can’t be much of a homelab with just RPi’s but I’m hoping to surprise you. I love Raspberry Pi’s because they are extremely power efficient and good value for money.

Raspberry Pi Cake Router

Traffic shaping is a premium router feature, usually limited to “prosumer” and business routers. The reality is that most traffic shaping is not actually that great. A simple aria2 download or a torrent will saturate both PFSense and Ubiquiti based routers, which at best use fq_codel Smart Queue Management (SQM). Unless they cap each client to a max bandwidth, they won’t be able to balance multiple users properly. The crème de la crème of traffic shaping is the appropriately named Cake which can peer into the NAT table and effectively load balance an unrestricted torrent client while keeping the ping of other clients intact. Cake is built in to modern Linux kernels and unsurprisingly goes great with Raspberries. OpenWRT supports Cake, but it’s relatively simple to setup a Raspberry Pi as a router from scratch if you already have a managed switch. I am looking forward to writing an article about provisioning a router Pi with all the creamy features and advantages.

Raspberry Pi Kubernetes Cluster

The good folks at Raspbernetes inspired me. This blog is actually served on a Kubernetes cluster, with an image build by a CI running in the cluster, with code commited to a git repo on the cluster.

You can see my full the Gitops-y manifests I use to privision it here:

Network - managed by raspberries

My network is composed of Omada access points and POE switch. In theory the access points could be RPi’s but that would be a waste of processing power and RPi’s aren’t designed with peak WiFi performance in mind. The network is however managed by the Omada controller running on the RPi’s cluster! The Raspberry Pi cluster helps coordinate the access points to navigate clients towards to hop and roam across the AP’s with 802.11k/v for extra smooth roaming.

What’s Next

Currently I have Reolink camera’s because they are cheap and great, but in theory one could create RPi’s cameras and sensors. Object (including human objects) detectoin is of course performed by the raspberry pi’s and notification are sent out by them through home assistant. That’s all for now, but I’ll make sure to update this article with new additions and links to how-to’s as I write them.