Microsoft launches Akri bringing Kubernetes to Edge Devices
Microsoft has launched Akri, a new open-sourced tool that brings Kubernetes to network edge devices. Akri provides an abstraction layer like CNI but removes the tasks of finding, using, and monitoring the availability of devices like cameras and sensors.
Akri is the acronym for "A Kubernetes Resource Interface for the edge." The word Akri is of Greek origin and means ‘edge’.
Akri uses the Kubernetes device plugin framework to detect nodes that have access to leaf devices.
Four components make up Akri- two CRDs, a custom controller, and a device plugin implementation. The first custom resource allows you to tell Akri the leaf device that you are looking for, the device plugin framework looks for it, and the controller allows you to use it.
Currently, Akri supports two protocols, udev to discover things in the Linux file system and ONVIF for IP cameras.
Akri can currently be deployed on your edge cluster using MicroK8s, K3s, AKS-HIS, or other Kubernetes distribution.
Microsoft's new Kubernetes-native tool Akri can help Kubernetes work with edge devices to find and use leaf devices like IP cameras, sensors, controllers, and microcontroller units. These leaf devices are vital to edge computing that brings processing resources to outer lying devices. However, edge devices can often be too small to run Kubernetes themselves, and that's where Akri steps in.
Last month, the CNCF Technical Oversight Committee approved KubeEdge to expand cloud capabilities to the edge. Like Akri, KubeEdge is also Kubernetes-based and provides the fundamental framework for network, app deployment, and metadata synchronization between the edge and the cloud. Another similarity between Akri and KubeEdge is that both are open-sourced platforms. With KubeEdge, volumes of data can be secured as well as processed locally. It cuts down the bandwidth requirement between Edge and Cloud, increases the response time, and safeguards data privacy.
To get started with Akri, you must first decide what resources you want to discover and whether Akri supports the protocol to discover such resources. You must also have Kubernetes version 1.16 or higher and kubectl installed. Also, all nodes must be Linux.
Kate Goldenring, Software Engineer at Microsoft, announced the launch of Akri in an official blog post. She wrote:
Today, Microsoft is proud to share the Akri project, designed to electrify the edge for Kubernetes users. Akri is a new open source project that exposes these leaf devices as resources in a Kubernetes cluster. Akri, meaning "edge" in Greek, can also be read as an acronym, as Akri aims to be "A Kubernetes Resource Interface for the edge.Kate GoldenringSoftware Engineer, Microsoft