Ronald Beekelaar Beekelaar Consultancy

Slides:



Advertisements
Similar presentations
June 24th, 2006 Toronto. The Future of Microsoft Virtualization Allen Stewart Lead Program Manager Windows Server Division Microsoft Corporation.
Advertisements

Working with Disks and Devices
Ljubomir Ivaniš CPU d.o.o.
The System Center Family Microsoft. Mobile Device Manager 2008.
John Howard Program Manager Windows Virtualization
Tag line, tag line SnapDrive for Windows 6.2 Customer Technical Presentation November 2009.
What’s New: Windows Server 2012 R2 Tim Vander Kooi Systems Architect
WSUS Presented by: Nada Abdullah Ahmed.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 11 Windows Server 2008 Virtualization.
1 Week #1 Objectives Review clients, servers, and Windows network models Differentiate among the editions of Server 2008 Discuss the new Windows Server.
1 Week #1 Objectives Review clients, servers, and Windows network models Differentiate among the editions of Server 2008 Discuss the new Windows Server.
PDI 2009 Lance Baatz and Jason Huitt ACNS.  Introduction  Hyper-V Architecture  Installing Hyper-V and creating Virtual Machines using Hyper-V Manager.
Microsoft Virtualization Strategy Christof Pfister Partner Technology Specialist, SMS&P Microsoft Schweiz GmbH Christof.
Microsoft Virtual Server 2005 Product Overview Mikael Nyström – TrueSec AB MVP Windows Server – Setup/Deployment Mikael Nyström – TrueSec AB MVP Windows.
Using Microsoft Virtualization Technologies: Today and Planning for Tomorrow Ronald Beekelaar Beekelaar Consultancy Virtualization.
Lesson 7: Creating and Configuring Virtual Machine Settings
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 11 Managing and Monitoring a Windows Server 2008 Network.
Yes, yes it does! 1.Guest Clustering is supported with SQL Server when running a guest operating system of Windows Server 2008 SP2 or newer.
Copyright © 2005 VMware, Inc. All rights reserved. VMware Virtualization Phil Anthony Virtual Systems Engineer
Implementing Failover Clustering with Hyper-V
Windows Server Virtualization Scenarios And Features Jeff Woolsey Lead Program Manager Windows Virtualization Microsoft Corporation.
Christopher Samson Senior Hosting Technology Specialist Microsoft.
VMware vCenter Server Module 4.
Ran Oelgiesser, Sr. Product Manager Praveen Vijayaraghavan, Program Manager (Virtual PC) Yigal Edery, Group Program Manager (MED-V)
Microsoft ® Application Virtualization 4.6 Infrastructure Planning and Design Published: September 2008 Updated: February 2010.
Windows Virtualization: Strategy And Roadmap Mike Neil Product Unit Manager Windows Virtualization Microsoft Corporation.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 14: Problem Recovery.
1 Objectives Discuss the Windows Printer Model and how it is implemented in Windows Server 2008 Install the Print Services components of Windows Server.
1 Management Pain points now Existing tools: Do not map to virtual environments Provisioning Backup Health monitoring Performance monitoring / management.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Module 10 Configuring and Managing Storage Technologies.
Satisfy Your Technical Curiosity 1 PRE-VIR301 Microsoft Virtualization: Today and Tomorrow Ronald Beekelaar Consultant, Beekelaar Consultancy
Windows Server 2012 VSP Windows Kernel Applications Non-Hypervisor Aware OS Windows Server 2008, 2012 Windows Kernel VSC VMBus Emulation “Designed for.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
CERN IT Department CH-1211 Genève 23 Switzerland t Virtualization with Windows at CERN Juraj Sucik, Emmanuel Ormancey Internet Services Group.
Hands-On Microsoft Windows Server 2008
WINDOWS XP PROFESSIONAL Bilal Munir Mughal Chapter-1 1.

Hands-On Virtual Computing
Module 7: Hyper-V. Module Overview List the new features of Hyper-V Configure Hyper-V virtual machines.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Deploying Windows Server 2008 Hyper-V Best Practices
Appendix B Planning a Virtualization Strategy for Exchange Server 2010.
From Virtualization Management to Private Cloud with SCVMM 2012 Dan Stolts Sr. IT Pro Evangelist Microsoft Corporation
1 Architecture Virtual Machine Monitor ( VMM ) CPU needs to switch between host process and guest process VMM switches context between those processes.
Mike Neil General Manager Microsoft Corporation.
Microsoft Virtual PC & Virtual Server 2005 Product Overview Tyler Farmer – Sr. Technology Specialist II Education Solutions
MICROSOFT HYPER-V 2012 Presentation By:- Danish Khan.
Microsoft Virtual Server: Overview and Roadmap Mike Neil Product Unit Manager Windows Virtualization microsoft.com Microsoft Corporation.
Case for Server Virtualization. Content Why virtualize? Business value of virtualization Virtualization technologies & Hyper-V overview Management and.
Satisfy Your Technical Curiosity Specialists Enterprise Desktop -
LegendCorp What is System Center Virtual Machine Manager (SCVMM)? SCVMM at a glance Features and Benefits Components / Topology /
Module 4 Planning for Group Policy. Module Overview Planning Group Policy Application Planning Group Policy Processing Planning the Management of Group.
Virtual techdays INDIA │ august 2010 virtual techdays INDIA │ august 2010 Consolidate and Virtualize your Linux Environment M.S.Anand │ Technology.
Satisfy Your Technical Curiosity 1 PRE-VIR303 Microsoft Virtualization: Deep Dive Ronald Beekelaar Consultant, Beekelaar Consultancy
1 | SharePoint Saturday Calgary – 31 MAY 2014 About Me.
Alessandro Cardoso, Microsoft MVP Creating your own “Private Cloud” with Windows 10 Hyper- V WIN443.
Hands-On Virtual Computing
Using Microsoft Virtualization Technologies: Today and Planning for Tomorrow Ronald Beekelaar Beekelaar Consultancy Virtualization.
Virtualization Vitalis Konopelec Technology Solution Professional Microsoft Slovakia s.r.o.
Managing Servers Lesson 10. Skills Matrix Technology SkillObjective DomainObjective # Using Remote DesktopPlan server management strategies 2.1 Delegating.
Planning Server Deployments Chapter 1. Server Deployment When planning a server deployment for a large enterprise network, the operating system edition.
University of Leicester Application Virtualisation Roadmap.
Microsoft Virtual Academy Module 9 Configuring and Managing the VMM Library.
Ronald Beekelaar Beekelaar Consultancy
Microsoft System Center
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Server Infrastructure & Managing Workloads
HC Hyper-V Module GUI Portal VPS Templates Web Console
Windows Virtual PC / Hyper-V
Presentation transcript:

Using Microsoft Virtualization Technologies: Today and Planning for Tomorrow Ronald Beekelaar Beekelaar Consultancy ronald@beekelaar.com Virtualization Seminar - Warsaw - 20-Feb-2007

Agenda Part 1 - Overview Part 2 - Architecture and Future Virtualization overview Usage scenarios for virtualization Virtualization licensing and support Part 2 - Architecture and Future Architecture of Virtual Server The need for VM Additions Virtual Server 2005 R2 SP1 Hardware-assisted virtualization Windows Virtualization and Hypervisor (Viridian) Part 3 - Operations Virtual Server host and guest clustering Virtual Server backup and recovery Performance optimization of Virtual Server Part 4 - Management Scripting Virtual Server System Center Virtual Machine Manager (Carmine) For further information Useful links / whitepapers / software download

Seminar hours Schedule: 10.00 – 11.15: Session 11.30 – 12.45: Session 11.15 – 11.30 – Przerwa 11.30 – 12.45: Session 12.45 – 13.45 – Obiad (one hour) 13.45 – 15.00: Session 15.00 – 15.15 – Przerwa 15.15 – 16.30: Session 16.30 – 16.45: Q&A

About the Presenter Consultant and trainer Virtualization background: Security, ISA Server and Forefront Virtualization background: Microsoft MVP for Virtual Machine Technology Whitepaper at microsoft.com: "Virtual PC for Developers" Manage all Virtual PC / Virtual Server-based labs at TechEd / IT Forum and other international TechEds Create and optimize many VMs Create virtualization tools (Virsoft) Tools to analyse and optimize VMs Tools to handle VHD-files Contact: Beekelaar Consultancy ronald@beekelaar.com

Virtualization Tools Virsoft Virsoft Lab Menu Manage, run, log VMs at events + Synchronize VM changes Virsoft VM Trimmer Optimize, compact and configure VHDs offline + Compact differencing disks + Compact folder with multiple VHDs Virsoft VHD Info Inspect VHD files + Detect parent-link problems Virsoft VHD Mount Provide interface to vhdmount.exe + Mount read-only

Microsoft strategy Vision of virtualization IT organization benefit when workloads are decoupled from hardware Increased availability, manageability Long term, workloads will be increasingly dynamic Virtualization is a key enabling technology to achieve this

Type of Virtualization Application Application Virtualisation Microsoft SoftGrid Desktop/Presentation Virtualisation Windows Terminal Services Machine Virtualisation Virtual Server & Virtual PC File Virtualization in Vista ? Desktop Operating System Hardware

Machine Virtualisation Operating System Application Desktop Operating System Application Desktop Operating System Application Desktop Hardware 8

Desktop/Presentation Virtualisation Remote Desktop Application Desktop Application Desktop Application Desktop Operating System Hardware 9

Application Virtualisation Desktop Operating System Hardware 10

Application Virtualization SoftGrid Traditional Layered Install Model Isolated Virtual Application Model

Application Virtualization SoftGrid Applications are virtualized per instance: Files (including System Files) Registry .ini files Fonts COM / DCOM objects Services Semafores, Mutexes Name spaces Applications do not get 'installed' Applications do not alter the host OS Note: Tasks process locally on the host computer

Product versions Product Release Hosts Guests ** Virtual PC 2004 Oct 2003 • Win2000 Pro SP4 • Win XP Pro (Tablet, SP1) • MS-DOS 6.22 * / OS/2 • Win 95, 98, 98SE, ME * • Win NT4 SP6a (wrkstn) * • Win2000 Pro SP4 • Win XP (Tablet, SP1) Virtual Server 2005 Jul 2004 • Win XP Pro • Win2003 SBS • Win2003 (SE, EE, Data) • Win NT4 SP6a (server) * • Win2000 Server • Win2003 (SE, EE, Web) Virtual PC 2004 SP1 Oct 2004 Same as Virtual PC 2004 + Win2003 SE Same as Virtual PC 2004 + Win XP SP2 Virtual Server 2005 R2 Nov 2005 Same as Virtual Server 2005 + Win XP Pro SP2 (non prod) + Win2003 (SP1, R2) + Win XP / Win2003 x64 Same as Virtual Server 2005 + Win XP Pro SP2 + Win2003 (SP1, R2) + Linux (9x distro's) - Apr 2006 Virtual PC 2004 Express Mar 2006 Same as Virtual PC 2004 SP1 + But can only run a single VM + With Vista Enterprise / only for Software Assurance customers Virtual PC 2007 19-Feb 2007 +Intel VT and AMD Virtualization processor support +Vista support (Host and Guest) Virtual Server 2005 R2 SP1 ~Mar 2007 +Intel VT and AMD Virtualization processor support +Volume Shadow Copy Service support (for backup) Windows Virtualization Longhorn + < 180 days Implement Windows Hypervisor New virtualization model, requires VT/Virtualization hardware Code name "Viridian" * Currently at end of support lifecycle ** See http://vpc.visualwin.com for a list of 1200+ (!) OS that run in Virtual PC / Virtual Server See KB 867572 for a list of supported OS in Virtual Server 2005 R2

Usage Scenarios for Virtualization  Production server consolidation Consolidate low-utilization workloads Legacy OS (NT4) and application re-hosting Resource partitioning (limit resources per VM)  Business continuity management Workload deployment and provisioning OS and application patching (swap VMs) Isolation / sandboxing  Dynamic data center Workload mobility  Development and test Rapid provisioning of multiple virtual machines Undo-disk and save state helpful

Usage Scenario Production server consolidation Consolidate workloads Infrastructure applications Branch office and datacenter workloads Low-utilization workloads Efficient use of available hardware resources Re-host legacy OS and applications NT4 guest applications on Win2003 host Run on current hardware and current OS No application updates required Partition resources Limit CPU resource per VM

Usage Scenario Business continuity management Workload deployment Quickly switch pre-configured VM (vhd-files) For disaster recovery Eliminate unscheduled downtime 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 Workload mobility Package up entire OS environment and move to other location Flexible deployment of workloads

Usage Scenario Development and test Rapid provisioning of virtual machines Provide multiple VMs for testing quickly Use save state to start up quickly Create arbitrary test scenarios Recreate reported issues Avoid use of production network Use undo-disk to rollback to known state Wider test range for niche scenarios Provision multiple VMs with variations Use difference-disks for easy provisioning

Usage Scenario Other server consolidation Workload Microsoft products Sample scenario Branch office and department applications Win2003 and Virtual Server 2005 Enterprise customer migrates Windows NT 4.0 applications from 1,000 stand-alone servers to 50 centralized, 4-way, rack-mount systems Enterprise applications Win2003 and WSRM Medium-sized customer moves enterprise resource planning suite onto 8-way systems running Windows Server 2003 and WSRM File and print Windows Storage Server Small business consolidates file and print servers by using network attached storage (NAS) Database Win2003 and SQL Server 2005 Enterprise customer consolidates databases on highly scalable IA-64 systems E-mail Win2003 and Exchange Server 2003 Medium-sized business consolidates e-mail servers using Exchange Server on scalability cluster Web Win2003 and IIS 6.0 Hosting service consolidates extranet applications on blades

Virtualization Support and Licensing Support (two meanings) Supported by Microsoft Product Support Technical possible with the product Needed licenses On host - host OS and Virtual Server ? In guests - guest OS and applications ?

Support By Microsoft PSS Vision in WSS Common Engineering Criteria: See - www.microsoft.com/windowsserversystem/cer Limitations ... all server products will support Microsoft Virtual Server 2005. Each product must be capable of running from within a virtual instance. Exemptions will be granted if: • The product requires hardware that is not currently supported in the VM environment. • Core product scenarios fail because of virtualization performance or scaling issues. Exchange Server 2003 - Only on Virtual Server 2005 R2 or later (KB 320220) Certificate Server - Only with Win2003 SP1 or later guest and host (KB 897614) ISA Server 2006 - Is supported, but not recommended (KB 897613) KB 897613 - Microsoft supports Windows Server System software running within a Microsoft Virtual Server environment subject to the Microsoft Support Lifecycle policy ... KB 897614 - The following Windows Server System software is not supported within a Microsoft Virtual Server environment: Speech Server, ISA Server 2000/2004, MIIS 2003, Sharepoint Portal Server. KB 897615 - 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. KB 917437 - Microsoft support for Linux guest operating systems is currently limited to the following list of qualified and tested operating systems: [9 Linux distributions]

Pricing Product Price (US) Virtual PC 2004 After 12-Jul-2006: Free (was $ 129) Virtual Server 2005 Standard Edition $ 499 Virtual Server 2005 Enterprise Edition $ 999 Virtual Server 2005 R2 Standard Edition $ 99 Virtual Server 2005 R2 Enterprise Edition $ 199 Virtual Server 2005 R2 Enterprise Edition * After 1-Jan-2006: Free download Virtual PC 2007 Free download Windows Virtualization * Virtual Server 2005 Standard Edition is no longer available

Virtual Server 2005 R2 Free Why would Microsoft do that? Reasons: Customer satisfaction Increase interest in Win2003 R2 EE 1 license = 4 VMs + host Accelerate proof-of-concept test efforts Rapidly deploy workloads (AD / SQL / BizTalk, etc) Ease migration to Longhorn virtualization

Licensing Windows server licenses Licensing changes for server products Virtualization friendly (after 1-Dec-2005)  Only count licenses for running VMs  For per-processor licenses, only count virtual CPUs in VM  Single Win2003 R2 EE license: 1 host + 4x Win2003 R2 EE in guest Virtualization unlimited (after 1-Oct-2006)  Single Win2003 R2 Datacenter license: 1 host + unlimited Win2003 R2 (any) guests See - www.microsoft.com/licensing/resources/volbrief.mspx

Architecture Virtual Machine Monitor (VMM) CPU needs to switch between host process and guest process VMM switches context between those processes Computer runs either host context or VMM context Only one operating system can "run" on CPU Ring compression

Virtual Server Service Architecture Provided by Windows Virtual Server Others Host Guest (VM) Admin Web Site Virtual Server Service IIS Guest Applications Ring 3 Ring 3 Ring 1 Ring 1 VM Additions Windows in VM Virtual hardware Ring 0 Win2003 or WinXP Kernel VMM.sys Hardware

CPU virtualization Still one problem left to solve We want CPU direct-mode execution Guest OS runs directly on CPU - fast! (99% speed) When a priviliged operation is required, a trap occurs, and VMM handles operation in kernel mode Problem: x86 is not fully virtualized in this way 20 kernel-mode read CPU instructions are allowed from outside ring 0 ! Four possible solutions: a) Recompile OS and applications without those 20 instructions = avoid those 20 instructions b) Use Binary Translation execution = patch code while running on host c) Install VM Additions in guest = patch code in memory in VM d) Use hardware-assisted virtualization = catch instructions in special ring "-1"

CPU virtualization Solutions Binary translation Translate guest instruction code to host instruction code Always possible, but is very slow VM Additions Patches dll-code in memory in VM (=similar to a rootkit) Not possible for 64-bit Vista/Longhorn Note that VM Additions also do: Time-sync, heartbeat, shutdown support optimized SCSI disk, and better mouse/video driver Hardware-assisted virtualization Use Intel VT or AMD Virtualization CPU CPU solves the problem by maintaining settings per VM Can be considered as ring "-1"

VM Additions Versions Build Release Notes 10.21 13.40 13.187 13.206 with Virtual PC 5.2 (was named Virtual PC Additions) 13.40 with Virtual PC 2004 13.187 (download) Supports Win XP SP2 13.206 with VS2005 13.306 with Virtual PC 2004 SP1 13.518 with VS2005 SP1 beta 13.531 Supports Win2003 SP1 13.552 with VS2005 R2 Supports Win2003 R2 and Vista (-build 5270) 13.705 with VS2005 R2 SP1 beta1 13.706 (download - Connect) Supports Vista B2 (-build 5384) and Longhorn 13.709 Supports Vista RC1 13.715 with VS2005 R2 SP1 beta2 Supports Vista RTM 13.724 with Virtual PC 2007 beta 13.803 with Virtual PC 2007 Get at www.microsoft.com/virtualpc

VM Additions Linux Adds: Distributions (9x) time sync Heartbeat shutdown support SCSI disk mouse/display driver But not direct-mode execution support Distributions (9x) Red Hat 7.3/9.0, Enterprise 2.1/3/4 SuSE Linux 9.2/9.3/10.0, Enterprise Server 9 More available at release VS 2005 R2 SP1

Architecture Hardware-assisted virtualization Provided by Windows Virtual Server Others Host Guest (VM) Admin Web Site Virtual Server Service IIS Guest Applications Ring 3 Ring 3 Ring 1 Ring 0 VM Additions Win2003 or WinXP Windows in VM Kernel VMM.sys Ring "-1" Virtual hardware CPU Hardware

Hardware-assisted virtualization Intel VT or AMD Virtualization Supported in: Virtual PC 2007 Virtual Server 2005 R2 SP1 Windows Virtualization (is requirement) Enable in BIOS Plus enable in Virtual PC 2007 Options Windows guests do not run faster Up-to-date VM Additions already provide direct-mode execution Windows installation is 2x-3x faster Non-Windows guests (Linux, Netware) run faster

Virtual Server 2005 R2 Specifications Host CPU  VS2005 Standard Edition: max 4 CPUs (1 or 2 cores) VS2005 Enterprise Edition: max 32 CPUs (1 or 2 cores) Memory: max 64 GB Guest CPU: max 1 Memory: max 3.6 GB Network adapters: max 4 Unlimited bandwidth ! USB: no USB keyboard/mouse is supported Workaround for USB smartcard-readers exists !

Virtual Server 2005 R2 What's new Performance Increased performance Scalability x64 hosts: Win2003 and WinXP Availability Virtual Machine clustering Failover VM on same host Uses Shared SCSI (or iSCSI) in guest Virtual Server Host clustering Move VS2005 to other host Planned and unplanned downtime Requires script - http://go.microsoft.com/fwlink/?LinkId=55644

Virtual Server 2005 R2 What's new (cont'd) Additional guest support + Win2003 SE SP1 + WinXP SP2 PXE Booting F6 disk (SCSI disk) Speeds up Windows installation Virtual Disk Precompactor.iso Also... Supports hyperthreading on host Reserve space for save state file (.vsv) Open Windows Firewall ports at install

Virtual Server 2005 R2 SP1 What's new Features Intel VT and AMD Virtualization support Volume Shadow Copy (VSS) support Active Directory integration using Service Connection Points Vista as Guest support Includes VHD mount tool Also... Host clustering whitepaper included Default vhd capacity is 127 GB (was 16 GB) Virtual SCSI fix for Linux 2.6.x guests

Differences VS2005 - VPC2007 Virtual Server 2005: Only in VS2005: Use multiple host CPUs Multithreaded Multiple CD ROM drives NAT through host ICS Unlimited networks Using vnc-files on host Only in VS2005: SCSI disk (in VM) COM API Remote Management Run as service Auto start VMs Virtual PC 2007: Use single host CPU Single thread for all VMs Single CD ROM drive NAT support Unlimited networks Using host (loopback) adapters Only in VPC2007: Sound card (VM) Folder Sharing Drag-and-drop Copy / Paste

Windows Virtualization VMM arrangements Type-2 VMM Hybrid VMM Type-1 VMM Hypervisor Guest 1 Guest 2 VMM Guest 1 Guest 2 Guest 1 Guest 2 Host OS Host OS VMM VMM (Hypervisor) Hardware Hardware Hardware Examples: - JVM - .NET CLR Examples: - Virtual PC - Virtual Server Example: - Windows Virtualization ("Viridian")

Windows Virtualization Virtualization for Windows Server Code name "Viridian" (= color: rgb 64-130-109 ) Windows Hypervisor Thin layer of software, underneath "host OS" (~160 KB) Parent partition - manages child partitions Child partition - any number of OS, managed by parent Virtualization Stack Runs in root partition (= parent partition) Provides virtualization of devices WMI interface for management Virtualization Service Providers (VSPs) Hardware sharing architecture Need "viridian" drivers in guest

Windows Virtualization Virtualization for Windows Server Requires x64 hardware Intel VT / AMD-V processor Provides 32-bit and 64-bit guest Max 8 CPU per VM Hot "add": processor, memory, network, disk 32+ GB RAM per VM Live virtual machine migration Multiple snapshots No new driver model Can use existing Windows drivers in guest Same set of emulated hardware S3 Trio video card, DEC 21440 network card, etc Support for Server Core as parent OS

Architecture Virtual PC / Virtual Server 2005 R2 Provided by Windows Virtual Server Others Host Guest (VM) Admin Web Site Virtual Server Service IIS Guest Applications Ring 3 Ring 3 Ring 1 VM Additions Windows in VM Virtual hardware Ring 0 Win2003 or WinXP Kernel VMM.sys Hardware

Windows Virtualization Provided by Windows Win Virtualizaton Others Parent partition Child partition Virtualization Stack WMI VM Service VM Worker Guest Applications Ring 3 Windows (core) Windows VSPs VSCs Kernel Kernel VMBus Drivers Enlightments Ring 0 Windows Hypervisor Ring "-1" Hardware

Windows Virtualization VSC - VSP Communication Parent Partition Child Partitions Provided by: VM Worker Process Applications Windows User Mode Windows Virtualization Windows File System ISV Volume Partition Virtual Service Provider (VSP) Disk Disk Fast Path Filter (VSC) StorPort iSCSIprt Virtual Storage Miniport (VSC) StorPort Miniport VMBus Kernel Mode Hardware Windows hypervisor

Virtual Server 2005 vs Windows Server Virtualization   Virtual Server 2005 R2 Windows Server Virtualization 32-bit VMs? Yes 64-bit VMs? No Multi-processor VMs? Yes, up to 8 processor VMs VM memory support? 3.6 GB per VM More than 32 GB per VM Hot add memory/processors? Hot add storage/networking? Can be managed by System Center Virtual Machine Manager? Microsoft Cluster support? 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

Networking Create .vnc-files to define "virtual switches" Three settings per vnc-file: - Network name - Connected to which host network adapter or to None (guest-only) - DHCP settings for this switch Pre-defined vnc-files: Internal network.vnc Separate vnc-file for each host network adapter Unique MAC-address assigned Unlimited network speed (not max 10/100 Mbps)

Disks Data store in virtual hard disk (.vhd) files File format is the same: Virtual PC 2004 Virtual Server 2005 Windows Virtualization (future) Max sizes IDE (VPC2004): 130,557 MB (= 127.5 GB) IDE (VS2005): 130,048 MB (= 127.0 GB) SCSI (VS2005): 2,088,960 MB (= 2040.0 GB)

Disks VHD Format Free license from Microsoft www.microsoft.com/windowsserversystem/virtualserver/ techinfo/vhdspec.mspx 45 vendors signed up (April 2006) Examples: Diskeeper PlateSpin WinImage XenSource From 17-Oct-2006: Unregistered download available Virtual Hard Disk Format Specification • Introductions • Overview of Virtual Hard Disk Types • Virtual hard disk Footer Format • Dynamically expanding .VHD Header Format • Block Allocation Table and Data Blocks • Implementing a Dynamically expanding .VHD • Mapping a Disk Sector to a Sector in the Block • Splitting virtual hard disks • Implementing a Differencing virtual hard disk • CHS Calculation

VHD Types Base VHD types State drive types Dynamically expanding Default type: Grows as needed Fixed size Highest performance type State drive types Undo Non-persistent, per VM (*.vud) Differencing Persistent parent-child hierarchy Saved states Flush memory to disk (*.vsv) Host 1GB 2TB Guest 2TB Host 2TB Guest 2TB Base Session Base SP1 SP2 VM Host

VHD Test Drive Program New: announced 6-Nov-2006 Fully configured VHD-files Downloadable from Microsoft's Web site Evaluation versions Expires after 30 days Partners can also provide their applications See www.microsoft.com/vhd for more information

VHD Mount Tool Access VHD content offline VHDMount tool is included with VS2005 R2 SP1 Can install separate: Use as command-line tool: Use for copying or injecting files, inspecting, virus-scanning Do not use for offline patching (yet) C:\> msiexec.exe /i "Virtual Server 2005 Install.msi" /qn ADDLOCAL=VHDMount C:\Program Files\Microsoft Virtual Server\Vhdmount> vhdmount.exe Usage: VHDMOUNT /p VHDFileName - mounts vhd-file VHDMOUNT /m VHDFileName [DriveLetter] - mounts vhd-file, assign drive letters VHDMOUNT /u VHDFileName | All - unmounts vhd-file or all VHDMOUNT /q VHDFileName | All - lists mounted vhd-file or all

VHD Enhancements Windows Virtualization While VM is running Compact VHD-file Create new diff-disk (snapshotting) Create VHD-chain Schedule snapshot every 10 minutes Merge Hot add VHD-file Add VHD-file notes Think: 1000s of VHD-files on network Pass-through VHD - map to SAN

Differencing disks VHD files use blocks of 2 MB Read Write 3 Create Virtual Server service Read Write 3 Create File-c.doc 1 2 3 4 Delete File-d.doc 1 2 3 4 Grow Link to parent 1 2 3 4 1 2 3 4 1 2 3 4 Read only File-a.doc File-b.doc File-d.doc

Disks Read/write zero-filled files VHD file format optimizes read/write of zero-filled blocks Best example: empty pagefile.sys Virtual Server service Write File-a.doc 1 2 3 4 Pagefile.sys Write 1 000 000 000 000 2 4 3 5 ... Read 000 000 000 000 11 12

Compact VHD Files Steps Note: Does not work on differencing disks In VM - Cleanup Startup VM without Undo disks 1 Defragment disk 2 Zero-fill all unallocated spaces Use Precompactor.iso Shutdown VM On host - Compact 3 Use VPC Disk Wizard or VS Inspect Disk to compact

Virtual Server Clustering Three different options Virtual Machine (Guest) Clustering - Shared SCSI Cluster VMs on same host Virtual Machine (Guest) Clustering - iSCSI Cluster VMs on different hosts Virtual Server Host Clustering Cluster VS on different hosts

Clustering Guest to Guest Host to Host iSCSI connection Cluster storage iSCSI connection Host to Host Cluster storage SAN or iSCSI connection

Clustering Virtual Machine (Guest) Clustering VM (Guest) is the cluster node Application in guest is a resource group Application is cluster-aware (or Generic) Protects against failure of Guest If VM or application fails, then failover to other VM on same host or on another host

Out-of-the-Box High Availability Host Updating WSUS server Administrator wants to update node 1 with Windows Server Update Services Microsoft Cluster Administration Console saves the state of virtual machines and restores them on another node Node 1 is ready for update installation Shared Storage Node 1 Node 2 Node 3 VM VM

Out-of-the-Box High Availability Unplanned downtime Shared Storage Node 1 suffers a power outage or a network failure A simple script attached to the Microsoft Cluster Administration Console notices the lack of heartbeat and starts the virtual machines associated with node 1 on other nodes Node 1 Node 2 Node 3 X VM VM VM

Clustering Virtual Server Host Clustering Host is the cluster node Each VM (Guest) is a resource group Generic Script havm.vbs makes VM "cluster-aware" Protects against failure of Host Application in guest is not monitored by cluster Function Open() [..] 'starts Virtual Server service Function Online() [..] 'send start control to VM Function LooksAlive() [..] 'quick check if VM is alive Function IsAlive() [..] 'thorough check if VM is alive Function Offline() [..] 'send save state control to VM Function Terminate() [..] 'best attempt to take offline

Clustering Virtual Server Host Clustering Benefits Move VMs before scheduled host maintenance Hardware upgrades Software updates on host Steps: Saves state VM1 - failover - restore state in VM2 Protect against unscheduled host failure Steps: (Oops) - failover - startup VM2 Run legacy operating systems in a "clustered" way

Clustering Virtual Server Host Clustering Deploy Hosts run Cluster service Uses iSCSI or SCSI/Fibre Channel to shared storage Note: Disable Cluster service when installing VS2005 Each VM is in a Resource Group Or multiple VMs in same Resource Group Implemented as Physical Disk resource Containing vmc-file, vhd-file and vsv-file Add havm.vbs as Generic Script in Resource Group Resource dependencies: Script havm.vbs  OS disk  Data disk

Management Pain points now Existing tools: Do not map to virtual environments Provisioning Backup Health monitoring Performance monitoring / management Do not consider physical - virtual relationship Ownership Patching and servicing

Virtual Server Backup and Recovery Do you need to backup VMs? Because a VM is a single file (*.vhd), it is very easy to use backup methods that you cannot safely restore Issues are: Running state of vhd-file Restore unusable "snapshot" of a database Best example: Active Directory database

Backup of VM Three methods:  - Inside VM, run backup application Treat VM as a normal physical machine  - Stop VM (save state) - On host, backup vhd/vsv files - Start up VM Only short VM downtime  Not supported for DCs in VM !  - Needs: Virtual Server 2005 R2 SP1 - On host, run backup application - Copy 'open' vhd files - uses VSS and VS Writer VS Writer ensures vhd-file is in consistent state  Do NOT use without Virtual Server 2005 R2 SP1

Backup of VMs VSS explained Roles VSS Requestor = backup application Initiates backup action VSS Writer = Virtual Server 2005 R2 SP1 Ensures data consistency Freeze SQL Server Writer VSS Service 4 Snap In guest (VM1) Exchange Writer 3 "Backup files" 5 6 VS Writer Virtual Server 2 SnapID "Unfreeze" Snap 7 "Backup VM1" VSS Service VSS Service 1 Copy files based on SnapID On host Backup Application Backup Application

Scripting Virtual Server COM - Set virtualServer = CreateObject("VirtualServer.Application") WMI - Set vsWMIObj = GetObject("winmgmts:\\.\root\vm\virtualserver") Virtual Machine Manager PowerShell (Monad) Windows Virtualization WMI - Set WMIService = GetObject("winmgmts:\\.\root\virtualization")

Virtual Machine Manager Management Tool VM System Center Virtual Machine Manager Code name: "Carmine" (= color: rgb 150-0-24 ) Incorrect name: Virtual Server Manager Shown at WinHEC 2006 (23-May-2006) See mms://wm.microsoft.com/ms/windowsserversystem/ systemcenter/WinHEC_Content_For_TechEd_MBR.wmv Available Beta: Sep 2006 RTM: ~Oct 2007 For Virtual Server and for Windows Virtualization Is MMC console

Virtual Machine Manager Features Resource optimization Identify consolidation candidates Fast P2V Optimum workload placement on host computers Rapid provisioning Central library of virtualization components Running VMs, offline VMs, vhd-files, vnc-files Self-service provisioning Templates: create standardize VMs Automatic placement on suitable host computer Distributed storage infrastructure - uses DFS Host provisioning Uses PowerShell ("Monad") for scripting

Virtual Machine Manager Physical to Virtual (P2V) Identify consolidation candidates Looks at peak and average performance Configurable selection parameters Physical to virtual migration Uses fast VSS, not based on existing VSMT Support Win2000 Server and Win2003 Server Uses BITS for network transport speed Wizard based, or scripted through PowerShell

Virtual Machine Manager VM placement Capacity planning everywhere Used for P2V, migration, template deployment, self-service Rating scheme Hard requirement Minimum CPU, RAM needed, disk space needed, network usage Soft requirements Historic VM performance Current host performance

Virtual Machine Manager Offline library Contents Templates Sysprepped VHDs Standardizes deployments of VMs Virtual machines Store non-running VMs Disks ISO Scripts Architecture Distributed Multiple library servers Access through DFS Namespaces Replicated Uses DFS-R and RDC

Virtual Machine Manager Self-service portal Web based interface Controls management deployment End users interact with their own VMs Deployment based on templates Resource quotas set per user VMs may retire after "lease" expires

Centralized Management: Views ____ ___ ___ ____ ____ ___ ___ ____ By Resource Pool By VM State By Owner By Creation Date By Operating System 74

Centralized Management: Reports Full set of reports, integration with MOM database Actions one click away in context sensitive Actions Pane

Centralized Management: Library Templates contain both “Gold” image of software as well as hardware settings Offline Virtual Disks Offline Virtual Machines Scripts for post deployment configuration and customization

Choose whether to place new VM into library or place on physical host New Virtual Machines Choose whether to place new VM into library or place on physical host

Hardware Configuration Configuration of target virtual machine resouces with default values from physical source machine

Virtual Machine Placement _________ ________ _________ ________ Subset physical hosts to appropriate resource pool(s) Rank-ordered recommendations of physical hosts for placement of virtual machine. Capacity Planning models, historical performance data, hard requirements, … incorporated into algorithm. 79

Self-Service Portal Customized Per User ____ _________ __ ___ ___ ____ _________ __ ___ ___ Ability to control owned virtual machines Thumbnails of all owned virtual machines 80

Self-Service Portal Controlled by Administrator Quotas used to manage resource allocation across users

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.

Operations Best practices Disable VM time synchronization when VMs are in a domain Does not use time zones ! When copying VMs: Run Sysprep, or Newsid (sysinternals.com) Do not include save state (.vsv) file Stop VS when shutting down host computer Use script for UPS

Performance Optimizations Virtual Server is usually faster than Virtual PC Except for video (screen) handling Disk Three possible disk drivers in guest (in order of speed): 3. Windows SCSI driver (slowest) 2. IDE driver (=only option for Virtual PC) 1. VM Additions SCSI driver (fastest)

Move disk from VPC to VS From IDE to SCSI Issue: How to boot IDE vhd as SCSI vhd Steps 1. In VS console: Add SCSI Adapter (ID 7) to VM Leave boot disk as IDE disk 2. Startup VM Found new hardware: Adaptec AIC-7870 PCI SCSI Adapter Needs Win2003 CD for aic78xx.sys (56 KB) Now you can boot as SCSI, but this is a slow SCSI driver.

Move disk from VPC to VS From IDE to SCSI 3. In running VM: Open Device Manager Right-click Adaptec / Update Driver Install from a specific location / Have Disk Browse to C:\Program Files\Virtual Machine Additions Installs SCSI driver: Microsoft Virtual Machine PCI SCSI Now the fast SCSI driver is loaded 4. In VS console: Swith boot disk from IDE to SCSI adapter Virtual PC can still boot from disk as IDE

Performance Most important tips  Install VM Additions in all VMs Consider latest VM Additions  Use enough memory per VM To avoid paging inside VM  Plan capacity of running VMs Total disk usage Total CPU usage Total network bandwidth needed

Performance On host On host, for disks: Use multiple physical disks Use SCSI host disks Defragment host disk Use NTFS Use NTFS compression - maybe On host, use multiple network adapters Unbind Virtual Machine Network Service from dedicated host adapter On host, exclude .vhd from virus-scanning On host, do not use /3GB in boot.ini VMs use non-paged kernel memory

Performance In guest VM configuration Guest configuration Use SCSI disk for vhd-file Ensure VM Additions SCSI driver is used Use fixed disk instead of dynamic disks Guest configuration Disable unnecessary services: Indexing, tracing, auto-search for network resources, etc Defragment guest disk Not when using differencing disk

Summary/Call to Action

For more information Useful links Weblogs Virtual PC Guy (Ben Armstrong - MS) http://blogs.msdn.com/Virtual_PC_Guy/ Virtual Vista (Mike Kolitz - MS) http://blogs.msdn.com/mikekol/ Windows Virtualization (John Howard - MS) http://blogs.technet.com/jhoward/ Scripts TechNet www.microsoft.com/technet/scriptcenter/scripts/vs/default.mspx

For more information Whitepapers Virtualization Licensing Brief www.microsoft.com/licensing/resources/volbrief.mspx Using iSCSI with Virtual Server 2005 R2 http://go.microsoft.com/fwlink/?LinkId=55646 Virtual Server Host Clustering whitepaper and script http://go.microsoft.com/fwlink/?LinkId=55644 Virtual Server Guest Clustering www.microsoft.com/technet/prodtechnol/virtualserver/deploy/ cvs2005.mspx Virtual PC for Development and Debugging www.microsoft.com/windows/virtualpc/techinfo/debug.mspx

For more information Download software Virtual Server 2005 R2 EE www.microsoft.com/windowsserversystem/virtualserver/software/ default.mspx Virtual Server 2005 R2 SP1 Beta2 connect.microsoft.com - sign-up for beta Virtual PC 2004 SP1 www.microsoft.com/windows/virtualpc/downloads/sp1.mspx Virtual PC 2007 RC (including VM Additions 13.802) connect.microsoft.com - sign up for beta Linux VM Additions www.microsoft.com/windowsserversystem/virtualserver/ evaluation/linuxguestsupport/default.mspx VSMT http://go.microsoft.com/fwlink/?LinkId=37030

©. 2006 Microsoft Corporation. All rights reserved © 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.