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 diversifying 100% • The number of “significant” 90% active vendors is increasing 80% 70% 60% • New feature development driving 50% 40% new participation 30% 20% 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 Architectures Type 1: Bare metal Hypervisor A pure Hypervisor that runs directly on the hardware and hosts Guest OS’s. VM n VM 1 VM 0 Guest OS and Apps Hypervisor Scheduler Device Drivers/Models MMU Host HW I/O Memory CPUs Provides partition isolation + reliability, higher security
Hypervisor Architectures Type 2: OS ‘Hosted’ Type 1: Bare metal Hypervisor A pure Hypervisor that runs directly on the A Hypervisor that runs within a Host OS and hosts hardware and hosts Guest OS’s. Guest OS’s inside of it, using the host OS services to provide the virtual environment. VM n User-level VMM VM n User VM 1 VM 1 Apps Device Models VM 0 VM 0 Guest OS Guest OS and Apps and Apps Host OS Hypervisor Scheduler Ring-0 VM Monitor “ Kernel “ Device Drivers Device Drivers/Models MMU Host HW Host HW I/O Memory CPUs I/O Memory CPUs Low cost, no additional drivers Provides partition isolation + reliability, Ease of use & installation higher security
Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor VM n VM 1 VM 0 Guest OS and Apps Hypervisor Scheduler Device Drivers/Models MMU Host HW I/O Memory CPUs
Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor Xen Architecture VM n VM 1 VM n VM 0 VM 1 Guest OS VM 0 and Apps Guest OS and Apps Hypervisor Scheduler Device Drivers/Models Hypervisor MMU Scheduler MMU Host HW Host HW I/O Memory CPUs I/O Memory CPUs
Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor Xen Architecture Control domain (dom0) VM n VM 1 VM n Device Models VM 0 VM 1 Guest OS VM 0 Drivers and Apps Guest OS and Apps Linux & BSD Hypervisor Scheduler Device Drivers/Models Hypervisor MMU Scheduler MMU Host HW Host HW I/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 VM n • Dom0 kernel with drivers Control domain VM 1 • Xen Management Toolstack (dom0) VM 0 Guest Domains Guest OS • Your apps and Apps Dom0 Kernel Driver/Stub/Service Domain(s) Hypervisor Scheduler MMU XSM • A “driver, device model or control Host HW service in a box” I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, kill Trusted Computing Base 11
Basic Xen Concepts Console Console • Interface to the outside world Control Domain aka Dom0 VM n • Dom0 kernel with drivers Control domain VM 1 • Xen Management Toolstack (dom0) VM 0 Guest Domains Toolstack Guest OS • Your apps and Apps Dom0 Kernel Driver/Stub/Service Domain(s) Hypervisor Scheduler MMU XSM • A “driver, device model or control Host HW service in a box” I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, kill Trusted Computing Base 12
Basic Xen Concepts Console Console • Interface to the outside world Control Domain aka Dom0 VM n • Dom0 kernel with drivers Control domain VM 1 • Xen Management Toolstack (dom0) One or more VM 0 Guest Domains Toolstack driver, stub or Guest OS service domains • Your apps and Apps Dom0 Kernel Driver/Stub/Service Domain(s) Hypervisor Scheduler MMU XSM • A “driver, device model or control Host HW service in a box” I/O Memory CPUs • De-privileged and isolated • Lifetime: start, stop, kill Trusted Computing Base 13
Xen Variants for Server & Cloud Hypervisor Xen Hypervisor 14
Xen Variants for Server & Cloud Hypervisor Xen Hypervisor Toolstack / 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 & Cloud Hypervisor Xen Hypervisor Toolstack / 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 & Cloud Project Xen Hypervisor Toolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other components Products Oracle VM Huawei UVP Citrix XenServer 17
Xen Variants for Server & Cloud Project Xen Hypervisor Toolstack / Console Default / XL (XM) Libvirt / VIRSH XAPI / XE Increased level of functionality and integration with other components Products Oracle VM Huawei UVP Citrix XenServer Used by … 18
Xen : Types of Virtualization
PV Domains Technology: Control domain Guest VM n • Paravirtualization (dom0) Linux PV guests have limitations: Apps • limited to a subset of set of virtual HW PV Back Ends PV Front Ends Advantages • Fast HW Drivers • Works on any system Dom0 Kernel Guest OS (even without virt extensions) Xen Hypervisor Host HW I/O Memory CPUs 20
PV Domains & Driver Domains Technology: Control domain Guest VM n Driver Domain • Paravirtualization (dom0) e.g. • Disk Linux PV guests have limitations: Apps • Network • limited to a subset of virtual HW PV Back Ends PV Front Ends PV Back End Advantages • Fast HW Drivers HW Driver • Works on any system Dom0 Kernel Guest OS Dom0 Kernel* (even without virt extensions) Driver Domains Xen Hypervisor • Security Host HW • Isolation I/O Memory CPUs • Reliability and Robustness *) Can be MiniOS 21
HVM & Stub Domains Technology: Dom0 Guest VM n • Shows emulation using QEMU/Device Model (SW Virtualization) • In other situation HW can be used IO Emulation Device Model Disadvantages • Emulation slower than PV IO Event (mainly I/O devices) Dom0 Kernel VMEXIT Advantages • No kernel support needed Xen Hypervisor Host HW I/O Memory CPUs 22
HVM & Stub Domains Technology: Dom0 Guest VM n Stubdom n Guest VM n • Shows emulation using QEMU/Device Model (SW Virtualization) • In other situation HW can be used IO Emulation IO Emulation Device Model Device Model Disadvantages • Emulation slower than PV IO Event IO Event (mainly I/O devices) Dom0 Kernel VMEXIT Mini OS VMEXIT Advantages • No kernel support needed Xen Hypervisor Stub Domains Host HW • Security I/O Memory CPUs • Isolation • Reliability and Robustness 23
The Virtualization Spectrum VS Virtualized (SW) Virtualized (HW) VH P Paravirtualized Fully Virtualized (FV) VS VS VS VH HVM mode/domain FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH Xen 4.4 P P P VH PV mode/domain Fully Paravirtualized (PV) P P P P
The Virtualization Spectrum Optimal performance Scope for improvement Poor performance Fully Virtualized (FV) VS VS VS VH HVM mode/domain FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH Xen 4.4 P P P VH PV mode/domain Fully 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 performance Fully Virtualized (FV) VS VS VS VH HVM mode/domain FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH Xen 4.4 P P P VH PV mode/domain Fully Paravirtualized (PV) P P P P
XAPI, XCP and XCP-XAPI
XAPI, XCP and XCP-XAPI : What is it? Hypervisor Xen Hypervisor Toolstack / 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
Recommend
More recommend