Lars KurthXen Project Community Managerlars.kurth@xen.org10 Years of Xen and beyond …@lars_kurthFREENODE: lars_kurth
• Teams aka sub-projects– Hypervisor– XAPI– ARM Hypervisor (for Servers as well as Mobile Devices)– Mirage OS• Governance ...
Xen contributor community is diversifying0%10%20%30%40%50%60%70%80%90%100%2010 2011 2012Citrix UPCSUSE AmazonUniversity AM...
Hypervisor Architecture
Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on thehardware and hosts Guest O...
Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on thehardware and hosts Guest O...
Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM...
Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM...
Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM...
Xen Project and Linux• Xen Hypervisor is not in the Linux kernel• BUT: everything Xen and Xen Guests need to run is!• Xen ...
Basic Xen Concepts11Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsMemory CPUsI/OConsole• Interface to the outside wo...
Basic Xen Concepts12Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsConsoleMemory CPUsI/ODom0 KernelToolstackHyperviso...
Basic Xen Concepts13Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsConsoleMemory CPUsI/OOne or moredriver, stub orser...
14Xen Variants for Server & CloudXen HypervisorHypervisor
Single HostBasic FunctionsMultiple HostsAdditional Functionality15Xen Variants for Server & CloudIncreased level of functi...
Single HostBasic FunctionsMultiple HostsAdditional FunctionalityXen Variants for Server & CloudIncreased level of function...
17Xen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)To...
18Xen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)To...
Xen : Types of Virtualization
20Xen HypervisorControl domain(dom0)Host HWGuest VMnAppsMemory CPUsI/OTechnology:• ParavirtualizationLinux PV guests have ...
21Xen HypervisorControl domain(dom0)Host HWGuest VMnAppsMemory CPUsI/OTechnology:• ParavirtualizationLinux PV guests have ...
22Xen HypervisorDom0Host HWGuest VMnTechnology:• Shows emulation using QEMU/DeviceModel (SW Virtualization)• In other situ...
23Xen HypervisorDom0Host HWGuest VMnTechnology:• Shows emulation using QEMU/DeviceModel (SW Virtualization)• In other situ...
The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P ...
The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P ...
The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P ...
Single HostBasic FunctionsMultiple HostsAdditional FunctionalityXAPI, XCP and XCP-XAPI : What is it?Increased level of fun...
XAPI : What do I get?Multiple HostsAdditional FunctionalityXAPI / XEXen Hypervisor• VM lifecycle: live snapshots, checkpoi...
XAPI : two variants!Multiple HostsAdditional FunctionalityXAPI / XEXen HypervisorXCP ISO (at v1.6)Xen 4.1.3 + XAPICentOS 5...
XAPI : Orchestration and UIsMultiple HostsAdditional FunctionalityXAPI / XEXen Hypervisor
Other XEN Cloud OrchestrationSingle HostBasic FunctionsXM or XLXen HypervisorSingle HostAdditional FunctionalityLibvirtXen...
Challenges for FOSS hypervisors
“Security and QoS/Reliability are amongstthe 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 201...
Split Control Domain into Driver,Stub and Service Domains– See: ”Breaking up is hard to do” @ Xen Papers– See: “Domain 0 D...
More SecurityIncreased serviceability and flexibilityBetter RobustnessBetter PerformanceBetter ScalabilityBenefits of Disa...
Next: XAPI Architecture DiagramBefore and After Disaggregation
CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDXenDom0NetworkdriversNFS/iSCSIdrivers...
CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDDom0 NetworkdriverdomainNFS/iSCSIdriv...
40Xen Security Advantages• Even without Advanced Security Features– Well-defined trusted computing base (much smaller than...
CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDXenDom0 NetworkdriverdomainNFS/iSCSId...
42Xen Advanced Security Recipes• Xen has many Security Features (besides the ones I covered)• Most are not switched on by ...
ARM Hypervisor
Xen on ARM• by Stefano Stabellini –Xen and Xen-ARM Linux maintainer• New York III from 10:45 to 11:30• Including a demoIn ...
Mirage OS
Application stacks only running on Xen APIsWorks on any Xen based cloud or hosting serviceExamples– ErlangOnXen.org : Erla...
• Recently added to Xen Project incubator• In beta stage : first release on its way (July 2013)• Clean-slate protocols imp...
Hot Topics and Projects
• Release candidates & Xen Test Days (today, June 5th)• Xen ARM for Servers• Extend scope of Xen Security Modules• Default...
“For about a year members of the Xen Project, the CentOS communityand large Xen Users have worked on bringing Xen and XAPI...
“Growth is leading to more structure & more collaboration & more openness!”• Establishing a shared and open test infrastru...
Online : xenproject.org > User & Help menus• Mailing Lists and IRC• Q&A System• Find me and I can get you hooked up!Events...
Thank You!Slides available under CC-BY-SA 3.0From www.slideshare.net/xen_com_mgr@lars_kurthFREENODE: lars_kurth• News: blo...
Upcoming SlideShare
Loading in...5
×

LinuxTag13: 10 years of Xen and beyond

428

Published on

The Xen Hypervisor was built for the Cloud from the outset: when Xen was designed, we anticipated a world, which today is known as cloud computing. Today, 10 years after the project started, Xen powers the largest clouds in production.

This talk explores success criteria, architecture, trade-offs and challenges for cloudy hypervisors. It is intended for users and developers and starts with a brief introduction to Xen and XCP, their architecture, common challenges for KVM and Xen and securing the cloud. It will introduce concepts such as the virtualization spectrum, the concept of domain disaggregation and the Xen Security Modules as techniques to increase security, robustness and scalability. All important factors for building clouds at scale.

The talk will conclude with exciting developments in the Xen community, such as Xen support for ARM servers, Mirage appliances that can be run on any Xen based cloud, etc. and explore their implications for building open source clouds.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
428
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
18
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Key points not on the slides:Governance: same roles, same license, DCO, …Vendors: the link shows a breakdown of contributions to Xen 4.2
  • Color code: green + bright green = trusted computing baseType 1 hypervisor: example ESXSimple architecture; Hypervisor replaces the kernel entirelyNo need to provide rich “process” semantics, like “user”, filesystems, etc.BUT: Device drivers and Device Models need to be rewritten for each hardware platformThis meansisolation and higher security by designis traded off against maintainability and re-use of driversType 2 is hosted: example KVM- The hypervisor is just a driver that works with user-level monitor and the host OS kernelHW access is intercepted by the ring 0- VM monitor passed to the User level Virtual Monitor, which passes requests to the kernelThis meansRe-use of device drivers and host OS kernel infrastructureis traded off against security and a large trusted computing base
  • Color code: green + bright green = trusted computing baseType 1 hypervisor: example ESXSimple architecture; Hypervisor replaces the kernel entirelyNo need to provide rich “process” semantics, like “user”, filesystems, etc.BUT: Device drivers and Device Models need to be rewritten for each hardware platformThis meansisolation and higher security by designis traded off against maintainability and re-use of driversType 2 is hosted: example KVM- The hypervisor is just a driver that works with user-level monitor and the host OS kernelHW access is intercepted by the ring 0- VM monitor passed to the User level Virtual Monitor, which passes requests to the kernelThis meansRe-use of device drivers and host OS kernel infrastructureis traded off against security and a large trusted computing base
  • Thinner hypervisorOnly Contains: Scheduler and Memory Management
  • Thinner hypervisorOnly Contains: Scheduler and Memory Management
  • Domain 0:Special Virtual Machine that co-operates with the HypervisorContains a Xen enabled Kernel: Linux 3.x or NetBSDUses Device Drivers and Device Models (QEMU)For Linux: Using Linux PV OPSExposes support for various virtualization modes: PV, PV on HVM and PVH modesSharing components with KVM (e.g. QEMU based Device Drivers)
  • As we talked a little bit about Xen and Linux already it is worth point out a few things to Xen and LinuxSome people argue that KVM is better than Xen, because KVM is in the kernelThis argument is bogusSoftware should be compared on the basis of features and system characteristicsNOT on where the source code livesSo, although Xen is NOT in the Linux KernelBUT from linux 3.0 onwards EVERYTHING that Xen and Xen Guests need to run isAnd all modern Linux distros (with the exception of RHEL6) contain Xen packagesTHIS MEANS:The user experience for Linux users for Xen and KVM is VERY similarYou choose your favourite distro and install (that is true for Xen and KVM)You download and install the Xen packages (KVM-QEMU package) via your package managerTHE only difference is that for Xen you reboot, after which Xen runs underneath your Dom 0Then you configure your systemThe point is: from a users perspective it doesn’t matter whether Xen is in Linux or not, as long as distros contain Xen packages
  • This is the architecture that we have explained beforeLet’s add a few more things!
  • Added theToolstackExposes an RPC type interface such that the system can be controlled from the outside worldXen has a few options for toolstacks (see later)Added the ConsoleA CLIA UIOr an interface to a cloud orchestration stack Controls the system (for operations such as starting, stopping VMs, etc.)
  • A unique feature of Xen is called disaggregationThis means:I can take a Device DriverA Device ModelA service (e.g. the toolstack)That normally runs in Domain 0 and run it in a separate VM.That VM is de-priviliged (it is not part of the trusted computing base)It can be restarted (if needed) without affecting the rest of the systemThis is something unique to Xen’s architecture. More later.
  • On Xen.org, you will come by two main projects:The Xen HypervisorThe Xen Cloud PlatformAt a very high level, we will you show you the various options to build a system.
  • Let’s first look at choices of Xen Management Toolstacks:The Default with XL as CLI console Single Host, with basic functionalityLibvirt with VIRSH as CLI console (can also use virt-manager)Multiple Hosts, more functionalityXAPI (or Xen API) and XE as CLI (a number of UI options available)Multiple Hosts, even more functionality than LibvirtTypically when a Xen system contains XAPI, we call it Xen Cloud Platform
  • Let’s first look at choices of Xen Management Toolstacks:The Default with XL as CLI console Single Host, with basic functionalityLibvirt with VIRSH as CLI console (can also use virt-manager)Multiple Hosts, more functionalityXAPI (or Xen API) and XE as CLI (a number of UI options available)Multiple Hosts, even more functionality than LibvirtTypically when a Xen system contains XAPI, we call it Xen Cloud Platform
  • A number of different commercial products use these combinations:Oracle VM based on Xen, the default stack with additionsHuawei UVP, which uses Xen + LibvirtCitrix XenServer which uses Xen + XAPI
  • Lots of services use various of these combinationsWe picked out a few for these different configurationsAWS uses Xen with DefaultSuse Cloud uses Xen with LIBVIRTRackspace Cloud Servers uses XAPIThere are loads more large users: check out en.org/community/ecosystem.html If you want to know more about AWS and Rackspace, check out xen.org/community/presentations.html We also have some user case studies
  • Remember the concept of disaggregation I mentioned earlier?With Driver Domains, I can take an individual driver (e.g. disk or network) and run it in its own domain (aka VM)In terms of how PV works: it is exactly the same as with drivers running in Dom0, only that Xen knows that the driver runs in its own driver domain
  • Device Model emulated in QEMUModels for newer devices are much fasterBut for IO operations PV is even faster
  • Remember the concept of disaggregation I mentioned earlier and Driver Domains?Stub Domains: Run an individual device model (QEMU instance) in its own domain Again, these work identical to Device Models within a Dom0.For scalability there is one stub domain per VM
  • Just one example of a survey, many morehttp://www.colt.net/cio-research/z2-cloud-2.htmlAccording to many surveys, security is actually the main reason which makes or breaks cloud adoptionBetter security means more adoptionConcerns about security means slowed adoption
  • This is information from our own XCP survey (Q4 2012).Basically users were asked to rate system attributes according to importance on a scale of 1-5 90% of all users that use XCP for the cloud ratedRobustness, Performance, Scalability and Security at a 5Many other system attributes ranged from 3-4
  • We introduced disaggregation earlier under architectural concepts. To remind you, in a nutshell it means distributing system components running in Dom0 into separate VM’s.If you want to know more about the concept: There are the two papers listed above.The first takes disaggregation to the extreme!Disaggregation is in use by OSS and commercial products for Desktop Was originally developed for NSA:Every person with a specific security clearance has to have one terminal (desktop computer) per clearance levelTypically every employee had several TerminalsProducts using disaggregation are deemed secure enough by the NSA (and similar orgs) to Prototypes for server and cloud products
  • Good for SecurityReduces Trusted Computing BaseBetter defined interfaces (better for security audits)Can kill-start domains on a timer to wipe security risksIt is also good for robustness:You can basically restart parts of the system without affecting the rest of the system Latency for this is low (see the graph – in the order of 100 of ms)Incidentally this is also good for serviceability: in other words I can upgrade parts of my system while leaving others untouched and runningGood for performance and scalability:Removes Dom 0 as a bottleneck when many VM’s are runningPlaces more emphasis on the Xen scheduler vs. the Dom0 scheduler, which tends to lead to better performanceYou can chose better performing OS+driver combinations (e.g. BSD)
  • This shows a diagram of the type of services running in a normal XCP instance.The picture shows:1) Two Hosts2) User VMs per Host (on top instead of on the side due as in due to space constraints on the slide) 3) Dom0 with Xen per host (green boxes – also Trusted Computing base)4) Services and processes running within each Dom0Note: that inter-host communication is handled by the XAPI component Also note: this is an approximation as there is not enough space to cram everything in! There is stuff missing!NOW LETS LOOK WHAT DISAGGREGATION DOES!
  • This shows a diagram of the type of services running in the XCP disaggregation prototype.What is different:Key services are running in their own domainsEach host has a fast inter-domain communication mechanism called DBUS that allows direct VM to VM communicationThe Trusted Computing base has become a lot smaller (look at the green)
  • Now looked at disaggregation:It is worth to remind ourselves of existing Xen Security advantages: more modular, smaller TCBThere are also additional features, the most noteworthy is XSMDeveloped and maintained by the NSA (who contribute 3-4% of code per year to Xen)Follows the same architecture as SELinux (including compatibility with policy checking and dev tools for SELinux)Can be used together with SELinuxThe main difference is that XSM exposes objects that map to Xen featuresAlthough XSM alone is useful, it becomes REALLY INTERESTING when used with disaggregation!See WHY IN THE NEXT SLIDE!
  • The RED BOX, shows how we can use XSM and SELinux to secure our system.Per domain, I can restrict what can be started in a domainI can restrict what hypervisor interfaces (PV or hypercalls) a class of domain can access. In this example, I can ensure that only Linux and Xen functionality that is necessary to operate the Network Driver Domain can be accessed or launched
  • Now looked at disaggregation:It is worth to remind ourselves of existing Xen Security advantages: more modular, smaller TCBThere are also additional features, the most noteworthy is XSMDeveloped and maintained by the NSA (who contribute 3-4% of code per year to Xen)Follows the same architecture as SELinux (including compatibility with policy checking and dev tools for SELinux)Can be used together with SELinuxThe main difference is that XSM exposes objects that map to Xen featuresAlthough XSM alone is useful, it becomes REALLY INTERESTING when used with disaggregation!See WHY IN THE NEXT SLIDE!
  • LinuxTag13: 10 years of Xen and beyond

    1. 1. Lars KurthXen Project Community Managerlars.kurth@xen.org10 Years of Xen and beyond …@lars_kurthFREENODE: lars_kurth
    2. 2. • 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– Funded by member companies (Advisory Board)Xen.org becomes XenProject.org
    3. 3. Xen contributor community is diversifying0%10%20%30%40%50%60%70%80%90%100%2010 2011 2012Citrix UPCSUSE AmazonUniversity AMDGridCentric IndividualNSA IntelFujitsu iWebMisc OracleSpectralogic University of British Columbia• The number of “significant”active vendors is increasing• New feature development drivingnew participation
    4. 4. Hypervisor Architecture
    5. 5. Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on thehardware and hosts Guest OS’s.Provides partition isolation + reliability,higher securityHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM1VM0Guest OSand Apps
    6. 6. Hypervisor ArchitecturesType 1: Bare metal HypervisorA pure Hypervisor that runs directly on thehardware and hosts Guest OS’s.Type 2: OS ‘Hosted’A Hypervisor that runs within a Host OS and hostsGuest OS’s inside of it, using the host OS servicesto provide the virtual environment.Provides partition isolation + reliability,higher securityLow cost, no additional driversEase of use & installationHost HWMemory CPUsI/OHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM1VM0Guest OSand AppsHost OSDevice DriversRing-0 VM Monitor“Kernel “VMnVM1VM0Guest OSand AppsUserAppsUser-level VMMDevice Models
    7. 7. Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM1VM0Guest OSand Apps
    8. 8. Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM1VM0Guest OSand AppsHost HWMemory CPUsI/OHypervisorVMnVM1VM0Guest OSand AppsXen ArchitectureScheduler MMU
    9. 9. Xen: Type 1 with a TwistType 1: Bare metal HypervisorHost HWMemory CPUsI/OHypervisorSchedulerMMUDevice Drivers/ModelsVMnVM1VM0Guest OSand AppsHost HWMemory CPUsI/OHypervisorVMnVM1VM0Guest OSand AppsXen ArchitectureScheduler MMUControl domain(dom0)DriversDevice ModelsLinux & BSD
    10. 10. 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
    11. 11. Basic Xen Concepts11Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsMemory CPUsI/OConsole• Interface to the outside worldControl Domain aka Dom0• Dom0 kernel with drivers• Xen Management ToolstackGuest Domains• Your appsDriver/Stub/Service Domain(s)• A “driver, device model or controlservice in a box”• De-privileged and isolated• Lifetime: start, stop, killDom0 KernelHypervisorScheduler MMU XSMTrusted Computing Base
    12. 12. Basic Xen Concepts12Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsConsoleMemory CPUsI/ODom0 KernelToolstackHypervisorScheduler MMU XSMConsole• Interface to the outside worldControl Domain aka Dom0• Dom0 kernel with drivers• Xen Management ToolstackGuest Domains• Your appsDriver/Stub/Service Domain(s)• A “driver, device model or controlservice in a box”• De-privileged and isolated• Lifetime: start, stop, killTrusted Computing Base
    13. 13. Basic Xen Concepts13Control domain(dom0)Host HWVMnVM1VM0Guest OSand AppsConsoleMemory CPUsI/OOne or moredriver, stub orservice domainsDom0 KernelToolstackHypervisorScheduler MMU XSMConsole• Interface to the outside worldControl Domain aka Dom0• Dom0 kernel with drivers• Xen Management ToolstackGuest Domains• Your appsDriver/Stub/Service Domain(s)• A “driver, device model or controlservice in a box”• De-privileged and isolated• Lifetime: start, stop, killTrusted Computing Base
    14. 14. 14Xen Variants for Server & CloudXen HypervisorHypervisor
    15. 15. Single HostBasic FunctionsMultiple HostsAdditional Functionality15Xen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)Toolstack / Console Libvirt / VIRSH XAPI / XEHypervisorSingle HostAdditional FunctionalityXen Hypervisor
    16. 16. Single HostBasic FunctionsMultiple HostsAdditional FunctionalityXen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)Toolstack / Console Libvirt / VIRSH XAPI / XEHypervisorSingle HostAdditional FunctionalityXen Hypervisor
    17. 17. 17Xen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)Toolstack / Console Libvirt / VIRSHProducts Oracle VM Huawei UVP Citrix XenServerProjectXAPI / XEXen Hypervisor
    18. 18. 18Xen Variants for Server & CloudIncreased level of functionality and integration with other componentsDefault / XL (XM)Toolstack / Console Libvirt / VIRSHUsed by …ProjectXAPI / XEProducts Oracle VM Huawei UVP Citrix XenServerXen Hypervisor
    19. 19. Xen : Types of Virtualization
    20. 20. 20Xen HypervisorControl domain(dom0)Host HWGuest VMnAppsMemory CPUsI/OTechnology:• ParavirtualizationLinux PV guests have limitations:• limited to a subset of set of virtual HWAdvantages• Fast• Works on any system(even without virt extensions)HW DriversPV Back Ends PV Front EndsGuest OSDom0 KernelPV Domains
    21. 21. 21Xen HypervisorControl domain(dom0)Host HWGuest VMnAppsMemory CPUsI/OTechnology:• ParavirtualizationLinux PV guests have limitations:• limited to a subset of virtual HWAdvantages• Fast• Works on any system(even without virt extensions)Driver Domains• Security• Isolation• Reliability and RobustnessHW DriversPV Back Ends PV Front EndsDriver Domaine.g.• Disk• NetworkHW DriverPV Back EndDom0 Kernel**) Can be MiniOSGuest OSDom0 KernelPV Domains & Driver Domains
    22. 22. 22Xen HypervisorDom0Host HWGuest VMnTechnology:• Shows emulation using QEMU/DeviceModel (SW Virtualization)• In other situation HW can be usedDisadvantages• Emulation slower than PV(mainly I/O devices)Advantages• No kernel support neededDevice ModelIO EmulationIO EventVMEXITDom0 KernelHVM & Stub DomainsMemory CPUsI/O
    23. 23. 23Xen HypervisorDom0Host HWGuest VMnTechnology:• Shows emulation using QEMU/DeviceModel (SW Virtualization)• In other situation HW can be usedDisadvantages• Emulation slower than PV(mainly I/O devices)Advantages• No kernel support neededStub Domains• Security• Isolation• Reliability and RobustnessDevice ModelIO EmulationIO EventVMEXITStubdomnDevice ModelMini OSGuest VMnIO EmulationIO EventVMEXITDom0 KernelHVM & Stub DomainsMemory CPUsI/O
    24. 24. The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VHFully Paravirtualized (PV) P P P PVH Virtualized (HW)P ParavirtualizedVS Virtualized (SW)HVM mode/domainPV mode/domainXen 4.4
    25. 25. The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VHFully Paravirtualized (PV) P P P PScope for improvementPoor performanceOptimal performanceHVM mode/domainXen 4.4PV mode/domain
    26. 26. The Virtualization SpectrumFully Virtualized (FV) VS VS VS VHFV with PV for disk & network P VS VS VHPVHVM P P VS VHPVH P P P VHFully Paravirtualized (PV) P P P PScope for improvementPoor performanceOptimal performanceHVM mode/domainXen 4.4PV mode/domainImportant: Xen automatically picks the bestoption based on HW & OS capabilities andavailable drivers.As a Xen user I chose a HVM or PV domain.
    27. 27. Single HostBasic FunctionsMultiple HostsAdditional FunctionalityXAPI, XCP and XCP-XAPI : What is it?Increased level of functionality and integration with other componentsDefault / XL (XM)Toolstack / Console Libvirt / VIRSH XAPI / XEHypervisorSingle HostAdditional FunctionalityXen Hypervisor
    28. 28. XAPI : What do I get?Multiple HostsAdditional FunctionalityXAPI / XEXen Hypervisor• VM lifecycle: live snapshots, checkpoint, migration• Storage XenMotion: Migrate VMs between hosts or poolswithout 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
    29. 29. XAPI : two variants!Multiple HostsAdditional FunctionalityXAPI / XEXen HypervisorXCP ISO (at v1.6)Xen 4.1.3 + XAPICentOS 5.3Kernel (v2.6.32.43)OVS 1.4.2XCP-XAPI packagesDebian WheezyUbuntu 12.04 LTSOthers in progress …
    30. 30. XAPI : Orchestration and UIsMultiple HostsAdditional FunctionalityXAPI / XEXen Hypervisor
    31. 31. Other XEN Cloud OrchestrationSingle HostBasic FunctionsXM or XLXen HypervisorSingle HostAdditional FunctionalityLibvirtXen Hypervisor
    32. 32. Challenges for FOSS hypervisors
    33. 33. “Security and QoS/Reliability are amongstthe top 3 blockers for cloud adoption”www.colt.net/cio-research
    34. 34. System characteristics cloud users care about:“Robustness, Performance, Scalability & Security”Results XCP User Survey 2013 – 90% of users quoted these as most important attributes
    35. 35. 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 XTPrototypes for XAPIDisaggregationSee qubes-os.orgDifferent windows runin different VMs
    36. 36. More SecurityIncreased serviceability and flexibilityBetter RobustnessBetter PerformanceBetter ScalabilityBenefits of DisaggregationAbility to safely restart parts of the system(e.g. just 275ms outage from failed Ethernet driver)
    37. 37. Next: XAPI Architecture DiagramBefore and After Disaggregation
    38. 38. CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDXenDom0NetworkdriversNFS/iSCSIdriversQemu xapi LocalstoragedriversNFS/iSCSIdriversNetworkdriversQemueth eth eth eth scsiUser VM User VMNB gntdev NBNF BF NF BFqemu qemuxapivswitchnetworkdtapdiskblktap3storagedsyslogdvswitchnetworkdtapdiskblktap3storagedtapdiskblktap3storagedgntdev gntdevDom0xenopsdlibxlhealthdDomainmanagerDom0....Xenxapi
    39. 39. CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDDom0 NetworkdriverdomainNFS/iSCSIdriverdomainQemudomainxapidomainLoggingdomainLocalstoragedriverdomainNFS/iSCSIdriverdomainNetworkdriverdomainUser VM User VMNB gntdev NBNF BF NF BFdbus over v4vqemuxapixenopsdlibxlhealthdDomainmanagervswitchnetworkdtapdiskblktap3storagedsyslogd vswitchnetworkdtapdiskblktap3storagedtapdiskblktap3storagedgntdev gntdeveth eth eth eth scsiXen XenDom0dbus over v4v...
    40. 40. 40Xen 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
    41. 41. CPUCPURAM RAMNIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)NIC(or SR-IOV VF)RAIDXenDom0 NetworkdriverdomainNFS/iSCSIdriverdomainQemudomainxapidomainLoggingdomainLocalstoragedriverdomainNFS/iSCSIdriverdomainNetworkdriverdomaineth eth eth eth scsiUser VM User VMNB gntdev NBNF BF NF BFqemuxapixenopsdlibxlhealthdDomainmanagervswitchnetworkdtapdiskblktap3storagedsyslogd vswitchnetworkdtapdiskblktap3storagedtapdiskblktap3storagedgntdev gntdevFLASK policyrestricting accessDom0...dbus over v4v dbus over v4vXen
    42. 42. 42Xen Advanced Security Recipes• Xen has many Security Features (besides the ones I covered)• Most are not switched on by default• Although most are simple to use, some seen complicatedSee: http://www.slideshare.net/xen_com_mgr/a-brief-tutorial-on-xens-advanced-security-featuresAnd more are be coming!
    43. 43. ARM Hypervisor
    44. 44. Xen on ARM• by Stefano Stabellini –Xen and Xen-ARM Linux maintainer• New York III from 10:45 to 11:30• Including a demoIn depth presentation tomorrow …One mode torule them all
    45. 45. Mirage OS
    46. 46. Application stacks only running on Xen APIsWorks on any Xen based cloud or hosting serviceExamples– ErlangOnXen.org : Erlang– HalVM : Haskell– Mirage OS : OcamlBenefits:– Small footprint– Low startup latency– Extremely fast migration of VMsLibrary Operating SystemsXenControl domain(dom0)Host HWGuest VMnAppsHW DriversPV Back EndsLibrary OSembeddedin Languagerun-timeDom0 Kernel
    47. 47. • Recently added to Xen Project incubator• In beta stage : first release on its way (July 2013)• Clean-slate protocols implementations, e.g.– TCP/IP, DNS, SSH, Openflow (switch/controller), HTTP, XMPP, ...– New applications using next generation XAPI(disaggregated XAPI architecture)Mirage OSMore info: http://www.slideshare.net/xen_com_mgr/mirage-extreme-specialisation-of-virtual-appliances
    48. 48. Hot Topics and Projects
    49. 49. • Release candidates & Xen Test Days (today, 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
    50. 50. “For about a year members of the Xen Project, the CentOS communityand large Xen Users have worked on bringing Xen and XAPI toCentOS 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 checksXen 4 + XAPI in CentOS 6 (June 2013)
    51. 51. “Growth is leading to more structure & more collaboration & more openness!”• Establishing a shared and open test infrastructure– Goal: Increase development velocity• 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 LinaroThe Xen Community is Changing
    52. 52. 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) … today, June 5th• Document Days (IRC at #xendocs) … the next one is May 28th• User (Sept 18, New Orleans) and Developer Summits (Oct 24-25, Edinburgh)• Hackathons - last week search for “[Hackathon Minutes]” on xen-develGetting Started with Xen Projects
    53. 53. Thank You!Slides available under CC-BY-SA 3.0From www.slideshare.net/xen_com_mgr@lars_kurthFREENODE: lars_kurth• News: blog.xenproject.org• Web: xenproject.org > Help– Help for IRC, Lists, …– Stackoverflow like Q&A• Wiki: wiki.xenproject.org• Presentations: slideshare.net/xen_com_mgr• Videos: vimeo.com/channels/xen
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×