SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
INTRODUCING KUBEVIRT
KUBERNETES AND CLOUD NATIVE OTTAWA
Stephen Gordon ( @xsgordon / sgordon@redhat.com )
Principal Product Manager, Cloud Platforms @ Red Hat
December 4th, 2018
DISCLAIMER
This is active research and development, with a
preview expected in an upcoming OpenShift
release.
There be dragons!
WHAT DO CONTAINERS HAVE TO DO WITH
VIRTUALIZATION?
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
=> Katacontainers, gVisor, Isolates, Firecracker
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
=> Katacontainers, gVisor, Isolates, Firecracker
● I need to connect services like ACI and Fargate into my Kubernetes cluster.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
=> Katacontainers, gVisor, Isolates, Firecracker
● I need to connect services like ACI and Fargate into my Kubernetes cluster.
=> virtual-kubelet *not actually virtualization
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
=> Katacontainers, gVisor, Isolates, Firecracker
● I need to connect services like ACI and Fargate into my Kubernetes cluster.
=> virtual-kubelet *not actually virtualization
● I need a way to run my application containers and virtual machines on a common
platform.
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
THE STORY SO FAR...
● I need a place to install, run, and manage my Kubernetes clusters.
=> OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc.
● I need a way to provide strict(er) isolation of my application containers.
=> Katacontainers, gVisor, Isolates, Firecracker
● I need to connect services like ACI and Fargate into my Kubernetes cluster.
=> virtual-kubelet *not actually virtualization
● I need a way to run my application containers and virtual machines on a common
platform.
=> KubeVirt!
...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
CONTAINERS AND VIRTUAL MACHINES
CONTAINER INFRASTRUCTURE AND ORCHESTRATION
Containerized applications and Kubernetes container orchestration as provided by
OpenShift are becoming the standard for new applications.
CONTAINERS AND VIRTUAL MACHINES
CONTAINER INFRASTRUCTURE AND ORCHESTRATION
Containerized applications and Kubernetes container orchestration as provided by
OpenShift are becoming the standard for new applications.
VIRTUALIZED WORKLOADS
Virtualized workloads are not going anywhere fast!
CONTAINERS AND VIRTUAL MACHINES
CONTAINER INFRASTRUCTURE AND ORCHESTRATION
Containerized applications and Kubernetes container orchestration as provided by
OpenShift are becoming the standard for new applications.
VIRTUALIZED WORKLOADS
Virtualized workloads are not going anywhere fast!
BARE-METAL RESURGENCE
Increasingly customers are pursuing bare-metal clusters for net new business
functionality being built in containers.
INTRODUCING KUBEVIRT!
WHAT IS KUBEVIRT
Add virtual machines to your Kubernetes namespace as easily as application containers.
Easily leverage existing VM-based services from your new workloads!
EXAMPLE USE CASE - START WITH A VM
EXAMPLE USE CASE - IMPORT IT!
Import Using V2V or from an image.
EXAMPLE USE CASE - BUILD NEW SERVICES
EXAMPLE USE CASE - START DECOMPOSING
Container
TOGETHER AT LAST
Virtual Machine
Operating System
Physical Machine
Container
Resultant virtual machines are able to run side by side directly on the same Kubernetes
nodes as application containers.
Leverages tried and trusted KVM/QEMU virtualization capabilities.
{Pods
Kubernetes
LEVERAGE EXISTING ECOSYSTEMS
Use native OpenShift Primed storage solutions or existing ecosystem of 80+ battle tested
drivers via Container Storage Interface (CSI) “Ember” plug-in.
Container
Virtual Machine
Operating System
Physical Machine
Container
Kubernetes
LET’S GO A LITTLE DEEPER...
KUBEVIRT: THE CNV UPSTREAM
● Integrates directly into existing Kubernetes clusters
● Uses a k8s-native approach whenever possible
● Leverage Container Networking Interface (CNI),
Container Storage Interface (CSI), and other
k8s-native integrations
Operating System
Kubernetes
Physical Machine
VM Pod
Regular
Pod
http://kubevirt.io
KUBEVIRT ANATOMY
Master
Custom
Resource
KUBEVIRT ANATOMY
Master
virt-controller
Custom
Resource
KUBEVIRT ANATOMY
Pod
Virtual Machine
Master Minion
virt-handler
virt-controller
Custom
Resource
KUBEVIRT ANATOMY
Pod
Virtual Machine
Master Minion
virt-handler
virt-controller
Custom
Resource
Minion
virt-handler
Pod
Virtual Machine
• Build on Kubernetes, adding new API-level resources.
• Declarative when paired with a controller.
$ kubectl get crds
NAME AGE
datavolumes.cdi.kubevirt.io 5m
virtualmachineinstancepresets.kubevirt.io 5m
virtualmachineinstancereplicasets.kubevirt.io 5m
virtualmachineinstances.kubevirt.io 5m
virtualmachines.kubevirt.io 5m
CUSTOM RESOURCE DEFINITIONS
COMPONENTS OF CNV
- KubeVirt
The virtual machine operator
https://github.com/kubevirt/kubevirt/
- Containerized Data Importer (CDI)
Importing disks
https://github.com/kubevirt/containerized-d
ata-importer
- OpenShift Web Console
With UI extensions
https://github.com/kubevirt/web-ui
- Containerized Virt-v2v
Importing a whole virtual machine
https://github.com/kubevirt/v2v-job
LET’S TAKE A LOOK!
Pre-requisites:
● kubectl
● minikube/minishift
Notes:
● Yes, we’re running nested virt here - fine for getting
started!
● Using upstream bits, for now, in product preview coming!
DEMO
http://kubevirt.io/get_kubevirt/
● We inspected the custom resource definitions
● We imported an image using oc/kubectl
● We created and started a basic VM using oc/kubectl
● We made a change to that VM’s disk
● We cloned the disk and created a new VM
● We checked how the UI looks!
DEMO RECAP
ROADMAP THEMES
Production Workloads Embrace the PlatformSupportability
(What’s missing today?)
KubeVirt is not a drop-in replacement for traditional virtualization today.
We’re working on it!
● Simplify upgrade process
● Debug tooling support
(sosreports, Insights)
● Broad provider support
● Layer-2 Networking
● Live Migration
● Upload image as Template
● Guest agent introspection
● Operators for all!
● Integrated VM management
● Metrics and monitoring
COLLABORATING?
Upstream Community:
● Website: KubeVirt.io
● GitHub: https://github.com/kubevirt/
● Mailing List: https://groups.google.com/forum/#!forum/kubevirt-dev
● IRC: #kubevirt on irc.freenode.net
Red Hat:
● We are currently seeking design partners and early adopters willing to:
○ Try out Container-native Virtualization!
○ Give us feedback!
● FAQ
○ https://www.redhat.com/en/resources/container-native-virtualization
Introducing KubeVirt

Más contenido relacionado

Más de Stephen Gordon

Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?Stephen Gordon
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack LibertyStephen Gordon
 
Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015Stephen Gordon
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Stephen Gordon
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateStephen Gordon
 
Divide and conquer: resource segregation in the OpenStack cloud
Divide and conquer: resource segregation in the OpenStack cloudDivide and conquer: resource segregation in the OpenStack cloud
Divide and conquer: resource segregation in the OpenStack cloudStephen Gordon
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Stephen Gordon
 
Deltacloud - Abstracting for Freedom
Deltacloud - Abstracting for FreedomDeltacloud - Abstracting for Freedom
Deltacloud - Abstracting for FreedomStephen Gordon
 

Más de Stephen Gordon (9)

Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?Dude, This Isn't Where I Parked My Instance?
Dude, This Isn't Where I Parked My Instance?
 
What's new in OpenStack Liberty
What's new in OpenStack LibertyWhat's new in OpenStack Liberty
What's new in OpenStack Liberty
 
Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015Compute 101 - OpenStack Summit Vancouver 2015
Compute 101 - OpenStack Summit Vancouver 2015
 
Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)Libvirt/KVM Driver Update (Kilo)
Libvirt/KVM Driver Update (Kilo)
 
OpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community UpdateOpenStack Toronto: Juno Community Update
OpenStack Toronto: Juno Community Update
 
Divide and conquer: resource segregation in the OpenStack cloud
Divide and conquer: resource segregation in the OpenStack cloudDivide and conquer: resource segregation in the OpenStack cloud
Divide and conquer: resource segregation in the OpenStack cloud
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
 
Publican
PublicanPublican
Publican
 
Deltacloud - Abstracting for Freedom
Deltacloud - Abstracting for FreedomDeltacloud - Abstracting for Freedom
Deltacloud - Abstracting for Freedom
 

Último

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 

Último (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 

Introducing KubeVirt

  • 1. INTRODUCING KUBEVIRT KUBERNETES AND CLOUD NATIVE OTTAWA Stephen Gordon ( @xsgordon / sgordon@redhat.com ) Principal Product Manager, Cloud Platforms @ Red Hat December 4th, 2018
  • 2. DISCLAIMER This is active research and development, with a preview expected in an upcoming OpenShift release. There be dragons!
  • 3. WHAT DO CONTAINERS HAVE TO DO WITH VIRTUALIZATION?
  • 4. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 5. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 6. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 7. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. => Katacontainers, gVisor, Isolates, Firecracker ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 8. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. => Katacontainers, gVisor, Isolates, Firecracker ● I need to connect services like ACI and Fargate into my Kubernetes cluster. ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 9. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. => Katacontainers, gVisor, Isolates, Firecracker ● I need to connect services like ACI and Fargate into my Kubernetes cluster. => virtual-kubelet *not actually virtualization ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 10. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. => Katacontainers, gVisor, Isolates, Firecracker ● I need to connect services like ACI and Fargate into my Kubernetes cluster. => virtual-kubelet *not actually virtualization ● I need a way to run my application containers and virtual machines on a common platform. ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 11. THE STORY SO FAR... ● I need a place to install, run, and manage my Kubernetes clusters. => OpenStack, RHV/ oVirt, VMware, AWS, GCE, Azure, etc. ● I need a way to provide strict(er) isolation of my application containers. => Katacontainers, gVisor, Isolates, Firecracker ● I need to connect services like ACI and Fargate into my Kubernetes cluster. => virtual-kubelet *not actually virtualization ● I need a way to run my application containers and virtual machines on a common platform. => KubeVirt! ...FOR VIRTUALIZATION IN A CONTAINERIZED WORLD
  • 12. CONTAINERS AND VIRTUAL MACHINES CONTAINER INFRASTRUCTURE AND ORCHESTRATION Containerized applications and Kubernetes container orchestration as provided by OpenShift are becoming the standard for new applications.
  • 13. CONTAINERS AND VIRTUAL MACHINES CONTAINER INFRASTRUCTURE AND ORCHESTRATION Containerized applications and Kubernetes container orchestration as provided by OpenShift are becoming the standard for new applications. VIRTUALIZED WORKLOADS Virtualized workloads are not going anywhere fast!
  • 14. CONTAINERS AND VIRTUAL MACHINES CONTAINER INFRASTRUCTURE AND ORCHESTRATION Containerized applications and Kubernetes container orchestration as provided by OpenShift are becoming the standard for new applications. VIRTUALIZED WORKLOADS Virtualized workloads are not going anywhere fast! BARE-METAL RESURGENCE Increasingly customers are pursuing bare-metal clusters for net new business functionality being built in containers.
  • 16. WHAT IS KUBEVIRT Add virtual machines to your Kubernetes namespace as easily as application containers. Easily leverage existing VM-based services from your new workloads!
  • 17. EXAMPLE USE CASE - START WITH A VM
  • 18. EXAMPLE USE CASE - IMPORT IT! Import Using V2V or from an image.
  • 19. EXAMPLE USE CASE - BUILD NEW SERVICES
  • 20. EXAMPLE USE CASE - START DECOMPOSING
  • 21. Container TOGETHER AT LAST Virtual Machine Operating System Physical Machine Container Resultant virtual machines are able to run side by side directly on the same Kubernetes nodes as application containers. Leverages tried and trusted KVM/QEMU virtualization capabilities. {Pods Kubernetes
  • 22. LEVERAGE EXISTING ECOSYSTEMS Use native OpenShift Primed storage solutions or existing ecosystem of 80+ battle tested drivers via Container Storage Interface (CSI) “Ember” plug-in. Container Virtual Machine Operating System Physical Machine Container Kubernetes
  • 23. LET’S GO A LITTLE DEEPER...
  • 24. KUBEVIRT: THE CNV UPSTREAM ● Integrates directly into existing Kubernetes clusters ● Uses a k8s-native approach whenever possible ● Leverage Container Networking Interface (CNI), Container Storage Interface (CSI), and other k8s-native integrations Operating System Kubernetes Physical Machine VM Pod Regular Pod http://kubevirt.io
  • 27. KUBEVIRT ANATOMY Pod Virtual Machine Master Minion virt-handler virt-controller Custom Resource
  • 28. KUBEVIRT ANATOMY Pod Virtual Machine Master Minion virt-handler virt-controller Custom Resource Minion virt-handler Pod Virtual Machine
  • 29. • Build on Kubernetes, adding new API-level resources. • Declarative when paired with a controller. $ kubectl get crds NAME AGE datavolumes.cdi.kubevirt.io 5m virtualmachineinstancepresets.kubevirt.io 5m virtualmachineinstancereplicasets.kubevirt.io 5m virtualmachineinstances.kubevirt.io 5m virtualmachines.kubevirt.io 5m CUSTOM RESOURCE DEFINITIONS
  • 30. COMPONENTS OF CNV - KubeVirt The virtual machine operator https://github.com/kubevirt/kubevirt/ - Containerized Data Importer (CDI) Importing disks https://github.com/kubevirt/containerized-d ata-importer - OpenShift Web Console With UI extensions https://github.com/kubevirt/web-ui - Containerized Virt-v2v Importing a whole virtual machine https://github.com/kubevirt/v2v-job
  • 31. LET’S TAKE A LOOK!
  • 32. Pre-requisites: ● kubectl ● minikube/minishift Notes: ● Yes, we’re running nested virt here - fine for getting started! ● Using upstream bits, for now, in product preview coming! DEMO http://kubevirt.io/get_kubevirt/
  • 33.
  • 34. ● We inspected the custom resource definitions ● We imported an image using oc/kubectl ● We created and started a basic VM using oc/kubectl ● We made a change to that VM’s disk ● We cloned the disk and created a new VM ● We checked how the UI looks! DEMO RECAP
  • 35. ROADMAP THEMES Production Workloads Embrace the PlatformSupportability (What’s missing today?) KubeVirt is not a drop-in replacement for traditional virtualization today. We’re working on it! ● Simplify upgrade process ● Debug tooling support (sosreports, Insights) ● Broad provider support ● Layer-2 Networking ● Live Migration ● Upload image as Template ● Guest agent introspection ● Operators for all! ● Integrated VM management ● Metrics and monitoring
  • 36. COLLABORATING? Upstream Community: ● Website: KubeVirt.io ● GitHub: https://github.com/kubevirt/ ● Mailing List: https://groups.google.com/forum/#!forum/kubevirt-dev ● IRC: #kubevirt on irc.freenode.net Red Hat: ● We are currently seeking design partners and early adopters willing to: ○ Try out Container-native Virtualization! ○ Give us feedback! ● FAQ ○ https://www.redhat.com/en/resources/container-native-virtualization