An Introduction To Server VirtualisationPresentation Transcript
An Introduction to Server Virtualisation Alan McSweeney
A loose definition
Virtualisation is a framework or methodology of dividing the resources of a computer into multiple execution environments, by applying one or more concepts or technologies such as hardware and software partitioning, time-sharing, partial or complete machine simulation, emulation, quality of service, and many others.
An old concept – first virtual machines created on IBM mainframes in early ’60s
Typically, IBM's virtual machines were identical "copies" of the underlying hardware. Each instance could run its own operating system.
Virtualisation formed the basis of “time sharing”
Some virtual machines you may know…
NT had Virtual DOS Machine (NTVDM) and Windows on Win32 (WOW)
Windows 95 used virtual machines to run older (Windows 3.x and DOS) applications
The old model
A server for every application
Software and hardware are tightly coupled
Underutilised resources introduce real cost into the infrastructure
The new model
Physical hardware is abstracted by a virtualisation layer, or hypervisor
Manage OS and application as a single unit by encapsulating them into virtual machines
Separate OS and hardware and break hardware dependancies
Optimise utilisation levels
Increased Hardware Utilisation
Underutilisation of Resources
Most organisations over-provision
Multiple processors in each server
Memory requirements over-estimated
Aim to drive up CPU utilisation
Actual DSS customer data – 120 servers monitored
Virtual infrastructure brings uniformity to the data centre
Dynamically map computing resources to the business
Lower IT costs through increased efficiency, flexibility and responsiveness
Provision new services and change the amount of resources dedicated to a software service
Treat your data centre as a single pool of processing, storage and networking power
How is it implemented?
Typically, in order to virtualize, you would use a layer of software that provides the illusion of a "real" machine to multiple instances of "virtual machines". This layer is traditionally called the Virtual Machine Monitor (VMM) or “hypervisor”.
The hypervisor could run directly on the real hardware or it could run as an application on top of a host operating system.
Type 1 VMM IBM CP/CMS VMware ESX Windows Virtualisation (2008) Xen Virtual Iron Hardware VMM Guest VM Guest VM Guest VM
Type 2 VMM VMware Server Hardware VMM Guest VM Guest VM Guest VM Host OS
Hybrid VMM MS Virtual Server MS Virtual PC Hardware VMM Host VM Guest VM Guest VM
Paravirtualization is a virtualization technique that presents a software interface to virtual machines that is similar but not identical to that of the underlying hardware.
This requires operating systems to be explicitly ported to run on top of the virtual machine monitor (VMM)
Provides a complete simulation of the underlying hardware
With binary translation, rewrites some x86 instructions at run time that cannot be trapped and converts them into a series of instructions that can be trapped and virtualised
Capable of running existing legacy operating systems without modification
Leverages hardware-assisted capabilities available in the latest processors from Intel (Intel VT – “Vanderpool”) and Advanced Micro Devices (AMD-V – “Pacifica”) to provide near-native performance.
Virtual Iron is one of the first companies to offer virtualization software to fully support Intel-VT and AMD-V hardware assisted virtualization.
Precision 380 Intel Pentium D
PowerEdge 430 Intel Pentium D
PowerEdge 440 Intel Xeon 3xxx
PowerEdge 1435 AMD Opteron 22x
PowerEdge 1950 Intel Xeon 5xxx
PowerEdge 1955 Intel Xeon 5xxx
PowerEdge 2950 Intel Xeon 5xxx
ProLiant DL140 G3 Intel Xeon 5xxx
ProLiant DL320 G4 Intel Xeon 5xxx
ProLiant DL360 G5 Intel Xeon 5xxx
ProLiant DL365 AMD Opteron 22xx
ProLiant DL380 G5 Intel Xeon 5xxx
ProLiant DL385 G2 AMD Opteron 22xx
ProLiant DL580 G4 Intel Xeon 7xxx
ProLiant DL585 G2 AMD Opteron 82xx
xSeries 100 Intel Pentium-D
System x3455 AMD Opteron 22xx
System x3550 Intel Xeon 5xxx
System x3850 Intel Xeon 7xxx HS21 Intel Xeon 5xxx
LS21 AMD Opteron 22xx
What’s in a Virtual Machine?
What’s in a Virtual Machine - BIOS
VM has its own BIOS
Has everything you would expect to see in a real BIOS
Boot options may include floppy, CD-ROM, disk drive and PXE.
What’s in a Virtual Machine - Networking
Each VM has a virtual NIC
Virtual NICs are connected to virtual switches implemented in the virtualisation layer
VMware – vSwitches
Microsoft - .vnc-files
Virtual switches have uplink connections to physical NICs on the host
Combining internal and external virtual switches
Virtual switch with one outbound adapter acts as a DMZ
Backend applications are secured behind the firewall using internal-only switches
What’s in a Virtual Machine - Storage
To the applications and guest operating systems inside each virtual machine, the storage subsystem is a simple virtual SCSI host bus adapter connected to one or more virtual SCSI disks
Virtual disks are files kept on physical storage.
VMware – VMDK files
Microsoft – VDF files
Virtual disk represents a local drive on a virtual server, such as a C or D drive in Windows
Physical storage could be
Direct attached SCSI
Is it technically possible?
Will the vendor support a virtual environment?
The Microsoft position
“ For Microsoft customers who do not have a Premier-level support agreement, Microsoft will require the issue to be reproduced independently from the non-Microsoft hardware virtualization software.”
“ Microsoft supports Windows Server System software running within a Microsoft Virtual Server environment subject to the Microsoft Support Lifecycle policy ... “
Usage Scenarios for Virtualization Consolidation Workload Mobility Business Continuity Management Development and Test
Usage Scenario Production server consolidation Gartner definition
Usage Scenario Production server consolidation
Branch office and datacenter workloads
Efficient use of available hardware resources
Re-host legacy OS and applications
NT4 guest applications on virtual platform
Run on current hardware and current OS
No application updates required
Limit CPU resource per VM
Usage Scenario Business continuity management
Maintain DR systems as virtual machines
Eliminate traditional problems associated with bare metal restores
OS and application patching
Deploy and test patches off-production, and swap
Eliminate scheduled downtime
Isolation / sandboxing
Isolate OS environments for untrusted applications
Prevent malicious code from affecting others
Usage Scenario Dynamic datacenter
Package up entire OS environment and move to other location
Flexible deployment of workloads
Usage Scenario Development and test
Rapid provisioning of virtual machines
Create arbitrary test scenarios
Wider test range for niche scenarios
Application + OS: Now A Data File
Server provisioning is similar to copying a file
Server migration is now similar to data migration
Data management techniques can be used for server management
Entire server – OS, apps, data, devices, and state – is now simply a file.
The Role of Shared Storage
Virtual Machine files are centrally located.
Virtual Machines can be moved for DR purposes, system repair/upgrade, etc.
Can take advantage of advanced SAN features such as snapshots, clones and replication.
Move running virtual machines from one physical system to another with no downtime
Zero downtime maintenance
Balance resource utilisation across infrastructure
Centralized Management: Reports Full set of reports, integration with MOM database Actions one click away in context sensitive Actions Pane
Self Service Portal Ability to control owned virtual machines Thumbnails of all owned virtual machines
Self-Service Portal Provisioning User selects from list of templates Administrator has associated with that user
Self-Service Portal Provisioning New virtual machine ready for use, Terminal Services connection information automatically emailed to user.
Virtual Server 2005 vs Windows Server Virtualization Virtual Server 2005 R2 Windows Server Virtualization 32-bit VMs? Yes Yes 64-bit VMs? No Yes Multi-processor VMs? No Yes, up to 8 processor VMs VM memory support? 3.6 GB per VM More than 32 GB per VM Hot add memory/processors? No Yes Hot add storage/networking? No Yes Can be managed by System Center Virtual Machine Manager? Yes Yes Microsoft Cluster support? Yes Yes Scriptable / Extensible? Yes, COM Yes, WMI Number of running VMs? 64 More than 64. As many as hardware will allow. User interface Web Interface MMC 3.0 Interface
Open source hypervisor solution
Installs on bare-metal
Linux VMs fully supported
Windows VMs require Intel VT or AMD-V processor
Microsoft Windows Server 2000
Microsoft Windows Server 2003
Microsoft Windows XP SP2
XenSource Products N/A N/A Mid-2007 Shared storage N/A N/A Mid-2007 Live Migration Red Hat EL 3.6, 3.7, 3.8, 4.1, 4.2, 4.3, 4.4, 5.0; SUSE SLES 9.2, 9.3, 10.1; Debian Sarge N/A (Windows guests support only) Red Hat EL 3.6, 3.7, 3.8, 4.1, 4.2, 4.3, 4.4, 5.0; SUSE SLES 9.2, 9.3, 10.1; Debian Sarge Linux guest support Windows Server 2003; Windows XP; Windows 2000 Server Windows Server 2003; Windows XP; Windows 2000 Server Windows Server 2003; Windows XP; Windows 2000 Server Windows guest support Developers, testers, support, IT enthusiasts Windows IT professionals Enterprise IT, system integrators User Profile
An enterprise ready native virtualisation platform
Uses hardware-assisted virtualisation technologies of Intel VT and AMD-V processors
Based on an open source hypervisor derived from the Xen open source project
No software need be installed on physical hardware
Virtual Iron Components Operating systems that are fully virtualised on a physical server Varies Guest operating systems Controls virtual servers through an agent in the service partition Commercial Virtualisation Manager Second software loaded when physical server boots. Manages virtual server creation and configuration and all I/O. GPL Service Partition First software loaded when physical server boots. Manages all hardware resources GPL Hypervisor Function License Component
Allows for central management of virtualized servers
A physical server can have many virtualized servers, which are run as unmodified guest operating systems.
Virtual Manager Policy-based Automation
LiveMigration – moves a running virtual server from one physical server without pausing or impacting running applications
LiveCapacity – monitors virtual server CPU utilisation or other application needs to determine when a workload needs additional capacity. When a user-defined threshold is met, the virtual server is LiveMigrated to a physical server that has the necessary resources
LiveRecovery – monitors the status of physical resources and moves virtual servers to maintain uptime in the event of a hardware failure
LiveMaintenance – moves virtual servers to alternative locations without downtime when a physical server is taken offline for maintenance
Virtual Iron Architecture
Supported Configurations Up to 16 Virtual disks per virtual server Up to 5 Virtual NIC adapters per virtual server Up to 5 Virtual servers per physical server CPU Up to 96GB RAM per Physical Server Up to 8 Processors per virtual Server 100s per virtual data centre Virtualised Nodes Intel Xeon with Intel VT AMD Opteron with AMD-V Processors 32 and 64-bit Red Hat Enterprise Linux 4 32 and 64-bit SUSE Linux Enterprise Server 9 32-bit Windows XP 32-bit Windows 2003 Operating systems Support Feature