Platform9 Managed KubeVirt Overview

Introduction to KubeVirt

KubeVirt is an open-source project that enables VMs to be managed by Kubernetes alongside containers. Using KubeVirt, you’ll be able to overcome all of the operational silos that exist today, and standardize on Kubernetes as the control plane – without having to worry about porting all of your applications to containers or managing two entirely separate stacks. You can now get the best of both worlds.

There are several Kubernetes and KubeVirt constructs that bring the solution extremely close to current virtualization stacks and primitives.

  • VM customization can be implemented using InstanceTypes and cloud-init
  • Calico and Multus (other open-source projects in the Kubernetes ecosystem) can be used for security policies and additional VM network interfaces, respectively
  • CSI plugins are available for most storage backends
  • The Containerized Data Importer (CDI) utility can be used to import, upload and clone Virtual Machine images
  • Kubernetes RBAC, namespaces, and cluster scheduler can be used for access control, tenant isolation, and scheduling respectively
  • Helm charts are a great way to implement infrastructure as code

Key KubeVirt Definitions

  • Virtual Machine (VM): Virtual Machines provide management functions for VirtualMachineInstances in the cluster, such as powering VMIs, ensuring the startup state of VMIs, and have a 1:1 relationship with VMIs
  • Virtual Machine Interface (VMI): Virtual Machine Instances are the minimum resource for managing VMs. A VirtualMachineInstance object represents a running instance of a VM and all of its configuration.
  • Host: Physical nodes which the hypervisor is installed on and the virtual machines reside on.
  • Live Migration: Enables admins to to keep environments running by migrating them to different nodes/hosts for a variety of reasons to maintain high availability
  • CPU Pinning: The ability to configure processor affinity which enables the binding of a virtual machine vCPU (core) to a designated CPU/socket so that it the processes for that vCPU only runs on a designated CPU. This ensures that a vCPU will get CPU time from a specific CPU in order to provide predictable latency and enhanced performance.
  • Data Volumes: DataVolumes are a way to automate importing virtual machine disks onto PVCs during the virtual machine's launch flow.With a DataVolume, both the PVC creation and import is automated on behalf of the user.
  • Ephemeral Volumes: An ephemeral volume is a local COW (copy on write) image that uses a network volume as a read-only backing store. Ephemeral volumes are useful in any scenario where disk persistence is not desired.
  • KubeVirt also has a vibrant community with enhancements continuously being built into the project.

Platform9 Managed KubeVirt

Platform9 Managed KubeVirt is a cloud service that makes deploying and managing KubeVirt seamless, allowing operators to focus on projects and applications that impact the business.

Platform9 Managed KubeVirt, has the following out-of-the-box capabilities:

  • cloud-managed upgrades
  • Live Migration
  • CPU Pinning
  • VM monitoring
  • Console Access
  • SR-IOV, OVS & DPDK support for performance-sensitive applications
  • User-friendly SaaS console for VM operations
  • VM management capabilities like: VM life cycle, InstanceType support, prometheus monitoring
  • Enterprise-readiness capabilities like: RBAC, multi-tenancy, and resource utilization quotas
  • 99.9% uptime SLA

All of this will be backed by our world-class support teams who actively monitor your Kubernetes clusters 24/7.

Platform9 Managed KubeVirt is designed to bring you all the benefits of open-source KubeVirt and Kubernetes, while allowing you to offload the associated management overhead to Platform9. The result will be a cloud-native, self-service, declarative model of operations that will be consistent across all of your workloads – containerized as well as virtualized.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard