Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
Upcoming SlideShare
Loading in...5
×
 

Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond

on

  • 1,091 views

In 2013, the Xen Hypervisor will be 10 years old: when Xen was designed, we anticipated a world, which now is known as cloud computing. Today, Xen powers the largest clouds in production and is the ...

In 2013, the Xen Hypervisor will be 10 years old: when Xen was designed, we anticipated a world, which now is known as cloud computing. Today, Xen powers the largest clouds in production and is the basis for several commercial virtualization products. In this talk we will give on overview of Xen and related projects, cover hot developments in the Xen community and outline what comes next.
The talk is intended for users and developers that are familiar with virtualization: no deep knowledge is required. We will start with an architectural overview and cover topics such as: Xen and Linux, how to secure your cloud using disaggregation, SELinux and XSM/FLASK, the evolution of Paravirtualization, Xen on ARM and common challenges for open source hypervisors. We will explore the potential of Open Mirage for testing hypervisors. The talk will conclude with an outlook to the future of Xen.

Statistics

Views

Total Views
1,091
Views on SlideShare
1,021
Embed Views
70

Actions

Likes
2
Downloads
26
Comments
0

3 Embeds 70

https://twitter.com 37
http://eventifier.co 26
http://eventifier.com 7

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond Presentation Transcript

  • 10 Years of Xen and beyond … Lars Kurth Xen Project Community Manager lars.kurth@xen.org @lars_kurth FREENODE: lars_kurth
  • Xen.org becomes XenProject.org• Teams aka sub-projects – Hypervisor – XAPI – ARM Hypervisor (for Servers as well as Mobile Devices) – Mirage OS• Governance : mixture between Linux Kernel and Apache – Consensus decision making – Sub-project life-cycle (aka incubator) – PMC style structure for team leadership
  • Xen contributor community is diversifying100%90% • The number of “significant”80% active vendors is increasing70%60%50% • New feature development driving40%30% new participation20%10% 0% 2010 2011 2012 Citrix UPC SUSE Amazon University AMD GridCentric Individual NSA Intel Fujitsu iWeb Misc Oracle Spectralogic University of British Columbia
  • Hypervisor Architecture
  • Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on thehardware and hosts Guest OS’s. VMn VM1 VM0 Guest OS and Apps Scheduler Hypervisor Device Drivers/Models MMU Host HWI/O Memory CPUs Provides partition isolation + reliability, higher security
  • Hypervisor ArchitecturesType 1: Bare metal Hypervisor Type 2: OS ‘Hosted’A pure Hypervisor that runs directly on the A Hypervisor that runs within a Host OS and hostshardware and hosts Guest OS’s. Guest OS’s inside of it, using the host OS services to provide the virtual environment. VMn User-level VMM VMn VM1 User VM1 Apps VM0 Device Models VM0 Guest OS Guest OS and Apps and Apps Host OS Scheduler Hypervisor Ring-0 VM Monitor Device Drivers/Models Device Drivers “Kernel “ MMU Host HW Host HWI/O Memory CPUs I/O Memory CPUs Provides partition isolation + reliability, Low cost, no additional drivers higher security Ease of use & installation
  • Xen: Type 1 with a TwistType 1: Bare metal Hypervisor VMn VM1 VM0 Guest OS and Apps Scheduler Hypervisor Device Drivers/Models MMU Host HWI/O Memory CPUs
  • Xen: Type 1 with a TwistType 1: Bare metal Hypervisor Xen Architecture VMn VM1 VMn VM0 VM1 Guest OS VM0 and Apps Guest OS and Apps Scheduler Hypervisor Device Drivers/Models MMU Scheduler MMU Hypervisor Host HW Host HWI/O Memory CPUs I/O Memory CPUs
  • Xen: Type 1 with a TwistType 1: Bare metal Hypervisor Xen Architecture Control domain (dom0) VMn VM1 Device Models VMn VM0 VM1 Guest OS Drivers VM0 and Apps Guest OS Linux & BSD and Apps Scheduler Hypervisor Device Drivers/Models MMU Scheduler MMU Hypervisor Host HW Host HWI/O Memory CPUs I/O Memory CPUs
  • Xen Project 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
  • Basic Xen Concepts Console • Interface to the outside world Control Domain aka Dom0 VMn • Dom0 kernel with driversControl domain VM1(dom0) • Xen Management Toolstack VM0 Guest OS Guest Domains Dom0 Kernel and Apps • Your apps Scheduler MMU XSM Hypervisor Driver/Stub/Service Domain(s) • A “driver, device model or control Host HW service in a box”I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, killTrusted Computing Base 11
  • Basic Xen Concepts Console Console • Interface to the outside world Control Domain aka Dom0 VMn • Dom0 kernel with driversControl domain VM1(dom0) • Xen Management Toolstack VM0 Toolstack Guest OS Guest Domains Dom0 Kernel and Apps • Your apps Scheduler MMU XSM Hypervisor Driver/Stub/Service Domain(s) • A “driver, device model or control Host HW service in a box”I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, killTrusted Computing Base 12
  • Basic Xen Concepts Console Console • Interface to the outside world Control Domain aka Dom0 VMn • Dom0 kernel with driversControl domain VM1(dom0) • Xen Management Toolstack One or more VM0 Toolstack driver, stub or service domains Guest OS Guest Domains Dom0 Kernel and Apps • Your apps Scheduler MMU XSM Hypervisor Driver/Stub/Service Domain(s) • A “driver, device model or control Host HW service in a box”I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, killTrusted Computing Base 13
  • Xen Variants for Server & CloudHypervisor Xen Hypervisor 14
  • Xen Variants for Server & CloudHypervisor Xen HypervisorToolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other components Single Host Single Host Basic Functions Additional Functionality Multiple Hosts Additional Functionality 15
  • Xen Variants for Server & CloudHypervisor Xen HypervisorToolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other components Single Host Single Host Basic Functions Additional Functionality Multiple Hosts Additional Functionality
  • Xen Variants for Server & CloudProject Xen HypervisorToolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other componentsProducts Oracle VM Huawei UVP Citrix XenServer 17
  • Xen Variants for Server & CloudProject Xen HypervisorToolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other componentsProducts Oracle VM Huawei UVP Citrix XenServerUsed by … 18
  • Xen : Types of Virtualization
  • PV Domains Technology:Control domain Guest VMn(dom0) • Paravirtualization Apps Linux PV guests have limitations: • limited to a subset of set of virtual HW PV Back Ends PV Front Ends Advantages HW Drivers • Fast Dom0 Kernel Guest OS • Works on any system (even without virt extensions) Xen Hypervisor Host HWI/O Memory CPUs 20
  • PV Domains & Driver Domains Technology:Control domain Guest VMn Driver Domain(dom0) e.g. • Paravirtualization Apps • Disk Linux PV guests have limitations: • Network • limited to a subset of virtual HW PV Back Ends PV Front Ends PV Back End Advantages HW Drivers HW Driver • Fast Dom0 Kernel Guest OS Dom0 Kernel* • Works on any system (even without virt extensions) Xen Hypervisor Driver Domains • Security Host HW • IsolationI/O Memory CPUs • Reliability and Robustness *) Can be MiniOS 21
  • HVM & Stub Domains Technology:Dom0 Guest VMn • Shows emulation using QEMU/Device Model (SW Virtualization) IO Emulation • In other situation HW can be usedDevice Model Disadvantages IO Event • Emulation slower than PV (mainly I/O devices)Dom0 Kernel VMEXIT Advantages Xen Hypervisor • No kernel support needed Host HWI/O Memory CPUs 22
  • HVM & Stub Domains Technology:Dom0 Guest VMn Stubdomn Guest VMn • Shows emulation using QEMU/Device Model (SW Virtualization) IO Emulation IO Emulation • In other situation HW can be usedDevice Model Device Model Disadvantages IO Event • Emulation slower than PV IO Event (mainly I/O devices)Dom0 Kernel VMEXIT Mini OS VMEXIT Advantages Xen Hypervisor • No kernel support needed Stub Domains Host HW • SecurityI/O Memory CPUs • Isolation • Reliability and Robustness 23
  • The Virtualization Spectrum VS Virtualized (SW) VH Virtualized (HW) P ParavirtualizedFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VH HVM mode/domainPVHVM P P VS VHPVH Xen 4.4 P P P VH PV mode/domainFully Paravirtualized (PV) P P P P
  • The Virtualization Spectrum Optimal performance Scope for improvement Poor performanceFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VH HVM mode/domainPVHVM P P VS VHPVH Xen 4.4 P P P VH PV mode/domainFully Paravirtualized (PV) P P P P
  • The Virtualization Spectrum Important: Xen automatically picks the best option based on HW & OS capabilities and Optimal performance available drivers. As a Xen user I chose a HVM or PV domain. Scope for improvement Poor performanceFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VH HVM mode/domainPVHVM P P VS VHPVH Xen 4.4 P P P VH PV mode/domainFully Paravirtualized (PV) P P P P
  • XAPI, XCP and XCP-XAPI
  • XAPI, XCP and XCP-XAPI : What is it?Hypervisor Xen HypervisorToolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other components Single Host Single Host Basic Functions Additional Functionality Multiple Hosts Additional Functionality
  • XAPI : What do I get? • VM lifecycle: live snapshots, checkpoint, migration Xen Hypervisor • Storage XenMotion: Migrate VMs between hosts or pools XAPI / XE without shared storage (while the VM is running) • Resource pools: flexible storage and networking • Event tracking: progress, notificationMultiple Hosts • Upgrade and patching capabilitiesAdditional Functionality • 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
  • XAPI : two variants! Xen Hypervisor XAPI / XEXCP ISO (at v1.6) XCP-XAPI packages Multiple HostsXen 4.1.3 + XAPI Additional Functionality Debian WheezyCentOS 5.3 Ubuntu 12.04 LTSKernel (v2.6.32.43)OVS 1.4.2 Others in progress …
  • XAPI : Orchestration and UIs Xen Hypervisor XAPI / XEMultiple HostsAdditional Functionality
  • Challenges for FOSS hypervisors
  • “Security and QoS/Reliability are amongst the top 3 blockers for cloud adoption” www.colt.net/cio-research
  • System characteristics cloud users care about:“Robustness, Performance, Scalability & Security”Results XCP User Survey 2012 – 90% of users quoted these as most important attributes
  • DisaggregationSplit 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 XTPrototypes for XAPI See qubes-os.org Different windows run in different VMs
  • Benefits of DisaggregationMore SecurityIncreased serviceability and flexibilityBetter RobustnessBetter Performance Ability to safely restart parts of the system (e.g. just 275ms outage from failed Ethernet driver)Better Scalability
  • Next: XAPI Architecture Diagram Before and After Disaggregation
  • User VM User VM NF BF NF BF NB gntdev NB gntdev gntdevDom0 Network NFS/ Dom0 Qemu xapi Qemu Network NFS/ Local drivers iSCSI drivers iSCSI storageDomainmanager drivers . drivers drivers qemu . qemuhealthd storaged storaged storaged networkd . networkdxenopsd tapdisk syslogd . tapdisk tapdisk libxl vswitch blktap3 vswitch blktap3 blktap3 xapi xapi eth eth Dom0 eth eth scsi Xen Xen CPU CPU NIC NIC RAM RAM NIC NIC (or SR- (or SR- (or SR- (or SR- RAID IOV VF) IOV VF) IOV VF) IOV VF)
  • User VM User VM NF BF NF BF NB gntdev NB gntdev gntdevDom0 Network NFS/ Qemu xapi D Logging Network NFS/ Local driver iSCSI domain domain domain driver iSCSI storageDomain omanager domain driver m . domain driver driver domain domain domainhealthd storaged qemu 0 . storaged storaged networkd networkdxenopsd tapdisk . tapdisk tapdisk libxl vswitch blktap3 xapi syslogd vswitch blktap3 blktap3 dbus over v4v dbus over v4v eth eth eth eth scsi Xen Xen CPU CPU NIC NIC RAM RAM NIC NIC (or SR- (or SR- (or SR- (or SR- RAID IOV VF) IOV VF) IOV VF) IOV VF)
  • 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 featuresMore info: http://www.slideshare.net/xen_com_mgr/ a-brief-tutorial-on-xens-advanced-security-features 40
  • User VM User VM NF BF NF BF NB gntdev NB gntdev gntdevDom0 Network NFS/ Qemu xapi D Logging Network NFS/ Local driver iSCSI domain domain domain driver iSCSI storageDomain omanager domain driver m . domain driver driver domain domain domain healthd storaged qemu 0 . storaged storaged networkd networkdxenopsd tapdisk . tapdisk tapdisk libxl vswitch blktap3 xapi syslogd vswitch blktap3 blktap3 dbus over v4v dbus over v4v eth eth eth eth scsiFLASK policyrestricting access Xen Xen CPU CPU NIC NIC RAM RAM NIC NIC (or SR- (or SR- (or SR- (or SR- RAID IOV VF) IOV VF) IOV VF) IOV VF)
  • ARM Hypervisor
  • Xen 4.3 for ARM ServersFully functional for ARM v7 & v8ARM v7: Versatile Express, Arndale &Samsung ChromebookARM v8: Fast Model
  • Xen + ARM = a perfect MatchARM SOC ARM Architecture Features for Virtualization User mode : EL0Device Tree describes … Kernel mode : EL1 I/O Hypercall Interface HVC GIC 2 stage GT v2 MMU Hypervisor mode : EL2
  • Xen + ARM = a perfect MatchARM SOC ARM Architecture Features for Virtualization EL0Device Tree describes … EL1 I/O HVC GIC 2 stage GT v2 MMU EL2 Xen Hypervisor
  • Xen + ARM = a perfect MatchARM SOC ARM Architecture Features for Virtualization Any Xen Guest VM (including Dom0) EL0Device Tree describes … User Space Kernel EL1 I/O HVC GIC 2 stage GT v2 MMU EL2 Xen Hypervisor
  • Xen + ARM = a perfect MatchARM SOC ARM Architecture Features for Virtualization Dom0 Any Xen Guest VM (including Dom0) only EL0Device Tree describes … User Space Kernel PV PV back front EL1 I/O HVC GIC 2 stage GT v2 MMU EL2 Xen Hypervisor
  • One mode to rule them all Optimal performance Scope for improvementx86: PVHVM P P VS VH HVM mode/domainx86: PVH P P P VH PV mode/domainARM v7 & v8 P VH VH VH
  • Code Size of x86 and ARM HypervisorsX86 Hypervisor 100K -120K LOC Any x86 CPUARM Hypervisor for 60K LOC ARM v5 – v7mobile Devices (no virt extensions) (extra code for RT)ARM Hypervisor for 17K LOC ARM v7+Servers (virt extensions)
  • Mirage OS
  • Library Operating SystemsApplication stacks only running on Xen APIs Control domain Guest VMnWorks on any Xen based cloud or hosting service (dom0) AppsExamples PV Back Ends – ErlangOnXen.org : Erlang Library OS embedded – HalVM : Haskell HW Drivers in Language run-time – Mirage OS : Ocaml Dom0 KernelBenefits: Xen – Small footprint Host HW – Low startup latency – Extremely fast migration of VMs
  • Mirage OS• Recently added to Xen Project incubator• In beta stage : first release on its way• Clean-slate protocols implementations, e.g. – TCP/IP, DNS, SSH, Openflow (switch/controller), HTTP, XMPP, ... – New applications using next generation XAPI (disaggregated XAPI architecture)More info: http://www.slideshare.net/xen_com_mgr/ mirage-extreme-specialisation-of-virtual-appliances
  • What’s Next?
  • Coming in Xen 4.3 (Q2 2013)• Code Freeze now• Xen ARM for Servers• 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, …More info: blog.xen.org/index.php/2013/02/11/xen-4-3-mid-release-roadmap-update
  • What’s next (and already happening)• Establish a shared test infrastructure – Most major contributors are duplicating effort – Mirage OS provides interesting opportiunities• Usability and better distro-integration – Example: Xen + XAPI in CentOS 6.4• More focus on downstreams – Examples: OpenStack and Xen Orchestra• Disaggregation in Xen toolstacks (e.g XAPI)• Better Libvirt and virt-manager integration – Embed Xen more into the Linux eco-system and provide benefits for the wider Linux community
  • Getting Started with Xen Projects• Document Days• Test Days• Mailing Lists and IRC• Find me and I can get you hooked up! Xen Hackathon, May 16-17, Dublin, Ireland @Google
  • • 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/xenThank You! @lars_kurth FREENODE: lars_kurth Slides available under CC-BY-SA 3.0 From www.slideshare.net/xen_com_mgr