Recently, the CNCF promoted KubeVirt from the sandbox to incubating project level. KubeVirt enables users to run virtual machine workloads on top of Kubernetes in a Kubernetes-native way.
KubeVirt can enable the migration of legacy applications by supporting building new applications with virtualization requirements. Currently, KubeVirt-based production-level solutions are at multiple organizations including Arm, CIVO, CoreWeave, H3C, and Kubermatic.
KubeVirt now supports live migration capabilities to maintain virtual workloads when their underlying compute nodes are put into maintenance or otherwise unavailable. With accelerated compute-intensive workloads through single VM GPU access, there is CPU pinning support and NUMA Topology passthrough. The important consideration of data protection is addressed with offline and online disk snapshots.
The recent release also includes SR-IOV support for high-performance networking and Multus support for multiple network interfaces attached to Virtual Machines. Supporting declarative host network configuration the new additions enable non-disruptive updates of the KubeVirt control plane and workloads.
KubeVirt was founded in January 2017 at Red Hat and has added contributors from Amadeus, Apple, CloudFlare, Containership, Giant Swarm, Gitpod, IBM, Kubermatic, Lacoda, NEC, NVIDIA, SAP, Solidfire, SUSE, and independent developers. Maintaining a consistent release cadence of over 30 releases, KubeVirt is complemented by the various other CNCF projects to extend its features.
Further to the above, we came across some interesting use cases of Open Virtual Network(OVN)/Open vSwitch(OVS) based network fabric with Kube-OVN, that credit the KubeVirt community for its different virtualization-related features.
To address challenges arising from running on bare-metal and classic virtualization problems (disk import), KubeVirt has different components. The KubeVirt Virtualization API and runtime help define and manage virtual machines in a Kubernetes cluster. There is containerized data importer for importing existing disks. To configure host networking, there is Cluster Network Add-on Operator. Using Host Path Provisioner the user can expose local storage. The deployment of KubeVirt is facilitated through Hyperconverged Cluster Operator.
Chris Aniszczyk, CTO at CNCF said,
As more organizations adopt cloud native modernization practices, Kubernetes is being stretched to run additional types of workloads outside of pure containers. KubeVirt fills a gap in the cloud native ecosystem for teams with VM based workloads side by side with containers and other workload types.
The tech community on Twitter also took a notice of KubeVirt’s graduation by retweeting, and reacting to the announcement tweet from Chris. Anthony Spiteri, senior technologist, Product Strategy at Veeam and HashiCorp Ambassador, tweeted "All KVM based hypervisors will see more of a rise over the next few years… but that has already been happening. Though it will be interesting to see how KubeVirt fits into this future."
More information related to KubeVirt can be found in the official announcement. API Reference and documentation to get started with KubeVirt is available here. For more information related to CNCF Graduation Criteria, visit this documentation.