Virtualization by Raghu Ram
Virtualization by Raghu Ram
Agenda
History What is virtualization Types of virtualization Uses of Virtualization Virtualization Products
History
1970s : Main frames IBM 360/40 1980s : Memory Management Unit 1990s : Java Virtual Machine 1998 : Creation of VMWare 2000s : Honeypots / Jails 2006 : AMD/ Intel Hardware virtualization
What is Virtualization ?
virtualization applications characteristics computational essentially decouples users and from the specific hardware of the systems they use to perform tasks
Virtualization is the creation of a virtual (rather than actual) version of something, such as an operating system, a server, a storage device or network resources
Traditional Architectures
One OS one server one application Tightly coupled hardware and software Typical load on server is 5 15 %
Virtualized Architecture
Many OS to one server Separation between software and Hardware Many applications on one server Typical load on server is 80 95% Dynamically optimized resources
Classification of Virtualization
Virtualization Management Layered Approach Dedicated Virtualization Approach Hardware-Based or Hardware-Assisted Virtualization Approach
Virtual Machine 1
Virtual Machine 2
Virtual Machine 3
Virtualization Software
Virtual Machine 1
Virtual Machine 2
Virtual Machine 3
Virtualization Software
OS Virtualization cont.
Good solution for Software as a Service
SaaS:
Software without needing to physically install it. Reduces the upfront costs associated with software package licensing. Maintenance headache reduces.
Advantages:
Ggogle docs
Similar set of OS functionalities IDEAL for webhosting (high density) Training Uses set of libraries for OS functionalities and file mapping services for isolation Requires only one license Sandboxing
Limitations:
Choosing the OS Each container must be the same type, version, and patch level Limited to the device drivers Needs changes in the OS Kernel
Products / Applications:
Virtuozzo and OpenVZ, chroot()
Uses of Virtualization
Production data centres (server consolidation)
Consolidate servers (especially legacy applications) Consolidate desktops Make more efficient use of hardware Enhance IT staff productivity
Fewer points of admin Less hardware maintenance and fewer infrastructure requirements Faster server deployment React faster to business needs Faster Server replacement
Uses of Virtualization
Testing and Development
Point in Time Snapshots Network Isolation Appliance download
Disaster Recovery
Hardware Independence (application portability)
Most hardware selected for a traditional server is oversized and much of the capacity goes underutilized.
Business Improvements
Better adapt to business changes Deliver services on demand Improve availability of applications Better secure data and infrastructure for risks
Microsoft
Microsoft Virtual PC Microsoft Virtual Server Microsoft Longhorn - Hypervisor (coming soon) All Microsoft Virtualization products are Free Of Cost www.microsoft.com/windowsserversystem/virtualserver/default. mspx
OpenSource
Linux Xen www.xensource.com
Virtualization
AMD-V : Hardware virtualization Chroot : OS level virtualization Bochs : emulation BSD Jail : OS level virtualization Intel VT : Hardware Virtualization Linux KVM : Hardware Virtualization Linux Vserver : OS level virtualization OpenVZ : OS level Virtualization Qemu : Emulation User Model Linux : Paravirtualization VirtualBox: Full, Hardware virtualization VMWare : full-virtualization, paravirtualization Xen : full, paravirtualizaion
Bochs CHARON-AXP CHARON-VAX Containers (also 'Zones) Cooperative Linux Denali DOSBox DOSEMU FreeVPS GXemul Hercules Hyper-V Imperas OVP Tools iCore Virtual Accounts Integrity Virtual Machines FreeBSD Jail JPC (Virtual Machine) KVM LinuxOnLinux Linux- VServer Logical Domains LynxSecure Mac-on-Linux Mac-on-Mac OKL4 OpenVZ
Oracle VM OVPsim Padded Cell for x86 Padded Cell for PowerPC Palacios VMM Parallels Desktop for Mac Parallels Workstation PearPC PowerVM Proxmox Virtual Environment QEMU QEMU w/ kqemu module QEMU w/ qvm86 module QuickTransit RTS Hypervisor SimNow SIMH Simics Sun xVM Server SVISTA 2004 TRANGO User Mode Linux View-OS VDSmanager
Sun xVM VirtualBox Virtual Iron Virtual Iron 3.1 Virtual PC 2007 Windows Virtual PC Virtual PC 7 for Mac VirtualLogix VLX Virtual Server 2005 R2 CoWare Virtual Platform Virtuozzo VMware ESX Server VMware ESXi VMware Fusion VMware Server VMware Workstation 6.0 VMware Player 2.0 Wind River hypervisor Wind River VxWorks MILS Platform Xen XtratuM z/VM z LPARs
However, more and more high end applications are being moved to virtual due to the features that you receive. For example.
Choosing hardware
Big four resources of servers
Processors Network cards Storage Memory
Keep in mind that the performance of the virtual server host determines the performance of every virtual server guest on that host. That also applies to the disk and network infrastructure. Multi-core CPUs are excellent for VMware. You can also get hyper threading and multi-core, together.
Compare the option of fewer high performance servers vs. more lower performance servers.
Third, add up these requirements to see what the what capacity your virtual host will require.
Choosing servers
32-bit hardware reusing Using 64-bit servers Blade servers : a 64-bit alternative Future development: Virtualization enabled chips
More efficient memory Faster networking for virtualized machines
Pros of Windows
Easier to use for folks used to working with Windows Fewer prerequisites to think about Common Windows Pros - integration, ease of use etc
The OS you choose really depends on the experience you and those in your group.