Overview
Container-native virtualization (now called Red Hat OpenShift® Virtualization) allows you to run and manage virtual machine workloads alongside container workloads. It is a feature of Red Hat® OpenShift that allows you to run and manage conventional virtual machine workloads in Kubernetes workflows on Red Hat OpenShift.
Container-native virtualization is ideal for teams that are shifting to cloud-native application development and have a large investment in conventional VM technology. It supports the development of containerized applications by bringing virtualized application dependencies into the rich development environment of Red Hat OpenShift. Container-native virtualization enhances OpenShift by providing VM-based services.
What does container-native virtualization do?
OpenShift Virtualization makes it possible to migrate traditional virtualized workloads directly into development workflows within Red Hat OpenShift. This capability accelerates application modernization by:
- Supporting development of new, microservices-based applications in containers that interact with traditional virtualized applications.
- Combining conventional virtualized workloads with new container workloads on the same platform, making it easier to gradually divide monolithic, virtualized workloads into containers.
OpenShift Virtualization lets teams develop containerized applications faster by hosting VM-based workloads on the same platform as container-based applications. This feature supports the division of existing workloads, as well as continued use of virtualized applications that are dependencies for containerized, cloud-native applications. By managing virtualized workloads and containerized workloads as part of a single application development and life-cycle workflow, teams can manage and deploy applications that currently include VMs and containers directly from Red Hat OpenShift, with the option of moving more components of the application to containers over time.
How it works
When OpenShift 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 VMs will run in parallel on the same Red Hat OpenShift nodes as traditional application containers.
OpenShift Virtualization is a feature of Red Hat OpenShift, not a standalone product. It is available now in OpenShift 4.5. If you are a current Red Hat OpenShift customer you have access to it as part of your subscription through OpenShift Operators.
How is this different from other virtualization solutions?
Red Hat's virtualization solution includes Red Hat OpenStack Services on OpenShift®, which helps manage virtualization environments for datacenter and private cloud use cases for the host infrastructure — including networking, storage, and computing — and the VMs respectively. VMs running in container-native virtualization continue to use the same trusted Red Hat Enterprise Linux™ hypervisor, KVM, and Red Hat OpenStack Services on OpenShift.
In contrast, container-native virtualization is a feature offered as part of Red Hat OpenShift that lets developers import and develop with new or existing VMs alongside containerized applications they are building in Red Hat OpenShift Container Platform.
How does Red Hat help?
Container-native virtualization represents a continuation of Red Hat’s commitment to Kubernetes as the future of application orchestration and a common standard across the open hybrid cloud.
Our container-native virtualization solution, OpenShift Virtualization, is based on the upstream, open source KubeVirt project which is maintained and developed by an open source community including Red Hat engineers working alongside a team of peers from across the industry. Red Hat plans to continue participating in developing KubeVirt, especially as a part of our enterprise Kubernetes product, Red Hat OpenShift.