Now that I want to use the RK1s in my Turing Pi to host a Kubernetes cluster I have a few different options on how to do it.

Ubuntu

My goto is usually Ubuntu because I know how to use it. I can configure it using Ansible and debug it when things stop working, so of course I would use it. I didn’t really think about it.

This time I’m using RK1 modules, which are powered by Arm, and don’t have “official” Ubuntu images. The ones it does have are locked to Ubuntu 22.04, or are a community effort, and reading into it all made me question what I really needed.

K3s

K3s is an obvious choice for running Kubernetes on low powered machines because it’s a stripped back version of Kubernetes, containing only what it needs to run and nothing else.

I like the sound of this approach; it’s made me wonder if I really need Ubuntu for this.

Talos

Enter Talos, a secure, immutable, minimal OS that just runs Kubernetes.

Instead of the almost 3,000 binaries included in Ubuntu, Talos has only 12, and with those you can run a distributed Kubernetes cluster on bare metal.

There’s even an official “overlay” that adds Rockchip support, which includes my RK1s.

Sure, it won’t all be plain sailing, and there will be plenty of things to learn along the way, but the reasons mentioned above are why I’m currently re-flashing my RK1s from Ubuntu to use Talos instead.