Run Virtual Machines on Kubernetes - Rafay Product Documentation
Overview
In this self-paced exercise, you will install KubeVirt on an existing cluster in order to run virtual machines alongside containerized applications.
About KubeVirt
KubeVirt is a Cloud Native Computing Foundation (CNCF) project. It leverages the fact that the kernel-based virtual machine (KVM) hypervisor is itself a Linux process that can be containerized. KubeVirt enables KVM-based virtual machine workloads to be managed as pods in Kubernetes. KubeVirt allows you to bring your VMs into a modern Kubernetes-based cloud native environment instead of forcing you to perform an expensive and time consuming refactoring initiative.
- KubeVirt brings K8s-style APIs and manifests to drive both the provisioning and management of virtual machines (VMs) using simple resources.
- KubeVirt provides standard VM operations (VM life cycle, power operations, clone, snapshot, etc.).
In the image below, you can see that users interact with the virtualization API. This in turn interacts with the Kubernetes API server to schedule the requested virtual machine instances (VMIs). KubeVirt is focused on providing just the virtualization capability offloading other capabilities such as scheduling, networking and storage to Kubernetes (since it excels at it).
Why KubeVirt?
Since the VMs are operated as pods in Kubernetes, users can expect the following benefits:
- Ability to leverage the world class declarative approach available in Kubernetes.
- Standardization by leveraging the same Kubernetes network plugins to enable communication between VMs and other pods or services in the cluster.
- Leverage Kubernetes’s world class capabilities for high availability and scheduling.
- Leverage the Kubernetes ecosystem such as role-based access control (RBAC), monitoring and logging solutions.
Important
KubeVirt can be used on Kubernetes clusters with virtualized nodes. But, the use of nested virtualization can have a performance impact.
What Will You Do by Part
| Part | What will you do? |
|---|---|
| 1 | Setup and Configuration |
| 2 | Create a Cluster Blueprint with KubeVirt |
| 3 | Deploy a Virtual Machine Workload to the cluster |
Watch a video showcasing highlights of this exercise.
Deploy and Operate VMs on Kubernetes using KubeVirt - YouTube
Tap to unmute
Deploy and Operate VMs on Kubernetes using KubeVirt Rafay Systems
Rafay Systems703 subscribers
Kubernetes Cluster
Containerized
Apps
Virtual
Machines
User
Rafay
Platform
Assumptions
- You have an existing cluster in your Rafay Org.
- You have a Git client on your laptop.