Canonical optimizes mini-Kubernetes for Raspberry Pi

Get a free Techzine subscription!

Canonical has made MicroK8s, its simplified version of Kubernetes, suitable for the Raspberry Pi and Nvidia Jetson. This allows less advanced users to practice with Kubernetes and build container clusters for IoT and edge computing applications, for example.

MicroK8s is a stripped-down and simplified version of Kubernetes that is intended to be quick to install and easy to upgrade and to provide a high level of security. Like the software that should control MicroK8s, MicroK8s itself is contained in a container. It is available for download for Linux, macOS and Windows.

By default, the software is set up according to the most common settings of Kubernetes, so users can quickly have their MicroK8s cluster up and running. All this makes the system suitable for beginners and users who want to deploy Kubernetes on a small scale.

Memory usage significantly reduced

The latest version of MicroK8s is now also capable of running on single-board computers like the Raspberry Pi or the Nvidia Jetson, so you can add such systems to your MicroK8s cluster as well. To do this, Canonical reduced MicroK8s’ memory usage by 32.5 percent. In a blog post, Canonical explains how they managed to achieve this.

Originally, MicroK8s consisted of the full Kubernetes package but compiled into a Snap container. This resulted in a package of 218MB, which once unpacked and running took up 800MB of memory. By packaging all binaries used for compiling into a single binary, the package size was reduced to 192MB, and, most importantly, memory usage was reduced to 540MB. This leaves much more memory capacity for applications on devices with only 1GB of ram. Canonical hopes to reduce memory usage even further in future versions.

Availability

MicroK8s is available for download from the project website. Version 1.21 of the software is compatible with Kubernetes 1.21 and is available as a Snap from Snapcraft.