I bought a bunch of hardware to learn about building distributed applications.
Hardware
You’re looking at an M2 Mac Mini, Raspberry Pi 3B, and a pair of Orange Pi 5:
M2 Mac Mini
The Mac Mini was easy to set up. You just plug it in, connect to Wi-Fi, and it’s ready to go.
I’ve updated the Mac Mini to use Asahi Linux! The setup was also fairly easy:
curl https://alx.sh | sh
Orange Pi 5
I followed Crosstalk Solution’s Guide to set up the Orange Pi 5.
Components
- Board: Orange Pi 5 16GB
- Cooling: Geekworm Heatsink
- Storage: Toshiba 128GB M.2 2230 PCIe NVMe
- Power: Orange Pi 5V4A USB C Power Supply
- Operating System: Armbian
Raspberry Pi 3B
I followed How to install Ubuntu Server on your Raspberry Pi to set up the Raspberry Pi 3B. It was surprisingly easy; Raspberry Pi makes it effortless to set up an SD Card.
Components
- Board: Raspberry Pi 3B
- Cooling: Geekworm Heatsink
- Storage: 128GB Micro SD Card
- Power: Raspberry Pi Universal Power Supply
- Operating System: Ubuntu Server
Kubernetes
Lastly, we need to put these computers to work.
Luckily a Kubernetes distribution called k3s is easy to install!
kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
betty Ready control-plane,master 10h v1.24.8+k3s1 192.168.1.abc <none> Fedora Linux Asahi Remix 39 (Thirty Nine) 6.6.3-411.asahi.fc39.aarch64+16k containerd://1.6.8-k3s1
shirley Ready <none> 313d v1.24.8+k3s1 192.168.1.ijk <none> Armbian 23.11.1 jammy 5.10.110-rockchip-rk3588 containerd://1.6.8-k3s1
barbara Ready <none> 313d v1.24.8+k3s1 192.168.1.xyz <none> Armbian 23.11.1 jammy 5.10.110-rockchip-rk3588 containerd://1.6.8-k3s1
Now we have a Kubernetes cluster!