KVM, OpenStack, and the Open Cloud - Linux Foundation Events

53 downloads 149 Views 2MB Size Report
Oct 13, 2014 - 13Oct14. Open Virtualizaeon Alliance. 15. Compute. Storage. Nova. Swift. Horizon. Glance ... KVM is defau
KVM,  OpenStack,   and  the  Open  Cloud   Adam  Jollans,  IBM  &  Mike  Kadera,  Intel   CloudOpen  Europe  -­‐  October  13,  2014   13Oct14  

Open  VirtualizaGon  Alliance  

1  

Agenda   •  •  •  •  •  •  •  • 

A  Brief  History  of  VirtualizaGon   KVM  Architecture   Building  Open  Clouds   OpenStack  Architecture   KVM  and  OpenStack   Case  Study  of  OpenStack  &  KVM  Cloud  –  Intel  IT   Futures   AddiGonal  Sessions  and  Resources  

13Oct14  

Open  VirtualizaGon  Alliance  

2  

A  Brief  History  of  VirtualizaGon   LXC / Docker KVM hypervisor x86 hardware virtualization Xen hypervisor for x86 VMware hypervisor for x86 Virtualization on Unix systems Virtualization on mainframes 1960s 13Oct14  

1980s

1990s

2000s

Open  VirtualizaGon  Alliance  

2010s

2014 3  

Conceptual  Framework   User Interface

Applications

Management Tools

Storage 13Oct14  

Compute Open  VirtualizaGon  Alliance  

Networking 4  

IntroducGon  to  KVM     User Interface

Applications

Management Tools oVirt Kimchi libvirt KVM

Storage 13Oct14  

Compute Open  VirtualizaGon  Alliance  

Networking 5  

KVM  Architecture   Virtual Machine

Virtual Machine

Linux Applications

Windows Applications

Linux Guest OS

Windows Guest OS

QEMU KVM

QEMU

Open source hypervisor based on Linux KVM • Kernel module that turns Linux into a Virtual Machine Monitor • Merged into the Linux kernel Linux Applications

Linux

x86 with virtualization extensions

13Oct14  

QEMU • Emulator used for I/O device virtualization x86 virtualization extensions • Intel VT-x • AMD (AMD-V)

Open  VirtualizaGon  Alliance  

6  

KVM  Performance  

Source: SPECvirt_2013 Published Results - http://www.spec.org/virt_sc2013/results/specvirt_sc2013_perf.html 13Oct14  

Open  VirtualizaGon  Alliance  

7  

KVM  Security   Virtual Machine

Virtual Machine

Linux Applications

Windows Applications

Linux Guest OS

Windows Guest OS

QEMU KVM

QEMU

SELinux • Mandatory Access Control (MAC) integrated into Linux • Provides “need to know” security between processes

Linux Applications

Linux

x86 with virtualization extensions

13Oct14  

sVirt • Combines SELinux and KVM • Delivers “need to know” security between virtual machines Certifications • EAL4+ certification for KVM in RHEL 6 and SLES 11 SP 2 on various x86 64-bit Intel and AMD64-based hardware from Dell, HP, IBM and SGI

Open  VirtualizaGon  Alliance  

8  

KVM  Management  -­‐  libvirt   User Interface

Command Line

libvirt

Library

Network Daemon

Library • Open Source project • Manages multiple hypervisors Command Line • Powerful • Complex to use Network Daemon • Enables remote management

KVM Xen LXC …. Compute 13Oct14  

Remote Management

Base for other management tools • virt-manager, Kimchi, oVirt • OpenStack Open  VirtualizaGon  Alliance  

9  

KVM  Management  -­‐  Kimchi   User Interface HTML5 Web Browser

Daemon

Kimchi

libvirt

Kimchi • Open Source project • Manages KVM on x86, Power User Interface • Easy to use • Access from HTML5 web browser Servers managed • Single digits

KVM

Compute 13Oct14  

Open  VirtualizaGon  Alliance  

10  

KVM  Management  -­‐  oVirt  

User Interface Web Portals

oVirt

oVirt • Open Source project • Manages KVM on x86

Command Line

oVirt Engine

oVirt Node VDSM + libvirt

KVM

User Interface • Web portals • Command line, API oVirt Engine • Manages VMs • Configures storage, network oVirt Nodes • Run virtual machines

Storage 13Oct14  

Compute Open  VirtualizaGon  Alliance  

Servers managed • Tens to hundreds

11  

Building  Open  Clouds   •  •  •  •  •  • 

Security   Resilience   Performance   Scalability  –  thousands  of  nodes   Heterogeneity   Interoperability  

13Oct14  

Open  VirtualizaGon  Alliance  

12  

IntroducGon  to  OpenStack   User Interface Horizon

Applications

Command Line

Management Tools Open Stack

Ceilometer Cinder

Swift

Choice of storage

Heat

Nova

Neutron Choice of network

Choice of hypervisor

Storage 13Oct14  

Glance

Keystone

Compute Open  VirtualizaGon  Alliance  

Networking 13  

OpenStack  Design  Principles   •  Open   –  Open  Development  Model   –  Open  Design  Process   –  Open  Community  

•  General  Purpose   –  Balancing  Compute,  Storage,  Network  

•  Massively  Scalable   •  MulG-­‐site   •  Resilient  and  recoverable   13Oct14  

Open  VirtualizaGon  Alliance  

14  

Nova  –  Compute  Service   Manages VM lifecycle • Starting and stopping VMs • Scheduling and monitoring VMs Horizon

Command Line

Keystone Swift VM Images

Nova

Authentication • Keystone

Choice of hypervisor

Storage 13Oct14  

Glance

Key Components • API • Database • Scheduler • Compute node and plug-ins

Compute

Access to VM images • Glance • Swift

Open  VirtualizaGon  Alliance  

15  

OpenStack  and  Hypervisor  Usage  

Source: OpenStack User Survey May2014 - http://www.slideshare.net/ryan-lane/openstack-atlanta-user-survey 13Oct14  

Open  VirtualizaGon  Alliance  

16  

Keystone  –  AuthenGcaGon  Service   Horizon

Command Line

Keystone

13Oct14  

Manages security • Service for all other modules • Authentication • Authorization Key components • API • Backends • Token • Catalog • Policy • Identity

Open  VirtualizaGon  Alliance  

17  

Cinder  –  Block  Storage  Service   Horizon

Command Line

Keystone Cinder Choice of Block Storage

Manages persistent block storage • Provides volumes to running instances • Pluggable driver architecture • High Availability Key components • API • Queue • Database • Scheduler • Storage plug-ins Authentication • Keystone

Storage 13Oct14  

Open  VirtualizaGon  Alliance  

18  

Neutron  –  Networking  Service   Horizon

Command Line

Keystone Neutron Choice of Network

Manages networking connectivity • Provides volumes to running instances • Pluggable driver architecture • Support for range of networking technologies Key components • API • Queue • Database • Scheduler • Agent • Networking plug-ins Authentication • Keystone

Networking 13Oct14  

Open  VirtualizaGon  Alliance  

19  

Glance  –  Image  Service   Horizon

Manages VM images • Catalog of images • Search and registration • Fetch and delivery

Command Line

Keystone Swift

Authentication • Keystone

VM Images

Storage 13Oct14  

Glance

Key components • API • Registry • Database

Storage of VM images • Swift • Local file system Open  VirtualizaGon  Alliance  

20  

Swi\  –  Object  Storage  Service   Horizon

Command Line

Keystone Swift Object Storage

Manages unstructured object storage • Highly scalable • Durable – three times replication • Distributed Key components • Proxy / API • Rings • Accounts • Containers • Objects • Data stores Authentication • Keystone

Storage 13Oct14  

Open  VirtualizaGon  Alliance  

21  

Provisioning  a  VM   User Interface Horizon

Applications

Command Line

1

2, 10

Cinder 7

6

Keystone Swift

9

Storage 13Oct14  

Management Tools

Glance

8

Nova

4

3

Compute Open  VirtualizaGon  Alliance  

Neutron 5

Networking 22  

KVM  and  OpenStack   •  KVM  excels  at  choice  criteria  for  Hypervisor   –  –  –  – 

Cost   Scale  &  Performance   Security   Interoperability  

•  Development  Affinity   –  Both  open  source  projects   –  KVM  is  default  hypervisor  for  OpenStack  development  

•  Deployment  Affinity   –  KVM  is  best  supported,  easiest  to  deploy,  with  most  full-­‐featured  driver   13Oct14  

Open  VirtualizaGon  Alliance  

23  

Intel IT’s Cloud Goals 80% Effective Utilization Efficiency through Federation

Velocity Increase

•  Pervasive Virtualization (75%) •  Enterprise App Virtualization •  Secure Virtualization •  Larger Pools in Fewer Data Centers

Agility through Automation & Self Service

•  •  •  • 

On-Demand Self Service the Norm Provision VMs within minutes Innovative Idea to Production