Canonical’s MicroK8s gained popularity as an IoT, appliance and developer workstation Kubernetes, with a very small footprint suitable for edge devices and laptops. MicroK8s 1.16 added clustering, enabling rapid deployment of highly standardised small K8s clusters. The next step is to ensure high availability of these clusters, using Canonical’s Dqlite distributed SQL engine. Dqlite removes process overhead by embedding the database inside Kubernetes itself, and reduces the memory footprint of the cluster which is important for IoT.
RAFT and SQLite are well-understood best practices for distributed and embedded systems. Using Dqlite as the Kubernetes datastore simplifies the deployment of a resilient K8s cluster.
Telco and retail edge applications can now achieve high reliability at very low cost on x86 or ARM commodity appliances such as clusters of Intel NUCs or Raspberry Pi boards.