6. Virtualization Big Picture
Software Virtualization
CSS / OSS
z/VM -- KVM
bringing virtualization to x86, IA64, ... platforms
coexistence of Linux and Windows
11. Case for Server Virtualization
• Servers are costly to maintain
– Costs encompass provisioning,
housing, power, cooling, management,
etc.
– Complex, expensive management
• Servers are poorly utilized
– Yet, they proliferate as apps are added
• Physical servers are static
– Locked to one workload per server
12. What problems are we solving
Data Centers are Data Centers
static should be
dynamic
13. Citrix Virtualization Division - History
• XenSource founded in 2005
• Creators of Xen and leaders of Xen project
• Acquired by Citrix Systems –Oct 2007
• Home of the Xen Hypervisor
• Open source, next generation architecture
• High performance bare metal virtualization engine
• Deliver Commercial Virtualization Platform
• Citrix XenServer Express, Standard, Enterprise Editions
15. Small Performance Overhead
• Native 64 Bit Hypervisor
• Code base ~50.000 lines of code
• Approx 3180 C functions
• Small Overhead
• Guests Linux/Win: ½ – 8%
• Supports large workloads
• Up to 8 virtual CPUs per guest
• Up to 128 GB RAM
• Up to 32 GB per VM
19. Xen Architecture
Open
Source
Storage
Control
Interface
Drivers
Xen Control
Interface Virtualized Hardware VT/AMD-V
Hardware
20. Paravirtualization
• Relies on “modified” XenServer
operating systems User User
Apps Apps
• Kernel and I/O paths know
they are being virtualized
• Cooperation provides best
performance
HALT
Paravirtualized guests HALT
makes high-speed calls HYPERCALL
directly to the hypervisor
VT/AMD-V
Hardware
21. Hardware-Assisted Virtualization
XenServer
User User
Apps Apps
• Hardware-assist allows high
performance without
emulation
HALT
HALT Other guests benefit
HYPERCALL
from hardware-
VT/AMD-V accelerated call
Hardware translation
28. Monolithic & Microkernelized
• Monolithic hypervisor • Microkernelized hypervisor
– Simple partitioning functionality
– Simpler than a modern kernel,
– Increase reliability and minimize TCB
but still complex
– No third-party code
– Contains its own drivers model – Drivers run within guests
“Our view is that virtualization
VM 1 is something that1 should be
VM 2 VM 3 VM
(“Admin”)
built into the operating 2system.”
(“Parent”)
Virtual- VM VM 3
ization (“Child”) Steve Ballmer
(“Child”)
Stack
Hypervisor Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Drivers
Hypervisor
Hardware Hardware
Windows Server Virtualization
VMware ESX Approach
Approach
31. Xen and XenServer
Dom0: stripped Centos5,
smaller footprint, linux
drivers
XenCenter GUI
Windows / C#
Management Stack HP ProLiant Console
XAPI Python
Control Domain Storage
Hardware, management VHD, iSCSI, Fibre Channel
Xen OS Support
Windows PV, Linux Kernels
Interrupts, CPU, memory
33. service api {start | stop | restart}
ProLiant
Virtual Console
Citrix Citrix Windows Egenera CIM
XenCenter Workflow Studio Powershell PAN Manager bridge
All these clients
are using the
Citrix XenServer same API
pools
35. Storage Management
The Old Way The XenServer way
Storage operations controlled Leave storage to the storage
by virtualization software experts. Open up an API for
command and control.
Storage API
File System
Intelligent storage reduced to Leverage the capabilities of
commodity disk enterprise storage systems
36. XenServer APIs
ProLiant
Virtual Console
Citrix Citrix Windows Egenera CIM
XenCenter Workflow Studio Powershell PAN Manager bridge
All storage is
accessed through
Citrix XenServer the same API
pools
• fdisk –l
• fdisk /dev/sdb
• mkfs -t ext3
/dev/sdb
• xe sr-create
– content-type= device-
config: host-uuid=
name-label= physical-
size= shared= sm-
config: type=lvm
• vgdisplay
• pvcreate /dev/sdb
• vgextend VG_Name /dev/sdb
• vgdisplay
38. XenServer Resource Pools
Ability to join multiple physical servers into one logical
pool of resources.
Allows VM agility
• Automatic Initial Placement
• Live Migration
Shared configurations
• Networking xe pool-join master-address=a
• Remote Storage master-username=root
master
Resiliency to single system failures password=password
• Clustered management layer Example 1: To import multiple metadata files into a pool:
• No backend management server # importscript.sh
# Imports multiple numbered VM Metadata files
• Built-in replicated database on each node ## Usage: ./importscript.sh filename
echo Importing $1
xe vm-import filename=$1 metadata=true
i=2
while [ -f $1$i ]
do
echo Importing $1$i
xe vm-import filename=$1$i metadata=true
i=`expr $i + 1`
done
39. Active-active NIC Bonding Architecture
Control Domain VM
• New NIC
• lspci
Virtual
eth 0 Bond 0 • ifconfig -a
Switch
Virtual • xe pif-scan host-uuid=UUID
NIC • Announce new hardware:
eth 1 Virtual xe pif-introduce device=eth0
Interface mac= 00:16:D3:C4:B9:BB host-
uuid=
Linux Device Drivers
Xen Hypervisor
Physical Physical
NIC 1 NIC 2
40. Snapshotting VMs (CLI)
New commands:
• Perform a regular snapshot
xe vm-snapshot vm=vm_name
new-name-label=vm_snapshot_name
• Perform a quiesced snapshot
xe vm-snapshot-with-quiesce
vm=vm_name
new-name-label=vm_snapshot_name
42. Management Architectures
The Other Guys XenServer
Traditional Management Next Generation
Architecture Management Architecture
• Single backend management • Clustered management layer
server
43. Dynamic Failure Planning
Adaptive Heuristics
E-mail Alerting
High
Availability
Features “Invisible”
46. Marathon – HA Level Standard HA everRun VM
everRun VM + Lockstep
Option (Q4 ‘08)
Zero downtime – Any failure
Level 3 –
System-Level Maintains application state
Fault Tolerance
Maintains memory state
Zero downtime – I/O failures
Automated setup & configuration
Level 2 – Automated fault management
Component-Level
Fault Tolerance Guaranteed recovery
Geographic protection
Dynamic upgrades
Best-effort failover
Linux & Windows guest support
Level 1 –
Basic Failover
No secondary resource allocation
Shared-LUN support
47. enterprise features…
Workflow Studio-enabled
Auto backup of VM metadata
Oracle DB certified hypervisor
NetApp SR driver Workflow templates
XenConvert P2V 10 x64 support
Automated High Availability to protect against host failures
SLES
Role-based admin for streaming
Increasednumberofsupportedhosts per pool Oracle Apps certified hypervisor
Latest Xen 3.x hypervisor
Host networking config via XenCenter Windows Server 2008 support 32 & 64-bit (incl. streaming)
NIC bonding SLES 9 SP4 support
Bulletproof Reliability
New Guest /HV Support
Sorting, searching, grouping, tagging in XenCenter
Snapshots for advanced storage arrays
XenConvert Intuitive XenCenter UI
P2V
Near bare-metal performance Search and Tag Virtual Machines
Persistent performance data / trending Increasednumberofsupportedhosts per pool
FT upgradable Alerting for key runtime events Business Continuity
Automated High Availability to protect against host failures Windows PV drivers for max performance
MSFT certified hypervisor multi-path support
I/O IncreasednumberofsupportedhostphysicalNICs installation
10 to Xen
Dell EqualLogic SR driver iSCSI
FC + SAN Support via XenCenter
FC SR creation
Multi-site Disaster Recovery enablement QLogic / Emulex 8Gb FC HBA support
Xen SDK XenAPI
Auto VM placement and load balancing 32 and 64-bit RHEL support
Full
53. Reducing XenApp Server Count
Issue: 32-bit Windows can only address 4 GB RAM
Underutilizes modern multi-core processors
4 GB RAM
exhausted
Plenty of
processor cycles
still available
54. Test Results – Performance Comparison
Physical Server RAM
exhausted at <90 users
67. Future of Xen, e.g. Client Initiative
• Power Management • Security
• S3 suspend to RAM, Rapid • TPM, emulated TPM
Boot
• OVF specs
• GPU passthru w/IOMMU
• USB passthru
• WiFi / WiMax
• Native UEFI support
68. Decision points for XenServer?
• Stability, Performance
• Ease of use: „10 minutes to
Xen“; real :-)
• High performance workloads
• Best price/performance ratio
• Provisioning Server
• Close Partnership w/Microsoft
69. “Citrix is a great partner!
They know how to partner
best with Microsoft.
They are the best example
for ISV partnership.”
—Steve Ballmer (Photo from Microsoft
CIO Summit, Mar 1, 2007)