KubeVirt Is Key to Protecting VM Investment

Virtual machines or containers? Containers or virtual machines? This is a discussion going on in many organizations, but the reality is that it’s not a matter of either/or. Rather, it’s all about enabling legacy applications with cloud-native capabilities that enhance DevOps and pave the way for faster time-to-market at a cost savings.

So, how do organizations balance their trusty legacy VMs with their cloud-native future? In a word, Kubernetes. Well, two words, actually: Kubernetes and KubeVirt.

Virtual Machines Past, Present and Future

Most companies have made a huge investment in virtualization, and it has certainly paid off in terms of decreased costs and increased flexibility. In fact, virtualization transformed the data center. However, containers–with their superior agility, portability, performance and resilience–are enabling organizations to accelerate the speed of software delivery and innovation (not to mention vastly improve the developer experience).

According to 2021 research by the Cloud Native Computing Foundation, 93% of respondents are currently using or planning to use containers in production, and 96% are either using or evaluating Kubernetes. But the fact remains that more than 80% of workloads are still in virtualized environments. Organizations with legacy systems are unlikely to scrap all of their virtual machines and start over with containers, but, in an increasingly containerized world, companies must focus on protecting their virtualization investment while evolving toward a cloud-native future.

Kubernetes pretty much ushered containers into the mainstream, and, using the open source KubeVirt project, it can be leveraged to balance an organization’s virtual machines with its cloud-native containers. 

KubeVirt, which became a CNCF incubating project in April 2022, is a virtual machine management system that enables users to run virtual machine workloads on top of Kubernetes in a Kubernetes-native way to run VMs alongside containers on Kubernetes clusters.

The benefits cannot be overstated for companies that are looking to modernize their virtual machine workloads but are overwhelmed by the thought of doing it all at once. 

KubeVirt provides a unified platform that developers can leverage immediately to build and modify container and VM-based applications, or to combine the two types. Over time, and when it makes sense, developers can containerize virtualized applications by decomposing them into microservices. But, importantly, they can leave VM-based apps that are chugging along quite nicely alone. By supporting all of these iterations, KubeVirt provides a very practical cloud-native pathway. 

In effect, virtualization itself evolves to become a native Kubernetes citizen, gaining all of the benefits of the work being done not only in the Kubernetes community, but with the entire CNCF project ecosystem. Innovations made on these platforms can instantly be made available to virtual machines on KubeVirt. 

Anatomy of KubeVirt

The open-source KubeVirt project enables VMs to be managed as pods inside a Kubernetes cluster. The Kubernetes Custom Resource Definitions (CRD) API is used to extend Kubernetes by adding resource types to VMs and sets of VMs. Running in regular Kubernetes pods, KubeVirt VMs have access to standard pod storage and SDN network access, in addition to directly attaching to external networks. In addition, KubeVirt VMs can be managed using standard Kubernetes tools.

As listed by CNCF, key KubeVirt components include:

  • KubeVirt Virtualization API and runtime, to define and manage virtual machines in a Kubernetes cluster
  • Containerized Data Importer, for importing and managing the life cycle of VM disks
  • Cluster Network Add-on Operator, for configuring host and Kubernetes networking for use by virtual machine pods
  • Host Path Provisioner, for exposing host local storage to Kubernetes’ PV/PVC paradigm
  • Hyperconverged Cluster Operator, which provides an opinionated way of deploying KubeVirt

KubeVirt originally joined the CNCF as a sandbox project just two years ago. Since then, a steady stream of updates has added capabilities improving the technology’s usability, functionality and security. The project has also been extended to include smaller projects that help address virtualization challenges such as disk import, as well as issues with running on bare metal. KubeVirt projects added to the ecosystem include Cluster Network Add-on Operator (CNAO), to manage the life cycle of the host network, and Node Health Check for providing virtual machine high availability.

Diversifying VM Investment

Solutions like KubeVirt are key to meeting the goal of modernizing VMs over time but still maintaining control of existing VMs and containers. 

They are also enabling developers to dive more deeply into Kubernetes and expand their expertise with the orchestration platform, a win-win situation if there ever was one. Developers get to build out their Kubernetes skill set, which is in high demand among employers. (Case in point: As of this writing, a search on “Kubernetes” on LinkedIn yielded almost 70,000 job openings.) And organizations gain a competitive advantage as their development team continues to hone its ability to leverage Kubernetes.

Organizations that need Kubernetes support can consider partnering with an established and reliable provider that integrates Kubernetes, KubeVirt and other compelling open source projects (including the serverless-focused Knative) with enterprise-level support, security and full-stack automated operations. A history of innovation and commitment to the open source community are also compelling concerns for any partnership of this kind. 

Kubernetes orchestration continues to expand in use and usefulness in the enterprise as companies and technology providers evolve the technology with projects such as KubeVirt. By leveraging Kubernetes to protect and modernize their significant virtualization investments, organizations can smooth their cloud-native path.

Sachin Mullick

Sachin plays a leading role in the OpenShift Product management team for Red Hat Cloud Platforms delivering infrastructure solutions for hybrid cloud and edge scenarios. Sachin has worked in the technology industry since 1998 and has several key patents in NAS and file system technology. Sachin holds an Executive MBA in General Management from Boston University, and Masters in Computer Science from University of Kentucky.

Sachin Mullick has 1 posts and counting. See all posts by Sachin Mullick