Project One

Project One: Building a server rack

Well, lets start with the situation my hardware has started out.

At the beginning my website was hosted on a single Raspberry Pi 3, that was just sitting on my desk right next to me. Abd that was about it. Well, this website is still hosted by that same Raspberry Pi 3 (And over Wifi, disgusting I know). But I have made some improvements. It is currently mounted in a Rack enclosure, that can fit six Raspberry Pis in 2U in a 10inch Rack. That enclosure still sits on my desk right next to me lol. Together with a 10 inch 8 Port Gigabit switch I bought ages ago for some reason I don't remember. But hey, thats handy now I guess. Here a picture of the current state of things as of writing this:

no rack but at least rack mounteable hardware

The next planned step would be to get a nice 10 inch rack to mount the components. Together with getting a Raspberry Pi 5 4Gb or 4 4Gb. As well as wire the switch up to have a wire connection between the server and the internet. For now the Pi 3 is good enough for hosting this site but I would like to have something more powerful in the future.

Update 1:

The Pi running this website is finally not connected over Wifi anymore! Furthermore, I connected the entire switch to my home network and the Pi as well as another machine to it.

The Pi enclosure also got a slight update. I designed a few parts in CAD and built in two 80mm fans as well as a 5.5mm Barrel Jack on the back to have airflow for the Pis, once everything will be rack mounted. A single Pi 3 doesn't really need that, but since I hope to have it densly packed with Pi 5s, that would definitely help with their thermals!

And regarding Racks! I was finally able to order a DeskPi Rackmate T1, which should be delivered soon and will house this and future hardware as well as a minecraft server(OHHHH, another project dropped that shall soon receive some documentation on here) in a neat little(somewhat) package. But unfortunately it isn't here yet lol so I will update once that happened.

still no rack but more cables and lots more blinky lights :3

Now the next plan is to wait until the rack arrives and put everything in it!

Update 2:

THE RACK FINALLY ARRIVED! Well, lets calm down for a second. Soooo, I ordered a rack, specifically a RackMate T1. That is an 8U 10 inch rack, that comes with a nice assortment of shelves and blank pannels right out of the box. As you can see in the picture below, thats mostly what I filled it up with for now, besides my 8 port 1Gbps switch and the 3d printed 2U Raspberry pi shelf. On top of that sits a 2012 Mac Mini on one of the provided rack shelves. and in the top there are two unpowered Raspberry Pis, one is a model A+ and the other a 3B that I butchered the USB and ethernet ports off of.

FINALLY A RACK TO MOUNT MY STUFF IN!

So, as you can see, mostly the rack is still empty space. So the next update will be about compute! I plan on getting my hands on a Turing Pi 2, that I would like to use as a cluster board for kubernetes. The plan would be to move this website from the single Raspberry Pi 3 thats hosting it so far, on that cluster, together with some other services. Maybe even something like a public minecraft server?!

Update 3:

Well, this update is somewhat twoish updates in one I guess?

First of all, the Turing Pi 2 I ordered finally arrived! And when it came to putting it in the rack, I decided to reorder everything a bit, as seen in the next picture.

A wild Turing Pi 2 appeared!

I decided to put the Turing Pi on the very Top, mostly for ventilation. If you look towards the upper part of the rack you'll see an 80mm fan that is connected to the Turing Pi via 3Pin connector. Currently its set to 5V even though its a 12V fan, simply to cut down on noise and because it works well enough. How ever, regarding compute, you can see that there is only a single node installed. Its simply the first one that I bought. A raspberry Pi CM4 with 8GB of RAM and 8GB of eMMC. You might wonder about this weird configuration? and for good reason. compared to the amount of storage that RAM just looks rediculous. BUT its not without reason. Even though its stuck in the slot for Node1 in this picture, It is intended to be Node 3 (as you will see it be further down) since the PCIe Bus of Node3 is connected to a SATA controller.

And now the configuration starts to make sense. It doesn't need to have lots of eMMC since it will only need enough for Raspberry Pi OS lite as well as a simple NFS server that will host a network share for the other three nodes. The RAM on the other side is that high to have some capacity for RAM caching.

But lets get to the "second" part of this update. I got a CM5! One with 4GB RAM and 16GB eMMC. And my god, was it annoying to get working. You see, the CM4 was easy to just flash via the Turing Pi 2 web interface in a matter of seconds. With the CM5 on the other hand, I always got an error saying that the Module either has a USB interface that is undetected or unsupported (if I recall correctly) so I had to flash it via my Windows (disgusting I know) PC. That required me to install and run the rpiboot utility. But hey, once I figured all of that out, it was quite straight forward.

And all of this resulted in this:

Nice, finally more Nodes then one!

I know, I know. The picture aint to great. But as you can see in it, the cluster is finally actually, well, a cluster! It has multiple nodes and they are already in their final slots with the CM4 now being node 3 and the CM5 being node 1. The SSD under the Turing Pi is currently connected to node 3.

Future Plans:

First of all: Hardware. There are two more slots to fill for Node 2 and Node 4. So far the plans are quite simple in this regard. Node 2 will get another CM5 with 4GB RAM and 16GB eMMC, while Node 4 will hopefully be filled with an NVIDIA Jetson. And there are two reasons why: First, because I want to use the builtin NVMe slots on the back and from the Xavier up, they actually have the amount of PCIe lanes to do that. And second, because I would love to have a decent amount of neural compute to play with. Maybe to host some local llm, aybe to do some image recognition. Tbh. I do not know yet. But I want to :3

And now Software, well part of that I already said in that last paragraph. But lets talk more general. I said cluster a few times already, though what does that mean? In my case, Kubernetes. That will be the software that I am gonna use to manage this 4 node cluster, that might get some more nodes in the future even! To be more precise, I will install k3s, a lightweight version of Kubernetes that is made especially to run on things like Raspberry Pis and other ARM SoMs.

Is a smol leetol bnuyyy

Thank you for visiting :3