Tech Topic

KubeVirt and container-native virtualization

Deploy, manage, and use virtual machines in OpenShift projects as easily as application containers.

What is container-native virtualization?

Container-native virtualization lets developers bring virtual machines (VMs) into containerized workflows by running a virtual machine within a container. By combining these two technologies into a single management platform, organizations take advantage of the simplicity and speed of containers and Kubernetes while still benefiting from the applications and services that have been architected for virtual machines.

VM workloads on OpenShift

Container-native virtualization acknowledges that many organizations are using both container and virtual machine technologies today and delivers an efficient process to manage both in one centralized platform.

Learn more: 

Container-native virtualization on OpenShift Container Platform



What is KubeVirt?

KubeVirt is the open source project that makes it possible to run virtual machines in a Kubernetes managed container platform. KubeVirt delivers container-native virtualization by leveraging KVM, the Linux Kernel hypervisor, within a Kubernetes container. KubeVirt provides services like those associated with traditional virtualization platforms, providing the best of both mature virtualization management technology and Kubernetes container orchestration.  Started by Red Hat, KubeVirt is now a CNCF Sandbox project.

kubevirt diagram

Making virtualization Kubernetes-native

Learn more: 

Getting started with KubeVirt containers and virtual machines together

A first look at KubeVirt

Deploy a virtual machine with KubeVirt



How will container-native virtualization work with Red Hat OpenShift? 

Container-native virtualization is a technology preview feature within Red Hat OpenShift. When container-native virtualization is enabled for a Red Hat OpenShift cluster, developers can create and add virtualized applications to their projects from the service catalog in the same way they would for a containerized application. The resulting virtual machines will run in parallel on the same Red Hat OpenShift nodes as traditional application containers.

Container-native virtualization adds new objects to your OpenShift Container Platform cluster via Kubernetes custom resources to enable virtualization tasks. These tasks include:

  • Creating and managing Linux and Windows virtual machines.
  • Connecting to virtual machines through UI and CLI tools.
  • Importing and cloning existing virtual machines, including VMware virtual machines.
  • Managing network interface controllers and storage disks attached to virtual machines.
  • Live migrating virtual machines between nodes.

Install container-native virtualization



What are the benefits of container-native virtualization? 

Container-native virtualization enables businesses to deliver a platform that is capable of:

  • Faster time to market: rearchitect applications as you go, no heavy uplift or requirement to convert to cloud-native applications all at once.
  • Reduced cost: Avoid unnecessary refactoring of applications and instead build services with the right underlying platform for your business needs with existing resources.
  • Simplified management: Reduce overhead by simplifying the management of virtual machines and containers with a single platform.

Container-native virtualization is ideal for teams that are shifting to cloud-native application development and have a large investment in conventional virtual machine technology.

OpenShift Virtual Machine screenshot



Get started

Install container-native virtualization

See container-native virtualization in action