Lecture 2 Cloud Computing & Virtualization Cloud Application Development (SE808, School of Software, Sun Yat-Sen University) Yabo (Arber) Xu
Outline Introduction to Virtualization The Major Approaches The Applications and Benefits The Major Vendors 4/10/2011 2 / 44
App 1 App 2 App 3 user user user user Traditional Stack Single Host Clusterwith 1000 nodes IT Infrastructure super user Management Cost App 4 user Software Cost Cost IDC cost OS Single Task,Single User Multi-task,Single User Multi-task,Multi-user A single OS for each Host Deploy separately Manage separately Low utilization (<10%) High cost High complexity Low flexibility 3 2011/4/10
More Facts on Why Virtualization 9-9-1 Principle for Usage 90% servers, 90% time, 10% utilization Enterprises that do not leverage virtualization* pay up to 40 percent morein acquisition costs by 2008, and roughly 20 percent morein administrative costs * The Future of Server Virtualization, T. Bittman, Gartner s Research Note, July 2003. 4/10/2011 4 / 44
What is Virtualization? App App App App App App Operating System OS OS OS Hypervisor Traditional Stack Virtualized Stack 10 April 2011 5 / 44
Close-up* * adapted from a diagram in VMware white paper, Virtualization Overview Server 1 Guest OS Server 2 Guest OS Virtual Machine Monitor x86 Architecture Clustering Service Console Intercepts hardware requests 6 6 / 44
What is Virtualization? Virtualization, in computing, is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system, a storage device or network resources. Wikipedia The ability to run multiple operating systems on a single physical system and share the underlying hardware resources VMWare White Paper Virtualization is a way to encapsulate the computing resource away from the hardware. 7 / 44
Types of Virtualization Technology Partition Approach Partition the hardware resource Each partition has their own CPU/Memory and indepdent OS installed App OS App OS Partition Controller Cons Lack of flexibility on resource management SMP Server 4/10/2011 8 / 44
Types of Virtualization Technology Virtual Machine Monitor (VMM) VMM as an application on Host OS, no host OS kernel modification touched. VMM adds an complete set of hardware simulation for guest OS Pros Different OS on a single node Cons High cost of hardware instruction translation, low efficiency. Products VMWare App App App OS Virtual OS Virtual Virtual Machine Monitor Host OS OS Virtual 4/10/2011 9 / 44
Types of Virtualization Technology Para-Virtualization Modify OS kernel, and add a Xenhypervisor level. Allow multiple guest OS to run and Xenhypervisor does the resource allocation. Efficiency improved marginally compared to VMM. New trend Intel/AMD recently add virtualization (VT) support into CPU instruction set No modification of kernel needed, and efficiency is greatly improved. Products Xen Server Unmodified App Unix Ported to Xen Architecture XenHypervisor Unmodified App Unix Ported to Xen Architecture 4/10/2011 10 / 44
Types of Virtualization Technology OS Virtualization One OS instance on a single node. Virtualization platform on top of OS offers multiple containers Each container is a virtual OS ( or Virtual Environment/Virtual Private Server) Pros Low cost and a server may run hundreds of VPS. Products SWSoft svirtuozzo/open VZ Sun Solaris Container Container Container OS Virtualization Platform Host OS 4/10/2011 11 / 44
Comparison among different approaches Partition VMM Para-VM OS-VM Products IBM VMWare XenServer Virtuozzo/openVZ OSKernal Change No No Yes (No with VT support CPU) No Guest OS Yes Yes Yes No Virtual No Yes Part of No Efficency High Low High Very high Cost Low High Low Very low OS instances on a single node dependent 1-3 1-5 hundreds Product type N/A Business/Free version/no opensource Open source Virtuozzon forbussiness, openvz for open source 4/10/2011 12 / 44
Applications of Virtualization Partition Run multiple OS on a single node Pros Increase utilization High availability: partitions as a cluster support loadbalance/fault-tolerance
Applications of Virtualization Separation Separate different OS instance from the hardware, and separate OS from OS. Pros Better reliability: A breakdown of an OS instance does not affect the others Better security: Any attacks can not spread to the applications in other containers.
Applications of Virtualization Encapsulation VM encapsulated as an hardware-independent file. Take snapshot of VM any time Support VM Live Migration by simple file copy.
Benefits of Virtualization Increased hardware utilization Increased resource standardization High availability Support virtual server migration between virtual hosts, across sites if needed, with minimal downtime Support server snapshot before patches or application upgrades Rapid Deployment of new environments 16 / 44
Virtualization Status Server virtualization is the engine that drives cloud computing Allows dynamic resource allocation support Fits well with the move to 64 bit (very large memories) multi-core (concurrency) processors. Intel VT (Virtualization Technology) provides hardware to support the Virtual Machine Monitor layer Virtualization is now a well-established technology 20090909_VirtualizationA ndcloud 17 17 / 44
Major VM Vendors
Major Vendors VMWare Founded in 1998, leading vendor in virtualization technology Products: VMWare-ESX-Server etc Recently strategically move to PaaS by acquiring SpringSource/Zimbra etc Microsoft Windows Server 2008 Hyper-V Citrix XenServer (open source) XenDesktop 19 / 44
Typical Host Server(s) 2 Quad Core 2.8 Ghz Processors 60 Gb Memory 1 Tb SAN Storage What are virtualization not good at Not ideal for high utilization database servers I/O contention (VMs like fast disks)
Virtualization Rocks!