Sunday, November 14, 2021

Quicklook - Home Network Version 2

Raspberry Pi 4 case
Raspberry Pi 4 3D printed case
 The latest version of my home network was built in order to learn more about Kuberneties and clustering. It had the added advantage of unifying the processor type (arm64) across the network making automated administration slightly simpler. 

The primary core is a stack of Raspberry Pi 4 boards in custom 3D printed cases, loaded into a custom 6 inch (rather than 19 inch) rack. 

 Nocturna low speed fans were used to assist with cooling and airflow.

 


To store the various media files, backups and documents I decided to go with a clustered storage solution (clusters again!). 

I tried Ceph but found that the memory requirements exceeded the available memory on the ARM SBC boards I attached to the disk drives (Odroid HC2). 

I ended up using MooseFS and this worked out to be a good choice as MooseFS has been extremely stable both in operation and recovery from drive failures.

All systems run from 12V DC or 5V DC and will eventually run from a battery bank recharged by solar panels. 


Each 4TB disk in the storage cluster is housed in a heatsink and attached to an Odroid ARM64 single board computer. In effect this gives each drive its own 1GB network interface and an aggregate 8TB of IO bandwidth in ideal circumstances. 

To improve cooling I 3D printed cowls for each stack of 4 drives and installed low speed nocturna fans. Next step will be connecting the fans sensor lines so that it will gracefully shut down in the event that a fan fails.



I used the K3S Kubernetes distribution since it was optimized for smaller servers but still contained everything required for a full kubernetes stack. I've been able to run various workloads with no issues and run some of my permanent applications on K3S now. Its been a good learning experience, even if its a bit of an overkill for self hosting home applications.

No comments: