Selecting the Right Virtualization Technology

The Planning and Design Series Approach

This guide is one in a series of planning and design guides that clarify and streamline the planning and design process for Microsoft® infrastructure technologies.

Each guide in the series addresses a unique infrastructure technology or scenario. These guides include the following topics:

  • Defining the technical decision flow (flow chart) through the planning process.
  • Describing the decisions to be made and the commonly available options to consider in making the decisions.
  • Relating the decisions and options to the business in terms of cost, complexity, and other characteristics.
  • Framing the decision in terms of additional questions to the business to ensure a comprehensive understanding of the appropriate business landscape.

The guides in this series are intended to complement and augment the product documentation.

Benefits of Using This Guide

Using this guide will help an organization to plan the best architecture for the business and to deliver the most cost-effective virtualization technology.

Benefits for Business Stakeholders/Decision Makers:

  • Most cost-effective design solution for an implementation. Infrastructure Planning and Design (IPD) eliminates over-architecting and overspending by precisely matching the technology solution to the business needs.
  • Alignment between the business and IT from the beginning of the design process to the end.

Benefits for Infrastructure Stakeholders/Decision Makers:

  • Authoritative guidance. Microsoft is the best source for guidance about the design of Microsoft products.
  • Business validation questions to ensure the solution meets the requirements of both business and infrastructure stakeholders.
  • High-integrity design criteria that includes product limitations.
  • Fault-tolerant infrastructure, where necessary.
  • Proportionate system and network availability to meet business requirements.
  • Infrastructure that is sized appropriately to meet business requirements.

Benefits for Consultants or Partners:

  • Rapid readiness for consulting engagements.
  • Planning and design template to standardize design and peer reviews.
  • A "leave-behind" for pre- and post-sales visits to customer sites.
  • General classroom instruction/preparation.

Benefits for the Entire Organization:

Using this guide should result in a design that will be sized, configured, and appropriately placed to deliver a solution for achieving stated business requirements, while considering the performance, capacity, manageability, and fault tolerance of the system.

Introduction to the Selecting the Right Virtualization Technology Guide

The objective of this guide is to enable the reader to rapidly and accurately select which Microsoft virtualization technology or technologies to use for specific scenarios. The reader will then be able to proceed with the planning and design process for that virtualization technology by using the appropriate IPD guide. References and links to the appropriate IPD guides are provided in the "Additional Reading" sections and throughout this guide.

Virtualization Types

Several different forms of virtualization need to be understood as a basis for making the right technology choice:

  • Server hardware virtualization. Also known as a hypervisor, server hardware virtualization runs a very lightweight core operating system. The hypervisor can host independent virtual machines. This form of virtualization requires hardware that has embedded virtualization awareness capabilities. Because the hypervisor is very lightweight, there is little overhead in the system, which allows for more scalability in the virtual machines.
  • Server software virtualization. An operating system, such as Windows Server® 2003 or Windows Server 2008 R2, runs an application that is able to host virtual machines. Each virtual machine runs a completely separate operating system and application set.
  • Session virtualization. Centralized systems host multiple user workloads, and all processing is done on those host systems. Only the presentation information (such as keyboard and mouse inputs and video updates) is sent between the client and the host systems. The client can be a full Windows®-based workstation or a Windows-based terminal device.
  • Application virtualization. An application is isolated from the underlying operating system by means of wrapper software that encapsulates it. This allows multiple applications that may have conflicting dynamic-link libraries (DLLs) or other incompatibilities to run on the same machine without affecting each other.
  • Virtualization on the desktop. This is similar to server software virtualization, but it runs on client systems such as Windows 7 and Windows Vista®. The client operating system runs a virtualization application that hosts virtual machines. This is often used when a specific person needs to run one or a limited number of legacy applications on a legacy operating system.

Microsoft Virtualization Technologies

Microsoft has a comprehensive portfolio of virtualization technologies that can be used either independently or together to enable the widest variety of desktop and server virtualization scenarios.

Table 1 lists virtualization technologies and maps them to specific virtualization implementations available from Microsoft.

Table 1. Microsoft Virtualization Technologies

Virtualization technology

Microsoft implementation

Server hardware virtualization

Windows Server 2008 R2 Hyper-V® technology

Server software virtualization

Microsoft Virtual Server 2005 R2 with Service Pack 1 (SP1)

Desktop virtualization

Virtual Desktop Infrastructure (VDI)

Session virtualization

Remote Desktop Services (formerly Terminal Services)

Application virtualization

Microsoft Application Virtualization (App-V)

Virtualization on the desktop

Windows Virtual PC (and Windows XP Mode)

Virtualization management on the server

Microsoft System Center Virtual Machine Manager 2008

Virtualization management on the desktop

Microsoft Enterprise Desktop Virtualization (MED-V)

Windows Server 2008 R2 Hyper-V Technology

Windows Server 2008 R2 Hyper-V technology is a built-in operating system technology that hosts virtual machines on the Windows Server 2008 R2 platform, using server hardware virtualization. It provides a scalable and secure platform for supporting server virtualization within enterprise infrastructures.

Windows Server 2008 R2 Hyper-V uses Type 1 hypervisor-based virtualization, which runs directly on hardware, thereby enabling direct access to difficult-to-virtualize processor calls. Other features of Hyper-V include:

  • Ability to run 32-bit and 64-bit virtual machines concurrently.
  • Multiprocessor virtual machines.
  • Large memory support.
  • Virtual local area network (VLAN) support.

Hyper-V requires an x64-based processor with hardware-assisted virtualization (Intel VT or AMD-V processors).

For more information, see the Windows Server 2008 R2 website at www.microsoft.com/en-us/server-cloud/windows-server/default.aspx.

Virtual Server 2005 R2 with SP1

Virtual Server 2005 R2 with SP1 is a server software virtualization product that runs most major x86-based operating systems within virtual machine environments. It supports multiple scenarios, including server consolidation, support for hosting legacy operating systems and applications, automation of software test and development environments, and simplified disaster recovery.

Virtual Server 2005 R2 with SP1 runs as a service on Windows Server 2003 and Windows Server 2008 R2; it provides administration features for managing production virtual machines. Virtual Server 2005 R2 with SP1 is available as a free download from the Microsoft Virtual Server TechCenter at www.microsoft.com/technet/virtualserver/default.mspx.

Virtual Desktop Infrastructure

VDI provides desktop virtualization for enterprise customers who want to host desktops as virtual machines in central locations. Organizations can choose to create a dedicated virtual machine for each user or to allow a user to access a virtual desktop virtual machine from a pool. A virtual desktop pool is a group of identically configured virtual machines that are temporarily assigned to users. When the user completes their work, the desktop is returned to the pool and becomes available for other users.

Users can connect to these virtual machines either from traditional Windows-based client computers by using a remote desktop application, or they can connect by using a thinner, stateless Windows-based terminal device. Keyboard and mouse input is sent to the server, and video output is sent to the client, using a network connection.

For more information on VDI, see "Virtual Desktop Infrastructure" at www.microsoft.com/virtualization/products/desktop/default.mspx and

"Microsoft VDI – Overview" at http://blogs.msdn.com/rds/archive/2009/08/19/microsoft-vdi-overview.aspx.

Remote Desktop Services

Microsoft Remote Desktop Services provides the ability to centrally host client applications, using session virtualization. Formerly known as Terminal Services, Remote Desktop Services is included in Windows Server 2008 R2.

All application processing occurs centrally on the server computer that is running Remote Desktop Services. Users can connect to their applications either through traditional Windows-based client computers by using a remote desktop application, or they can connect by using a thinner, stateless, Windows-based terminal device. Keyboard and mouse input is sent to the server, and video output is sent to the client, using a network connection.

More information on Remote Desktop Services is available at www.microsoft.com/windowsserver2008/en/us/rds-product-home.aspx.

Microsoft Application Virtualization

App-V provides the ability to create isolated environments in which applications can execute on users' computers. The applications are cached on the client system and execute locally; they do not change settings on the client, such as registry or program mappings.

This eliminates application coexistence issues as well as improving automation and streamlining the process of deploying and managing the applications.

Applications installed using App-V can be distributed in either of two ways:

  • Installation. Applications are placed into the cache on the client system using traditional software distribution methods (via MSI).
  • Streaming. Applications are dynamically delivered to the client on demand and are cached for later use.

App-V is available as part of the Microsoft Desktop Optimization Pack (MDOP). More information is available from the App-V website at www.microsoft.com/systemcenter/appv/default.mspx.

Virtual PC

Windows Virtual PC is a desktop virtualization technology designed to create virtual machine environments on client computers, such as those that are running Windows 7 and Windows Vista. Windows Virtual PC provides a simplified method of setting up and using virtual environments that support a wide variety of different operating systems. For more information, see the Windows Virtual PC website at www.microsoft.com/windows/virtual-pc/default.aspx.

Windows XP Mode

Windows XP Mode is a capability that can be used to provide a Windows XP virtual machine on a computer running Windows 7. Windows XP Mode runs in a virtual machine provided by Windows Virtual PC and requires hardware-assisted virtualization, which must be enabled in the basic input/output system (BIOS). For more information, see www.microsoft.com/windows/virtual-pc/default.aspx.

System Center Virtual Machine Manager

System Center Virtual Machine Manager 2008 is a stand-alone application that provides centralized, enterprise-class management of virtual machines that run on Windows Server 2008 R2 Hyper-V, Virtual Server 2005 R2 with SP1, and VMware ESX (through VMware Virtual Center). As part of the Microsoft System Center family, System Center Virtual Machine Manager integrates with the other System Center products to provide end-to-end physical and virtual infrastructure management. For more information, see the System Center Virtual Machine Manager website at www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx.

Enterprise Desktop Virtualization

MED-V enhances deployment and management of Windows Virtual PC on a Windows desktop while providing a seamless user experience of a Windows Virtual PC environment independent of the local desktop configuration and operating system. MED-V utilizes Windows Virtual PC to provide an enterprise solution for desktop virtualization and is an integral component of the MDOP. For more information, see the MED-V website at www.microsoft.com/windows/enterprise/products/mdop/med-v.aspx.

The Decision Process

This guide addresses the decisions that need to be made to select the best virtualization approach for specific workload requirements. The guide presents these decision points in a sequence that is most effective for determining which virtualization technology should be used. When considering virtualizing multiple workloads, readers should iterate through the entire process individually for each type of workload.

Decisions in this guide are divided into sequential steps. These steps include:

  • Step 1: Determine Whether Virtualization Is Appropriate
  • Step 2: Categorize the Workload
  • Step 3: Select Server Hardware or Server Software Virtualization
  • Step 4: Determine Client Connectivity
  • Step 5: Determine Workload Location
  • Step 6: Select Desktop or Session Virtualization
  • Step 7: Choose Application Virtualization or Virtualization on the Desktop

Figure 1 outlines the decision flow for selecting a virtualization technology.

Figure 1. Virtualization decision flow

Step 1: Determine Whether Virtualization Is Appropriate

The purpose of this step is to determine whether virtualization is appropriate for a specific situation. Areas to consider when determining if virtualization is appropriate include:

  • Compatibility. Determine whether the workload can run in a virtualization environment. A workload may comprise one or more applications that currently run on a client computer, on one or more servers, or on both client computers and servers.
  • Supportability. Determine whether the workload is supported in a virtualized environment. It might be necessary to verify non-Microsoft vendors' support policies for deployment of the workload on all the virtualization technologies that will be used.
  • Licensing. Determine whether the workload can be licensed for use in a virtual environment.
  • Business benefits. Determine the business reasons for virtualizing the workload and the related benefits. Potential benefits include cost savings, reduced deployment time, and reduced administration costs.

Assuming that virtualization is appropriate for the workload, proceed to Step 2: "Categorize the Workload."

Additional Reading

Microsoft Virtualization home page: www.microsoft.com/virtualization/default.mspx

Step 2: Categorize the Workload

After determining that virtualization is the best option for a workload, the next step is to determine which category the workload belongs in. The purpose of this step is to determine whether the workload is designed to run on a Windows Server–based server or on a client computer. Workloads designed for server operating systems typically have different resource requirements and different levels of interactivity than client workloads.

Once the workload category has been determined:

  • If the workload is designed to run on a Windows Server operating system (for example, Microsoft Exchange Server), proceed to Step 3: "Select Server Hardware or Server Software Virtualization."
  • For client workloads, proceed to Step 4: "Determine Client Connectivity."

Step 3: Select Server Hardware or Server Software Virtualization

Microsoft offers two server virtualization products:

  • Windows Server 2008 R2 Hyper-V, which provides server hardware virtualization.
  • Virtual Server 2005 R2 with SP1, which provides server software virtualization.

This step involves determining which product will deliver the most appropriate platform for virtualization, based on the technical needs of the environment. Table 2 compares the capabilities of the server virtualization products.

Table 2. Comparing Microsoft Server Virtualization Products

Criteria

Windows Server 2008 R2 Hyper-V

Virtual Server 2005 R2 with SP1

32-bit host

ü

64-bit host

ü

ü

Multiple CPU support for guest operating system

ü

Enhanced management tools

ü

Hardware-assisted virtualization

ü

Server software virtualization

ü

Option 1: Use Windows Server 2008 R2 Hyper-V

Windows Server 2008 R2 Hyper-V offers the advantage of being a hypervisor-based solution. The thin hypervisor implementation dramatically reduces the overhead of virtualization. Windows Server 2008 R2 Hyper-V is available as part of the Windows Server 2008 R2 platform. It requires hardware-assisted virtualization (Intel VT or AMD-V processor).

For detailed design planning information on Hyper-V, refer to the Infrastructure Planning and Design Guide for Windows Server Virtualization, available at http://go.microsoft.com/fwlink/?LinkID=147617.

Option 2: Use Virtual Server 2005 R2 with SP1

If the hardware on which the virtualization platform will be installed does not support hardware-based virtualization extensions (Intel VT or AMD-V processor), then server software virtualization is the only choice. Virtual Server 2005 R2 with SP1 is supported by the Windows Server 2003 and Windows Server 2008 R2 operating systems for production deployments.

For detailed design planning information on Virtual Server 2005 R2 with SP1, refer to the Infrastructure Planning and Design Guide for Windows Server Virtualization, available at http://go.microsoft.com/fwlink/?LinkID=147617.

Additional Reading

  • Windows Server 2008 R2 Hyper-V:
    • Infrastructure Planning and Design Guide for Windows Server Virtualization: http://go.microsoft.com/fwlink/?LinkID=147617
    • Windows Server 2008 R2 home page: www.microsoft.com/en-us/server-cloud/windows-server/default.aspx
    • Microsoft TechNet Windows Server 2008 R2 TechCenter page: http://technet.microsoft.com/en-us/windowsserver/2008/default.aspx
    • TechNet Web Cast: Windows Server 2008 R2: Server Virtualization Solution Scenario (Level 300): http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&EventID=1032336484&CountryCode=US
  • Microsoft Virtual Server 2005 R2 with SP1:
    • Infrastructure Planning and Design Guide for Windows Server Virtualization: http://go.microsoft.com/fwlink/?LinkID=147617
    • Microsoft Virtual Server 2005 R2 home page: www.microsoft.com/windowsserversystem/virtualserver/default.aspx

Step 4: Determine Client Connectivity

The remainder of this document is dedicated to determining the best virtualization technology for client-based workloads. This step focuses on narrowing the options for virtualization, based on the network requirements of client computers.

Computers that are always connected to the network will be able to rely on server-based technologies, whereas those that are not always connected must have locally accessible applications.

The decisions in this and subsequent sections should be reviewed for each workload being virtualized since the requirements of users and their applications may be different from workload to workload.

Option 1: Connected Client

Client computers that will always be connected to the network when running a particular workload can rely upon the network in order to access their applications and data. Typical scenarios include corporate desktop computers and kiosks as well as some computers used in remote offices and home offices. This option should be selected when client computers will have reliable network connections and do not need to run applications when not connected to the network.

If the client will always be connected, proceed to Step 5: "Determine Workload Location."

Option 2: Disconnected Client

Client computers that must have the ability to run virtualized applications while disconnected from the network will require versions of the applications that are resident on the disconnected computer. These options are most useful for situations in which users need only occasional access to applications while traveling or when network connections are unreliable.

If the client may run disconnected, proceed to Step 7: "Choose Application Virtualization or Virtualization on the Desktop."

Step 5: Determine Workload Location

The next decision for connected client systems is to determine where the workload should be run. Depending on the technology choices that have been made previously, the virtualized workload can either run as a centralized workload or a decentralized workload.

Option 1: Centralized Workload

If the workload can be centrally managed and efficiently run from a server, consider a centralized approach to workload virtualization. This is beneficial when the workload configuration needs to be tightly controlled or when resources must be centrally managed. It allows for easier deployment and management of workloads.

Proceed to Step 6: "Select Desktop or Session Virtualization."

Option 2: Decentralized Workload

Some workloads cannot be run from a central server or they may require individualized configuration or access to local system resources to run efficiently. These workloads should be deployed using a virtualization method that can be distributed to desktop systems.

Proceed to Step 7: "Choose Application Virtualization or Virtualization on the Desktop."

Step 6: Select Session or Desktop Virtualization

Now that the decision has been made to centralize, the next decision involves choosing between session virtualization and desktop virtualization.

In both cases, users access centralized workloads through a Remote Desktop Protocol (RDP) connection. The client computers can run a full operating system such as Windows 7, or they can run any other operating system that has an available RDP client. They may also be diskless and boot from the network so that no data or applications are stored locally.

Option 1: Session Virtualization

The client's applications are run directly on the Windows Server 2008 R2 operating system. There will normally be many connected clients that share the operating system and the applications, so clients cannot be granted administrative rights.

All applications that are installed on the server must be able to run on the same Windows Server 2008 R2 operating system. Any incompatibilities should be managed by using another application virtualization technology, such as App-V.

See the Infrastructure Planning and Design Guide for Windows Server Virtualization, available at http://go.microsoft.com/fwlink/?LinkID=147617, and the Infrastructure Planning and Design Guide for Windows Server 2008 R2 Remote Desktop Services, available at http://go.microsoft.com/fwlink/?LinkID=177881.

Option 2: Desktop Virtualization

VDI provides virtualized desktops that run a client operating system that is hosted in a virtual machine on the Windows Server 2008 R2 operating system. Since there will normally be only one user on the client's operating system, the user may be granted administrative rights and may reboot the desktop when desired.

Step 7: Choose Application Virtualization or Virtualization on the Desktop

This decision step determines whether the workload being considered is better implemented in application virtualization or in virtualization on the desktop.

Option 1: Application Virtualization

App-V provides a method for installing applications into a virtualized environment via MSI or streaming them on-demand. Application processing will occur on client computers. App-V requires that client computers have a complete client operating system that supports the virtualized applications as well as meeting the hardware requirements for applications that will be deployed and executed on that computer. Sufficient network bandwidth for deploying applications must also be available.

See the Infrastructure Planning and Design Guide for Microsoft Application Virtualization 4.6, available at http://go.microsoft.com/fwlink/?LinkId=160978.

Option 2: Virtualization on the Desktop

Windows Virtual PC allows users to run entire client operating systems on their local computers. To support this configuration, the client computer must have sufficient CPU, memory, disk, and network resources to support the base Windows operating system as well as resources for each of the virtual machines that will be supported.

Windows Virtual PC provides support for running legacy applications and operating systems. Windows XP Mode provides a tailored Windows XP virtual machine that runs on Windows Virtual PC in Windows 7.

Users can create a wide variety of different virtual machines and can start and stop them as needed. This solution is particularly helpful for software developers and testers who often require access to multiple different platforms.

Additional Considerations

After selecting the most appropriate virtualization technology for each requirement, decide how the virtualized environment will be managed, and determine whether virtualization technologies should be used separately or together in combination.

Managing the Virtualization Environment

Microsoft provides two products—System Center Virtual Machine Manager and MED-V—to assist with the challenges of managing a virtualized environment. Some of the benefits that can be realized by using Microsoft virtualization management products to manage the organization's virtualized environment include:

  • Optimal consolidation of underutilized physical servers.
  • Rapid provisioning of new virtual machines.
  • Maximization of data center resources.
  • Integration with Microsoft System Center Operations Manager 2007 reporting.

System Center Virtual Machine Manager

System Center Virtual Machine Manager is a stand-alone application that provides centralized, enterprise-class management of virtual machines that run on Windows Server 2008 R2 Hyper-V, Virtual Server 2005 R2 with SP1, and VMware ESX (through VMware Virtual Center). As part of the System Center family, System Center Virtual Machine Manager integrates with the other System Center products to provide end-to-end physical and virtual infrastructure management.

Enterprise Desktop Virtualization

MED-V enhances deployment and management of Windows Virtual PC images on a Windows desktop while providing a seamless user experience of a Windows Virtual PC environment, independent of the local desktop configuration and operating system. MED-V uses Windows Virtual PC to provide an enterprise solution for desktop virtualization and is an integral component of the MDOP.

Combining Virtualization Technologies

In certain cases, it can be beneficial to employ multiple virtualization technologies into one comprehensive plan to address advanced needs. For example:

  • An App-V server can be used to stream an application into an App-V client that is running on a Remote Desktop Session Host (RD Session Host) server. The RD Session Host server can then publish this application to Remote Desktop Connection (RDC) clients running on client computers or thin terminals.
  • An App-V server can be used to stream an application into an App-V client that is running on a client operating system in a virtual machine on Windows Server 2008 R2 Hyper-V. That client operating system could be published to a thin terminal using the VDI of Remote Desktop Services.

The virtualization technologies may be combined in a number of different ways. In each case, be sure to confirm with Microsoft Product Support Services (PSS) that the combination is supported.

Additional Reading

  • Microsoft System Center Virtual Machine Manager home page: www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx
  • Infrastructure Planning and Design Guide for Microsoft System Center Virtual Machine Manager 2008 R2: http://go.microsoft.com/fwlink/?LinkId=160986
  • MED-V home page: www.microsoft.com/en-us/windows/enterprise/products-and-technologies/mdop/med-v.aspx
  • Infrastructure Planning and Design Guide for Microsoft Enterprise Desktop Virtualization: http://go.microsoft.com/fwlink/?LinkId=147618

Conclusion

Organizations can choose from a wide variety of virtualization solutions to better deliver their workloads. After using this guide—first to determine whether virtualization is appropriate for a particular workload, then to select the best virtualization technology—continue the planning process using the applicable IPD guide for that virtualization technology.

Note that when planning virtualization for multiple applications, readers should repeat the entire process individually for each type of workload.

Appendix: IPD in Microsoft Operations Framework 4.0

Microsoft Operations Framework (MOF) offers integrated best practices, principles, and activities to assist an organization in achieving reliable solutions and services. MOF provides guidance to help individuals and organizations create, operate, and support technology services, while helping to ensure the investment in technology delivers expected business value at an acceptable level of risk. MOF's question-based guidance helps to determine what is needed for an organization now, as well as providing activities that will keep the organization running efficiently and effectively in the future.

Use MOF with IPD guides to ensure that people and process considerations are addressed when changes to an organization's technology services are being planned.

  • Use the Plan Phase to maintain focus on meeting business needs, consider business requirements and constraints, and align business strategy with the technology strategy. IPD helps to define an architecture that delivers the right solution as determined in the Plan Phase.
  • Use the Deliver Phase to build solutions and deploy updated technology. In this phase, IPD helps IT pros design their technology infrastructures.
  • Use the Operate Phase to plan for operations, service monitoring and control, as well as troubleshooting. The appropriate infrastructure, built with the help of IPD guides, can increase the efficiency and effectiveness of operating activities.
  • Use the Manage Layer to work effectively and efficiently to make decisions that are in compliance with management objectives. The full value of sound architectural practices embodied in IPD will help deliver value to the top levels of a business.

Figure A-1. The architecture of Microsoft Operations Framework (MOF) 4.0