Edit

Share via


How to install IoT Edge on Kubernetes

You can install IoT Edge on Kubernetes using KubeVirt technology. KubeVirt is an open-source project from the Cloud Native Computing Foundation (CNCF) that provides a Kubernetes virtualization API and runtime to define and manage virtual machines.

Architecture

Screenshot showing IoT Edge on Kubernetes with KubeVirt.

Note Description
1 Install KubeVirt custom resource definitions (CRDs) into the Kubernetes cluster. Like the Kubernetes cluster, management and updates to KubeVirt components are outside the purview of IoT Edge.
2️ A KubeVirt VirtualMachine custom resource defines a virtual machine with required resources and a base operating system. A running instance of this resource is created in a Kubernetes pod using KVM and QEMU technologies. If your Kubernetes node is itself a virtual machine, you need to enable nested virtualization to use KubeVirt.
3️ The environment inside the QEMU container is like an OS environment. IoT Edge and its dependencies (like the Docker container engine) can be set up using standard installation instructions or a cloud-init script.

Sample

A functional sample for running IoT Edge on Azure Kubernetes Service (AKS) with KubeVirt is available at https://aka.ms/iotedge-kubevirt.