Virtualization in the Cloud: Featuring Xen and XCP Lars Kurth Xen - - PowerPoint PPT Presentation

virtualization in the cloud featuring xen and xcp
SMART_READER_LITE
LIVE PREVIEW

Virtualization in the Cloud: Featuring Xen and XCP Lars Kurth Xen - - PowerPoint PPT Presentation

Virtualization in the Cloud: Featuring Xen and XCP Lars Kurth Xen Community Manager lars.kurth@xen.org FREENODE: lars_kurth @lars_kurth A Brief History of Xen in the Cloud Late 90s XenoServer Project A Brief History of Xen in the Cloud


slide-1
SLIDE 1

Lars Kurth Xen Community Manager lars.kurth@xen.org

Virtualization in the Cloud: Featuring Xen and XCP

@lars_kurth FREENODE: lars_kurth

slide-2
SLIDE 2

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

slide-3
SLIDE 3

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

‘03

Xen 1.0

slide-4
SLIDE 4

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

‘03 ‘08 ‘06

Amazon EC2 and Slicehost launched Rackspace Cloud Xen 1.0

slide-5
SLIDE 5

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

‘03 ‘08 ‘06

Amazon EC2 and Slicehost launched Rackspace Cloud XCP 1.x Cloud Mgmt

‘11 ‘12

XCP packages in Linux Xen 1.0

slide-6
SLIDE 6

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

‘03 ‘08 ‘06

Amazon EC2 and Slicehost launched Rackspace Cloud Linux 3.0 XCP 1.x Cloud Mgmt

‘11 ‘12

XCP packages in Linux Xen 1.0

slide-7
SLIDE 7

A Brief History of Xen in the Cloud

Late 90s

XenoServer Project

‘03 ‘08 ‘06

Amazon EC2 and Slicehost launched Rackspace Cloud Linux 3.0 XCP 1.x Cloud Mgmt

‘11 ‘12

XCP packages in Linux

‘13

Xen for ARM servers Xen 1.0 10th birthday

slide-8
SLIDE 8

The Xen Hypervisor was designed for the Cloud straight from the outset!

slide-9
SLIDE 9
  • Guardian of Xen Hypervisor and related OSS Projects
  • Xen Governance similar to Linux Kernel

– Plus project lifecycle and Project Management Committee (PMC)

  • Projects

– Xen Hypervisor (led by 5 committers, 2 from Citrix, 1 from Suse, 2 Independent) – Xen Cloud Platform aka XCP (led by Citrix) – Xen ARM : Xen for mobile devices (led by Samsung)

Xen.org

slide-10
SLIDE 10

Xen contributor community is diversifying

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 2010 2011 2012 Citrix UPC SUSE Amazon University AMD GridCentric Individual NSA Intel Fujitsu iWeb Misc Oracle Spectralogic University of British Columbia

  • The number of “significant”

active vendors is increasing

  • New feature development driving

new participation

slide-11
SLIDE 11

Xen Overview

slide-12
SLIDE 12

Hypervisor Architectures

Type 1: Bare metal Hypervisor

A pure Hypervisor that runs directly on the hardware and hosts Guest OS’s.

Provides partition isolation + reliability, higher security

Host HW

Memory CPUs I/O

Hypervisor

Scheduler MMU Device Drivers/Models

VMn VM1 VM0

Guest OS and Apps

slide-13
SLIDE 13

Hypervisor Architectures

Type 1: Bare metal Hypervisor

A pure Hypervisor that runs directly on the hardware and hosts Guest OS’s.

Type 2: OS ‘Hosted’

A Hypervisor that runs within a Host OS and hosts Guest OS’s inside of it, using the host OS services to provide the virtual environment.

Provides partition isolation + reliability, higher security Low cost, no additional drivers Ease of use & installation

Host HW

Memory CPUs I/O

Host HW

Memory CPUs I/O

Hypervisor

Scheduler MMU Device Drivers/Models

VMn VM1 VM0

Guest OS and Apps

Host OS

Device Drivers Ring-0 VM Monitor “Kernel “

VMn VM1 VM0

Guest OS and Apps User Apps User-level VMM Device Models

slide-14
SLIDE 14

Xen: Type 1 with a Twist

Type 1: Bare metal Hypervisor

Host HW

Memory CPUs I/O

Hypervisor

Scheduler MMU Device Drivers/Models

VMn VM1 VM0

Guest OS and Apps

slide-15
SLIDE 15

Xen: Type 1 with a Twist

Type 1: Bare metal Hypervisor

Host HW

Memory CPUs I/O

Hypervisor

Scheduler MMU Device Drivers/Models

VMn VM1 VM0

Guest OS and Apps

Host HW

Memory CPUs I/O

Hypervisor VMn VM1 VM0

Guest OS and Apps

Xen Architecture

Scheduler MMU

slide-16
SLIDE 16

Xen: Type 1 with a Twist

Type 1: Bare metal Hypervisor

Host HW

Memory CPUs I/O

Hypervisor

Scheduler MMU Device Drivers/Models

VMn VM1 VM0

Guest OS and Apps

Host HW

Memory CPUs I/O

Hypervisor VMn VM1 VM0

Guest OS and Apps

Xen Architecture

Scheduler MMU

Control domain (dom0)

Drivers Device Models Linux & BSD

slide-17
SLIDE 17

Xen and Linux

  • Xen Hypervisor is not in the Linux kernel
  • BUT: everything Xen and Xen Guests need to run is!
  • Xen packages are in all Linux distros (except RHEL6)

– Install Dom0 Linux distro – Install Xen package(s) or meta package – Reboot – Config stuff: set up disks, peripherals, etc.

More info: wiki.xen.org/wiki/Category:Host_Install

slide-18
SLIDE 18

Basic Xen Concepts

18

Control domain (dom0) Host HW VMn VM1 VM0

Guest OS and Apps

Memory CPUs I/O

Console

  • Interface to the outside world

Control Domain aka Dom0

  • Dom0 kernel with drivers
  • Xen Management Toolstack

Guest Domains

  • Your apps

Driver/Stub/Service Domain(s)

  • A “driver, device model or control

service in a box”

  • De-privileged and isolated
  • Lifetime: start, stop, kill

Dom0 Kernel

Hypervisor

Scheduler MMU XSM

Trusted Computing Base

slide-19
SLIDE 19

Basic Xen Concepts

19

Control domain (dom0) Host HW VMn VM1 VM0

Guest OS and Apps

Console

Memory CPUs I/O

Dom0 Kernel Toolstack

Hypervisor

Scheduler MMU XSM

Console

  • Interface to the outside world

Control Domain aka Dom0

  • Dom0 kernel with drivers
  • Xen Management Toolstack

Guest Domains

  • Your apps

Driver/Stub/Service Domain(s)

  • A “driver, device model or control

service in a box”

  • De-privileged and isolated
  • Lifetime: start, stop, kill

Trusted Computing Base

slide-20
SLIDE 20

Basic Xen Concepts

20

Control domain (dom0) Host HW VMn VM1 VM0

Guest OS and Apps

Console

Memory CPUs I/O

One or more driver, stub or service domains

Dom0 Kernel Toolstack

Hypervisor

Scheduler MMU XSM

Console

  • Interface to the outside world

Control Domain aka Dom0

  • Dom0 kernel with drivers
  • Xen Management Toolstack

Guest Domains

  • Your apps

Driver/Stub/Service Domain(s)

  • A “driver, device model or control

service in a box”

  • De-privileged and isolated
  • Lifetime: start, stop, kill

Trusted Computing Base

slide-21
SLIDE 21

21

Xen Variants for Server & Cloud

Xen Hypervisor

slide-22
SLIDE 22

Single Host Basic Functions Multiple Hosts Additional Functionality

22

Xen Variants for Server & Cloud

Increased level of functionality and integration with other components

Default / XL (XM) Toolstack / Console Libvirt / VIRSH XAPI / XE Hypervisor

Single Host Additional Functionality

Xen

slide-23
SLIDE 23

Single Host Basic Functions Multiple Hosts Additional Functionality

23

Xen Variants for Server & Cloud

Increased level of functionality and integration with other components

Default / XL (XM) Toolstack / Console Libvirt / VIRSH XAPI / XE Hypervisor

Single Host Additional Functionality

Xen XCP

slide-24
SLIDE 24

24

Xen Variants for Server & Cloud

Increased level of functionality and integration with other components

Default / XL (XM) Toolstack / Console Libvirt / VIRSH Get Binaries from … Linux Distros Linux Distros Debian & Ubuntu ISO from Xen.org Project Xen XCP XAPI / XE

slide-25
SLIDE 25

25

Xen Variants for Server & Cloud

Xen Hypervisor

Increased level of functionality and integration with other components

Default / XL (XM) Toolstack / Console Libvirt / VIRSH Products Oracle VM Huawei UVP Citrix XenServer Get Binaries from … Linux Distros Linux Distros Debian & Ubuntu ISO from Xen.org Project XCP XAPI / XE

slide-26
SLIDE 26

26

Xen Variants for Server & Cloud

Increased level of functionality and integration with other components

Default / XL (XM) Toolstack / Console Libvirt / VIRSH Get Binaries from … Linux Distros Linux Distros Debian & Ubuntu ISO from Xen.org Used by … More info: xen.org/community/ecosystem.html xen.org/community/presentations.html xen.org/products/case_studies.html Project Xen Hypervisor XCP XAPI / XE

slide-27
SLIDE 27

Xen : Types of Virtualization

slide-28
SLIDE 28

28

Xen Hypervisor Control domain (dom0) Host HW Guest VMn

Apps

Memory CPUs I/O

Technology:

  • Paravirtualization

Linux PV guests have limitations:

  • limited set of virtual hardware

Advantages

  • Fast
  • Works on any system

(even without virt extensions)

HW Drivers PV Back Ends PV Front Ends Guest OS Dom0 Kernel

PV Domains

slide-29
SLIDE 29

29

Xen Hypervisor Control domain (dom0) Host HW Guest VMn

Apps

Memory CPUs I/O

Technology:

  • Paravirtualization

Linux PV guests have limitations:

  • limited set of virtual hardware

Advantages

  • Fast
  • Works on any system

(even without virt extensions)

Driver Domains

  • Security
  • Isolation
  • Reliability and Robustness

HW Drivers PV Back Ends PV Front Ends

Driver Domain e.g.

  • Disk
  • Network

HW Driver PV Back End Dom0 Kernel*

*) Can be MiniOS

Guest OS Dom0 Kernel

PV Domains & Driver Domains

slide-30
SLIDE 30

30

Xen Hypervisor Dom0 Host HW Guest VMn

Technology:

  • Shows emulation using QEMU/Device

Model (SW Virtualization)

  • In other situation HW can be used

Disadvantages

  • Emulation slower than PV

(mainly I/O devices)

Advantages

  • No kernel support needed

Device Model

IO Emulation IO Event VMEXIT

Dom0 Kernel

HVM & Stub Domains

Memory CPUs I/O

slide-31
SLIDE 31

31

Xen Hypervisor Dom0 Host HW Guest VMn

Technology:

  • Shows emulation using QEMU/Device

Model (SW Virtualization)

  • In other situation HW can be used

Disadvantages

  • Emulation slower than PV

(mainly I/O devices)

Advantages

  • No kernel support needed

Stub Domains

  • Security
  • Isolation
  • Reliability and Robustness

Device Model

IO Emulation IO Event VMEXIT

Stubdomn

Device Model Mini OS

Guest VMn

IO Emulation IO Event VMEXIT

Dom0 Kernel

HVM & Stub Domains

Memory CPUs I/O

slide-32
SLIDE 32

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P VH Virtualized (HW) P Paravirtualized VS Virtualized (SW) HVM mode/domain PV mode/domain Xen 4.3

slide-33
SLIDE 33

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P Scope for improvement Poor performance Optimal performance HVM mode/domain Xen 4.3 PV mode/domain

slide-34
SLIDE 34

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P Scope for improvement Poor performance Optimal performance HVM mode/domain Xen 4.3 PV mode/domain

Important: Xen automatically picks the best

  • ption based on HW & OS capabilities and

available drivers. As a Xen user I chose a HVM or PV domain.

slide-35
SLIDE 35

XCP Project

slide-36
SLIDE 36

XCP – Xen Cloud Platform

Complete stack for server virtualization

  • Extends Xen to cover multiple hosts
  • Adds further functionality and integrations

for cloud, storage and networking to Xen HV

  • GPLv2
  • XenServer is a commercial XCP distro

Two Flavours

  • Appliance (ISO using CentOS Dom0)
  • Packages in Debian & Ubuntu

(more distros to come)

slide-37
SLIDE 37

Major XCP Features

  • VM lifecycle: live snapshots, checkpoint, migration
  • Resource pools: flexible storage and networking
  • Event tracking: progress, notification
  • Upgrade and patching capabilities
  • Real-time performance monitoring and alerting
  • Built-in support and templates for Windows and Linux guests
  • Open vSwitch support built-in (default)

More info: wiki.xen.org/wiki/XCP_Release_Features

slide-38
SLIDE 38
  • New format Windows drivers:

installable by Windows Update Service

  • Networking: Better VLAN scalability, LACP bonding, IPv6
  • Storage XenMotion:

– Migrate VMs between hosts or pools without shared storage – Move a VM’s disks between storage repositories while the VM is running

  • Other: more templates, latest Xen, OVS, etc.

XCP 1.6

More info: xen.org/download/xcp/releasenotes_1.6.0.html & More info: xen.org/download/xcp/index_1.6.0.html

slide-39
SLIDE 39

XCP and Cloud Orchestration Stacks

slide-40
SLIDE 40

Challenges for FOSS hypervisors

slide-41
SLIDE 41

“Security and QoS/Reliability are amongst the top 3 blockers for cloud adoption”

www.colt.net/cio-research

slide-42
SLIDE 42

System characteristics cloud users care about: “Robustness, Performance, Scalability & Security”

Results XCP User Survey 2012 – 90% of users quoted these as most important attributes

slide-43
SLIDE 43

Split Control Domain into Driver, Stub and Service Domains

– See: ”Breaking up is hard to do” @ Xen Papers – See: “Domain 0 Disaggregation for XCP and XenServer”

Used today by Qubes OS and Citrix XenClient XT Prototypes for XCP

Disaggregation

See qubes-os.org Different windows run in different VMs

slide-44
SLIDE 44

More Security Increased serviceability and flexibility Better Robustness Better Performance Better Scalability

Benefits of Disaggregation

Ability to safely restart parts of the system (e.g. just 275ms outage from failed Ethernet driver)

slide-45
SLIDE 45

Next: XCP Architecture Diagram Before and After Disaggregation

slide-46
SLIDE 46

CPU CPU RAM RAM NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

RAID

Xen Dom0

Network drivers NFS/ iSCSI

drivers

Qemu xapi Local storage

drivers

NFS/ iSCSI

drivers

Network drivers Qemu

eth eth eth eth scsi

User VM User VM

NB

gntdev

NB NF BF NF BF

qemu qemu

xapi vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged

gntdev gntdev

Dom0

xenopsd libxl healthd Domain manager

Dom0 . . . . Xen

xapi

slide-47
SLIDE 47

CPU CPU RAM RAM NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

RAID

Dom0

Network driver domain NFS/ iSCSI

driver domain

Qemu domain xapi domain

Logging domain

Local storage

driver domain

NFS/ iSCSI

driver domain

Network driver domain

User VM User VM

NB

gntdev

NB NF BF NF BF

dbus over v4v

qemu

xapi xenopsd libxl healthd Domain manager vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged

gntdev gntdev

eth eth eth eth scsi

Xen Xen D

  • m

dbus over v4v

. . .

slide-48
SLIDE 48

50

Xen Security Advantages

  • Even without Advanced Security Features

– Well-defined trusted computing base (much smaller than on type-2 HV) – Minimal services in hypervisor layer

  • Xen Security Modules (or XSM) and FLASK

– XSM is Xen equivalent of LSM – FLASK is Xen equivalent of SELinux – Developed, maintained and contributed to Xen by NSA – Compatible with SELinux (tools, architecture) – XSM object classes maps onto Xen features More info: http://www.slideshare.net/xen_com_mgr/ a-brief-tutorial-on-xens-advanced-security-features

slide-49
SLIDE 49

CPU CPU RAM RAM NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

NIC

(or SR- IOV VF)

RAID

Xen Dom0

Network driver domain NFS/ iSCSI

driver domain

Qemu domain xapi domain

Logging domain

Local storage

driver domain

NFS/ iSCSI

driver domain

Network driver domain

eth eth eth eth scsi

User VM User VM

NB

gntdev

NB NF BF NF BF

qemu

xapi xenopsd libxl healthd Domain manager vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged

gntdev gntdev

FLASK policy restricting access

D

  • m

. . .

dbus over v4v dbus over v4v

Xen

slide-50
SLIDE 50

News from the Xen Community

slide-51
SLIDE 51
  • PVH virtualization mode
  • Extend scope of Xen Security Modules
  • qxl Spice support for 3d acceleration
  • Updated and improved libvirt drivers for Xen
  • Lots of other stuff:

– scalability, performance, better NUMA support, …

Coming in Xen 4.3 (Q2 2013)

More info: blog.xen.org/index.php/2013/02/11/xen-4-3-mid-release-roadmap-update

slide-52
SLIDE 52

Fully functional for ARM v7 & v8 ARM v7: Versatile Express, Arndale & Samsung Chromebook ARM v8: Fast Model

Xen 4.3 for ARM Servers

slide-53
SLIDE 53

ARM SOC

Xen and ARM : a perfect Match

ARM Architecture Features for Virtualization

Hypervisor mode : EL2 Kernel mode : EL1 User mode : EL0 Hypercall interface :HVC

GIC v2 GT 2 stage MMU I/O Device Tree describes …

slide-54
SLIDE 54

ARM SOC ARM Architecture Features for Virtualization

EL2 EL1 EL0 HVC

GIC v2 GT 2 stage MMU I/O Device Tree describes …

Xen Hypervisor Dom0

  • nly

Any Xen Guest VM (including Dom0)

Kernel User Space

Xen and ARM : a perfect Match

slide-55
SLIDE 55

One mode to rule them all

x86: PVHVM P P VS VH x86: PVH P P P VH ARM v7 & v8 P VH VH VH Scope for improvement Optimal performance HVM mode/domain PV mode/domain

slide-56
SLIDE 56

Xen is coming back to CentOS In semi-private beta Planned release in CentOS 6.4 Include XAPI packages – aka XCP in CentOS

Xen in CentOS 6.4+

slide-57
SLIDE 57

Application stacks only running on Xen APIs Works on any Xen based cloud or hosting service Examples

– ErlangOnXen.org : Erlang – HalVM : Haskell – OpenMirage : Ocaml

Benefits:

– Small footprint – Low startup latency – Extremely fast migration of VMs

Xen Library Operating Systems

Xen Control domain (dom0) Host HW Guest VMn

Apps HW Drivers PV Back Ends Library OS embedded in Language run-time Dom0 Kernel

slide-58
SLIDE 58

Summary: Why Xen?

slide-59
SLIDE 59
  • Designed for the Cloud : many advantages for cloud use!

– Resilience, Robustness & Scalability – Security: Small surface of attack, Isolation & Advanced Security Features

  • Widely used by Cloud Providers and Vendors
  • XCP

– Ready for use with cloud orchestration stacks

  • Open Source with a large community and eco-system

– Xen is still on top of the game – Exciting new developments and features in the pipeline

slide-60
SLIDE 60

Thank You!

Slides available under CC-BY-SA 3.0 From www.slideshare.net/xen_com_mgr

@lars_kurth FREENODE: lars_kurth

  • IRC: ##xen @ FREENODE
  • Mailing List: xen-users & xen-api (lists.xen.org)
  • Wiki: wiki.xen.org
  • Ecosystem pages:

xen.org/community/ecosystem.html

  • Presentations & Videos:

xen.org/community/presentations.html