54
Lars Kurth Xen Project Community Manager [email protected] 10 Years of Xen and beyond … @lars_kurth FREENODE: lars_kurth

10 Years of Xen and beyond …

  • Upload
    adah

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

10 Years of Xen and beyond … . Lars Kurth Xen Project Community Manager [email protected]. @ lars_kurth. FREENODE: lars_kurth. Xen.org becomes XenProject.org. Xen.org (single vendor Open Source). XenProject.org (truly vendor neutral Open Source). - PowerPoint PPT Presentation

Citation preview

Page 1: 10 Years of Xen and beyond …

Lars KurthXen Project Community Manager

[email protected]

10 Years of Xen and beyond …

@lars_kurthFREENODE: lars_kurth

Page 2: 10 Years of Xen and beyond …

Xen.org becomes XenProject.org

Xen.org(single vendor Open Source)

XenProject.org(truly vendor neutral Open Source)

Page 3: 10 Years of Xen and beyond …

Xen contributor community is diversifying

2010 2011 20120%

10%20%30%40%50%60%70%80%90%

100%

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

• Linux Foundation Collaborative Project was next logical step

Page 4: 10 Years of Xen and beyond …

Xen : The Gears of the Cloud• Large user base more than 10 million individuals users

• Powers the largest clouds in production

• Not just for Servers

Page 5: 10 Years of Xen and beyond …

• Teams aka sub-projects– Hypervisor – XAPI – ARM Hypervisor (for Servers as well as Mobile Devices)– Mirage OS (a Xen Library OS)

• Governance : mixture between Linux Kernel and Apache

XenProject.org Overview

Page 6: 10 Years of Xen and beyond …

Hypervisor Architecture

Page 7: 10 Years of Xen and beyond …

Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on the hardware and hosts Guest OS’s.

Provides partition isolation + reliability, higher security

Host HWMemory CPUsI/O

HypervisorScheduler

MMUDevice Drivers/Models

VMn

VM1

VM0

Guest OSand Apps

Page 8: 10 Years of Xen and beyond …

Hypervisor ArchitecturesType 1: Bare metal HypervisorA 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 HWMemory CPUsI/O

Host HWMemory CPUsI/O

HypervisorScheduler

MMUDevice Drivers/Models

VMn

VM1

VM0

Guest OSand Apps

Host OS

Device DriversRing-0 VM Monitor “Kernel “

VMn

VM1

VM0

Guest OSand Apps

UserApps

User-level VMM

Device Models

Page 9: 10 Years of Xen and beyond …

Xen: Type 1 with a TwistType 1: Bare metal Hypervisor

Host HWMemory CPUsI/O

HypervisorScheduler

MMUDevice Drivers/Models

VMn

VM1

VM0

Guest OSand Apps

Page 10: 10 Years of Xen and beyond …

Xen: Type 1 with a TwistType 1: Bare metal Hypervisor

Host HWMemory CPUsI/O

HypervisorScheduler

MMUDevice Drivers/Models

VMn

VM1

VM0

Guest OSand Apps

Host HWMemory CPUsI/O

Hypervisor

VMn

VM1

VM0

Guest OSand Apps

Xen Architecture

Scheduler MMU

Page 11: 10 Years of Xen and beyond …

Xen: Type 1 with a TwistType 1: Bare metal Hypervisor

Host HWMemory CPUsI/O

HypervisorScheduler

MMUDevice Drivers/Models

VMn

VM1

VM0

Guest OSand Apps

Host HWMemory CPUsI/O

Hypervisor

VMn

VM1

VM0

Guest OSand Apps

Xen Architecture

Scheduler MMU

Control domain (dom0)

Drivers

Device Models

Linux & BSD

Page 12: 10 Years of Xen and beyond …

Xen Project and Linux• Xen Hypervisor is not in the Linux kernel• BUT: everything Xen and Xen Guests need to run is!

– Linux Kernel 3.0+ is Xen-enabled• 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

Page 13: 10 Years of Xen and beyond …

Basic Xen Concepts

13

Control domain (dom0)

Host HW

VMn

VM1

VM0

Guest OSand Apps

Memory CPUsI/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

HypervisorScheduler MMU XSM

Trusted Computing Base

Page 14: 10 Years of Xen and beyond …

Basic Xen Concepts

14

Control domain (dom0)

Host HW

VMn

VM1

VM0

Guest OSand Apps

Console

Memory CPUsI/O

Dom0 Kernel

Toolstack

HypervisorScheduler 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

Page 15: 10 Years of Xen and beyond …

Basic Xen Concepts

15

Control domain (dom0)

Host HW

VMn

VM1

VM0

Guest OSand Apps

Console

Memory CPUsI/O

One or moredriver, stub or service domains

Dom0 Kernel

Toolstack

HypervisorScheduler 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

Page 16: 10 Years of Xen and beyond …

Xen : Types of Virtualization

Page 17: 10 Years of Xen and beyond …

17

Xen Hypervisor

Control domain (dom0)

Host HW

Guest VMn

Apps

Memory CPUsI/O

Technology:• ParavirtualizationLinux PV guests have limitations:• limited to a subset of set of virtual HW

Advantages• Fast• Works on any system

(even without virt extensions)

HW Drivers

PV Back Ends PV Front Ends

Guest OSDom0 Kernel

PV Domains

Page 18: 10 Years of Xen and beyond …

18

Xen Hypervisor

Control domain (dom0)

Host HW

Guest VMn

Apps

Memory CPUsI/O

Technology:• ParavirtualizationLinux PV guests have limitations:• limited to a subset of virtual HW

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 Domaine.g. • Disk• Network

HW Driver

PV Back End

Dom0 Kernel*

*) Can be MiniOS

Guest OSDom0 Kernel

PV Domains & Driver Domains

Page 19: 10 Years of Xen and beyond …

19

Xen Hypervisor

Dom0

Host HW

Guest VMn

Technology:• Shows emulation using QEMU/Device

Model (SW Virtualization)• In other situation HW can be usedDisadvantages• Emulation slower than PV

(mainly I/O devices)

Advantages• No kernel support needed

Device ModelIO Emulation

IO Event

VMEXITDom0 Kernel

HVM

Memory CPUsI/O

Page 20: 10 Years of Xen and beyond …

20

Xen Hypervisor

Dom0

Host HW

Guest VMn

Technology:• Shows emulation using QEMU/Device

Model (SW Virtualization)• In other situation HW can be usedDisadvantages• Emulation slower than PV

(mainly I/O devices)

Advantages• No kernel support needed

Stub Domains• Security• Isolation• Reliability and Robustness

Device ModelIO Emulation

IO Event

VMEXIT

Stubdomn

Device Model

Mini OS

Guest VMn

IO Emulation

IO Event

VMEXITDom0 Kernel

HVM & Stub Domains

Memory CPUsI/O

Page 21: 10 Years of Xen and beyond …

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VH

Fully Paravirtualized (PV) P P P P

VH Virtualized (HW)

P Paravirtualized

VS Virtualized (SW)

HVM mode/domain

PV mode/domainDisk

and N

etwork

Interru

pts, Ti

mersEm

ulated

Moth

erboard

,

Le

gacy

bootPriv

ilege

d Instr

uctions

an

d page t

ables

Xen 4.4

Page 22: 10 Years of Xen and beyond …

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VH

Fully Paravirtualized (PV) P P P P

Scope for improvement

Poor performance

Optimal performance

HVM mode/domain

Disk an

d Netw

orkInter

rupts,

Timers

Emulat

ed M

otherb

oard,

Le

gacy

bootPriv

ilege

d Instr

uctions

an

d page t

ables

Xen 4.4PV mode/domain

Page 23: 10 Years of Xen and beyond …

The Virtualization Spectrum

Fully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VH

Fully Paravirtualized (PV) P P P P

Scope for improvement

Poor performance

Optimal performance

HVM mode/domain

Disk an

d Netw

orkInter

rupts,

Timers

Emulat

ed M

otherb

oard,

Le

gacy

bootPriv

ilege

d Instr

uctions

an

d page t

ables

Xen 4.4PV mode/domain

Important: Xen automatically picks the best option based on HW & OS capabilities and available drivers.As a Xen user I chose a HVM or PV domain.

Page 24: 10 Years of Xen and beyond …

Xen Variants

Page 25: 10 Years of Xen and beyond …

25

Xen Variants for Server & CloudXen HypervisorHypervisor

Page 26: 10 Years of Xen and beyond …

Single HostBasic Functions

Multiple HostsAdditional Functionality

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 HostAdditional Functionality

Xen Hypervisor

Page 27: 10 Years of Xen and beyond …

27

Xen Variants for Server & Cloud

Default / XL (XM)Toolstack / Console Libvirt / VIRSH

Project

XAPI / XE

Xen Hypervisor

Cloud Orchestration

Page 28: 10 Years of Xen and beyond …

28

Xen Variants for Server & Cloud

Default / XL (XM)Toolstack / Console Libvirt / VIRSH

Products Oracle VM Huawei UVP Citrix XenServer

Project

XAPI / XE

Xen Hypervisor

Page 29: 10 Years of Xen and beyond …

29

Xen Variants for Server & Cloud

Default / XL (XM)Toolstack / Console Libvirt / VIRSH

Used by …

Project

XAPI / XE

Xen Hypervisor

Page 30: 10 Years of Xen and beyond …

XAPI, XCP and XCP-XAPI

Page 31: 10 Years of Xen and beyond …

XAPI : What do I get?

Multiple HostsAdditional Functionality

XAPI / XE

Xen Hypervisor• VM lifecycle: live snapshots, checkpoint, migration • Storage XenMotion: Migrate VMs between hosts or pools

without shared storage (while the VM is running)• Resource pools: flexible storage and networking• Event tracking: progress, notification • Upgrade and patching capabilities • Real-time performance monitoring and alerting

• Templates for Windows and Linux guests• Open vSwitch support built-in (default)

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

Page 32: 10 Years of Xen and beyond …

XAPI : two variants!

Multiple HostsAdditional Functionality

XAPI / XE

Xen Hypervisor

XCP ISO (at v1.6)

Xen 4.1.3 + XAPICentOS 5.3Kernel (v2.6.32.43)OVS 1.4.2

XCP-XAPI packages

Debian WheezyUbuntu 12.04 LTS

CentOS 6.4 soon

Page 33: 10 Years of Xen and beyond …

Challenges for FOSS hypervisors

Page 34: 10 Years of Xen and beyond …

System characteristics cloud users care about: “Robustness, Performance & Security”Results XCP User Survey 2013 – users quoted these as most important attributes

Page 35: 10 Years of Xen and beyond …

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 XAPI

Disaggregation

See qubes-os.org

Different windows runin different VMs

Page 36: 10 Years of Xen and beyond …

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)

Page 37: 10 Years of Xen and beyond …

Next: XAPI Architecture Diagram Before and After Disaggregation

Page 38: 10 Years of Xen and beyond …

CPUCPURAM RAMNIC

(or SR-IOV VF)

NIC(or SR-IOV VF)

NIC(or SR-IOV VF)

NIC(or SR-IOV VF)

RAID

Xen

Dom0Network 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

tapdiskblktap3

storaged

syslogdvswitch

networkd

tapdiskblktap3

storaged

tapdiskblktap3

storaged

gntdev gntdev

Dom0

xenopsdlibxl

healthd

Domain manager

Dom0

.

.

.

.

Xen

xapi

Page 39: 10 Years of Xen and beyond …

CPUCPURAM RAMNIC

(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

Qemudomain

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

xapixenopsd

libxl

healthd

Domain manager

vswitch

networkd

tapdiskblktap3

storaged

syslogd vswitch

networkd

tapdiskblktap3

storaged

tapdiskblktap3

storaged

gntdev gntdev

eth eth eth eth scsi

Xen Xen

Dom0

dbus over v4v

.

.

.

Page 40: 10 Years of Xen and beyond …

40

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

Xen Security Modules (XSM) & FLASK

Page 41: 10 Years of Xen and beyond …

CPUCPURAM RAMNIC

(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

Qemudomain

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

xapixenopsd

libxl

healthd

Domain manager

vswitch

networkd

tapdiskblktap3

storaged

syslogd vswitch

networkd

tapdiskblktap3

storaged

tapdiskblktap3

storaged

gntdev gntdev

FLASK policyrestricting access

Dom0

.

.

.

dbus over v4v dbus over v4v

Xen

Page 42: 10 Years of Xen and beyond …

42

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

• Advanced Security Features– Xen has many Advanced Security Features– Most are not switched on by default– Although most are simple to use, some seen complicated

More info: http://www.slideshare.net/xen_com_mgr/ a-brief-tutorial-on-xens-advanced-security-features

Page 43: 10 Years of Xen and beyond …

ARM Hypervisor

Page 44: 10 Years of Xen and beyond …

ARM Servers Coming to Market4GB RAM, 4 cores per node3 x 6 x 4 x 4 = 288 cores per 4 RU

Xen for ARM Servers : Why ?

Single node virtualization capabilityManageability

Page 45: 10 Years of Xen and beyond …

Fully functional for ARM v7 & v8

ARM v7: Versatile Express, Arndale &Samsung Chromebook

ARM v8: Fast Model

Xen 4.3 for ARM Servers

Page 46: 10 Years of Xen and beyond …

ARM SOC

Xen + ARM = a perfect MatchARM Architecture Features for Virtualization

Hypervisor mode : EL2

Kernel mode : EL1

User mode : EL0

GICv2GT 2 stage

MMU

I/O

Device Tree describes …

Hypercall Interface HVC

Page 47: 10 Years of Xen and beyond …

ARM SOC ARM Architecture Features for Virtualization

EL2

EL1

EL0

GICv2GT 2 stage

MMU

I/O

Device Tree describes …

HVC

Xen + ARM = a perfect Match

Xen Hypervisor

Dom0only

Any Xen Guest VM (including Dom0)

Kernel

User Space

I/O

PVback

PV frontI/O

HVC

Page 48: 10 Years of Xen and beyond …

One mode to rule them all

x86: PVHVM P P VS VHx86: PV P P P P

ARM v7 & v8 P VH VH VH

Scope for improvement

Optimal performance

HVM mode/domainPV mode/domain

Disk an

d Netw

orkInter

rupts,

Timers

Emulat

ed M

otherb

oard,

Le

gacy

bootPriv

ilege

d Instr

uctions

an

d page t

ables

Page 49: 10 Years of Xen and beyond …

What’s Next?

Page 50: 10 Years of Xen and beyond …

• Release candidates & Xen Test Days (June 5th)

• Xen ARM for Servers• Extend scope of Xen Security Modules• Default to QEMU upstream• Updated and improved libvirt drivers for Xen• Lots of other stuff:

– scalability, performance, better NUMA support, …

Xen 4.3 Release (June 2013)

More info: http://lists.xen.org/archives/html/xen-devel/2013-05/msg01134.html

Page 51: 10 Years of Xen and beyond …

“For about a year members of the Xen Project, the CentOS community and large Xen Users have worked on bringing Xen and XAPI to CentOS 6”

Driven by demand from the community : • Can run Xen on CentOS 6 today, but non-trivial• We wanted “YUM INSTALL XEN”• Mostly a packaging problem• Teams from CentOS, Citrix, Go Daddy & Rackspace• QA and usability sanity checks

Xen 4 + XAPI in CentOS 6 (June 2013)

Page 52: 10 Years of Xen and beyond …

“Growth is leading to more structure & more collaboration & more openness!”

• Establishing a shared and open test infrastructure– Goal: Increase development velocity and quality

• Improved usability and better distro-integration– Xen + XAPI in CentOS 6.4

• More focus on downstreams – OpenStack and Xen Orchestra– Better libvirt and virt-manager integration

• Changing the XAPI / XCP release model• Xen on ARM and collaboration with Linaro

The Xen Community is Changing

Page 53: 10 Years of Xen and beyond …

Online : xenproject.org > User & Help menus• Mailing Lists and IRC• Q&A System• Find me and I can get you hooked up!

Events : xenproject.org/about/events.html• Test Days (IRC at #xentest) … next one June 5th• Document Days (IRC at #xendocs) … the next one is June 24th

• User (Sept 18, New Orleans) and Developer Summits (Oct 24-25, Edinburgh)• Hackathons – see http://blog.xen.org/index.php/2013/05/28/

event-report-xen-hackathon-2013/

Getting Started with Xen Projects

Page 54: 10 Years of Xen and beyond …

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

@lars_kurth

FREENODE: lars_kurth

• News: blog.xenproject.org• Web: xenproject.org

– Help for IRC, Lists, …– Stackoverflow like Q&A

• Wiki: wiki.xenproject.org• Presentations: slideshare.net/xen_com_mgr• Videos: vimeo.com/channels/xen