KubeVirt is intended to provide a convergence point for the data center of the future using Kubernetes as an infrastructure fabric for both application container and virtual machine workloads. Using a unified management approach simplifies deployments, allows for better resource utilization, and supports different workloads in a more optimal way. This session will outline how the Kubevirt project seeks to achieve this while using the extensible nature of Kubernetes in a way that provides a developer workflow that is as consistent as possible with the same patterns used for working with application containers.
3. OPENSTACKTO - KUBEVIRT
THE STORY SO FAR...
● I need a place to install, run, and manage Kubernetes clusters.
● I need a way to provide strict isolation of application containers.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
4. OPENSTACKTO - KUBEVIRT
THE STORY SO FAR...
● I need a place to install, run, and manage Kubernetes clusters.
=> OpenStack, oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict isolation of application containers.
=> Katacontainers, Clear Containers, Hyper RunV, gVisor
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
5. OPENSTACKTO - KUBEVIRT
WHAT ABOUT EXISTING WORKLOADS?
CONTAINER INFRASTRUCTURE AND ORCHESTRATION
Container Application and Kubernetes orchestration as provided by OpenShift are
becoming the standard for new applications.
VIRTUALIZED WORKLOADS
Virtualized Workloads are not going anywhere fast!
CONVERGING INFRASTRUCTURE
We don’t want to maintain multiple complex infrastructure to run containers and virtual
machines.
6. OPENSTACKTO - KUBEVIRT
WHAT IS KUBEVIRT?
Technology enabling Kubernetes as a unified platform for building, modifying, and deploying
applications residing in both containers and virtual machines in a common, shared
environment.
Add virtual machines as you know them to your Kubernetes projects!
7. OPENSTACKTO - KUBEVIRT
WHAT IS KUBEVIRT?
● Drops directly into existing Kubernetes Clusters
○ Implemented as a CustomResourceDefinition
● Extends Kubernetes so VMs can be scheduled alongside Containers
● Takes as K8S-native an approach as possible
○ Pod networking
○ K8S or Cinder storage
● Use cases? Operating System
Kubernetes
Physical Machine
VM Pod
Regular
Pod
8. OPENSTACKTO - KUBEVIRT
ARCHITECTURE
VM CR
Kubernetes Master
Kubernetes Node
Pod
Container
VM Process
KubeVirt Operator
virt-controller
Pod (DS)
virt-handler
9. OPENSTACKTO - KUBEVIRT
HOW DOES THIS COMPARE X?
● KubeVirt focuses on enabling traditional/existing virtual machine
workloads on Kubernetes.
● Katacontainers focuses on enabling hardware-assisted virtualization for
application container workloads on Kubernetes.
● NEW: gVisor another approach to isolation of application container
workloads on Docker/Kubernetes.
12. OPENSTACKTO - KUBEVIRT
● Poke around environment.
○ No tricks up my sleeves!
● Explore the Custom Resource Definitions.
● Create and start a Cirros VM.
○ Connect using Serial Console
● Create and start a Fedora VM.
○ Connect using VNC
DEMO
14. OPENSTACKTO - KUBEVIRT
INTERESTED IN COLLABORATING?
KubeVirt
● GitHub:
○ https://github.com/kubevirt/kubevirt
● Mailing List:
○ https://groups.google.com/forum/#!forum/kubevirt-dev
● IRC:
○ #kubevirt on irc.freenode.net
You can also catch us later this month at Red Hat Summit and OpenStack
Summit Vancouver!