* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
An Introduction to Xen Prof. Chih-Hung Wu Dept. of Electrical Engineering National University of Kaohsiung Email: [email protected] URL: http://www.johnw.idv.tw ICAL History of virtualization development • • • • • • • • • • • • • 1965 IBM M44/44X paging system 1965 IBM System/360-67 virtual memory hardware 1967 IBM CP-40 (January) and CP-67 (April) time-sharing 1972 IBM VM/370 run VM under VM 1997 Connectix First version of Virtual PC 1998 VMWare U.S. Patent 6,397,242 1999 VMware Virtual Platform for the Intel IA-32 architecture 2000 IBM z/VM 2001 Connectix Virtual PC for Windows 2003 Microsoft acquired Connectix 2003 EMC acquired Vmware 2003 VERITAS acquired Ejascent 2005 HP Integrity Virtual Machines • • • • • • • • • • 2005 Intel VT 2006 AMD VT 2005 XEN 2006 VMWare Server 2006 Virtual PC 2006 2006 HP IVM Version 2.0 2006 Virtual Iron 3.1 2007 InnoTek VirtualBox 2007 KVM in Linux Kernel 2007 XEN in Linux Kernel ICAL What Is Xen? • Xen aims to be able to execute multiple operating systems on one physical x86 machine: – – – – Support popular OS (Linux, Windows XP, NetBSD), Scalable up to around 100 VMs, Securely, With close-to-native performance. • Xen is a virtual machine monitor (VMM). ICAL What is Xen? • The Xen® hypervisor, the powerful open source industry standard for virtualization, offers a powerful, efficient, and secure feature set for virtualization of x86, x86_64, IA64, PowerPC, and other CPU architectures. It supports a wide range of guest operating systems including Windows®, Linux®, Solaris®, and various versions of the BSD operating systems. – Xen.org releases Xen 3.4 - The Yankee Groups Third Annual Virtualization Survey reports a significant increase of commercial Xenbased solutions which represent 17 percent of total market share. – "I think Xen is a great product. It is easy to use. But most importantly is the very active community around it...", Werner Vogels,CTO Amazon.com from his video interview on Virtualization.com ICAL Xen Architecture Source: Xen and the Art of Virtualization (Xen 1.x.) Published at SOSP 2003 ICAL Xen Jargon • The hypervisor – The Xen VMM – A particular Xen version which handles low level functionality • Guest Operating System – The operating system that Xen hosts • Domain – The virtual machine under which a guest operating system executes • Guest OS and a domain similar to idea of a program and a process ICAL Xen Architecture (Cont.) • Domain0 can use the admin interface to command the hypervisor, • Domain0 uses a privileged kernel (Dom0 kernel) capable of accessing the hardware of the machine, • Other guests use a DomU kernel which is typically more restricted. ICAL Xen 3.4.0 • Available from Xen Source (http://www.xen.org ) • In association with University of Cambridge (http://www.cl.cam.ac.uk/Research/SRG/netos/xen/) • Support for 64-Bit and 32-way machines • Supports IntelVT and AMD-V • Linux support only, Windows expected later this year • Open Source Product – One of the most actively maintained projects in the open source community • $ - Free • Latest Current Version: Xen 3.4.0 ICAL Xen • Xen already is bundled in some distributions, CentOS 5.3, Fedora Core 4, Debian and SuSE Professional 9.3 • The Fedora Project has RPMs for installing Xen, and other Linux distros have prepared installation packages for Xen as well. ICAL Types of virtualization • Two categories exist – Full Virtualization – Paravirtualization ICAL Paravirtualization -- Xen Approach • Virtual machine is NOT 100% functionally equivalent to the hardware • Xen uses paravirtualization instead • Paravirtualization is a process where the guest operating system is modified to run in parallel with other modified systems – Advantage: Improved performance – Disadvantage: The hosted operating system must be modified before it can be hosted by the Xen Hypervisor (can be difficult) ICAL Hypervisor Control • In Xen – Domain0 is given greater access to the hardware and the hypervisor. It has: • A guest OS running above the domain • Hypervisor Manager software to manage elements within other existing domains. • In VMWare – Host OS acts underneath the domain. Hypervisor Manager Guest OS on Domain 0 Guest OS on Domain X Domain 0 Domain 1 Hypervisor Guest OS Guest OS VM Specific Drivers VM Specific Drivers VM VM VMWare Host Operating System VMWare Drivers Other Drivers ICAL HVM in Xen • Paravirtualization – Xen patches the kernel. • HVM for full virtualization – Xen supports full virtualization so that the kernel can run on it unpatched. – For example, both Intel VT and AMD Pacifica processors will include such support. ICAL Virtual Networking in Xen Source: http://wiki.xensource.com/xenwiki/XenNetworking ICAL Virtual Networking in Xen Source: http://wiki.xensource.com/xenwiki/XenNetworking ICAL Virtual Networking in Xen Source: http://wiki.xensource.com/xenwiki/XenNetworking ICAL Virtual Networking in Xen Source: http://wiki.xensource.com/xenwiki/XenNetworking ICAL Virtual Networking in Xen Source: http://wiki.xensource.com/xenwiki/XenNetworking ICAL Live Migration • Xen supports live migration over LAN, • Uses ‘pre-copy’ method: – – – – Iteratively copy memory, Pause the VM, Copy rest of the memory, Start VM in on new machine. • ARP is used to signal the network that the IP has moved. • Disk is provided by NAS. ICAL Requirements For Running Xen • A working Linux distribution using the GRUB bootloader and running on a P6-class (or newer) CPU, • More than 1GB RAM (suggested) • iproute2, bridge-utils, gcc, binutils, make, libcurldevel, zlib-dev, python-dev, • Don’t need to reinstall to try it: – Build Xen in your existing Linux install (which will become Domain0), – Use a file backed filesytem for guests. • You can try it using a bootable live CD. ICAL Current Status (Xen 3.x) • • • • • Secure isolation between VMs, Resource control and QoS, Only guest kernel needs to be ported, All user-level apps and libraries run unmodified Linux 2.4/2.6, NetBSD, CentOS 5, FreeBSD, Plan9, and more • Execution performance is close to native, • Supports the same hardware as Linux x86, • Live Relocation of VMs between Xen nodes. Source : Overview of Xen 3.0. Describes the progression from Xen 2.0 to 3.0. ICAL Performance Relative performance on native Linux (L), Xen/Linux (X), VMware Workstation 3.2 (V), and User Mode Linux (U).