overview

with the announcement of the RaspberryPi-4B, i decided that it would be an inexpensive and fun way to learn Kubernetes by building an foureight node cluster, with Rancher’s k3s, hence raspberry pik3s or pik3s. octopik3s.io was registered as a place to show graphs, logs, workloads, and whatnot: it will run on the cluster, so it might not be available. static site content will eventually live in another repo…

goals

  • learn RaspberryPi
  • learn some systems/hardware C programming
  • learn Kubernetes
  • create a home ‘cluster’, automate it, and
    • learn Terraform and Go
    • improve Python and Ansible
  • create pretty graphs with Zabbix, Promethues, Netauto, and Grafana
  • run folding@home
  • profit?

hardware

what started as a budget build, turned into something…a lot more expensive.

specs

  • 32x Broadcom BCM2711 (ARM v8) 64-bit cores @ 1.5GHz
  • 32GB LPDDR4-3200 SDRAM
  • non-blocking gigabit ethernet interconnect
  • 8:1 uplink oversubscription

software

when i started this project, my choices for a 64-bit o/s for arm64 were ubuntu and fedora; i prefer debian-based distros, so i downloaded the ubuntu image.

Rancher’s K3s was chosen for being a lightweight, fully compliant Kubernetes distribution.

etcd and calico were chosen because of the cross-over with work. getting well ahead of myself, i will likely also use (something built on) envoy proxy.