Can Microsoft level the virtual playing field held by VMware ESX Server?
Virtualization is one of today’s hottest IT technologies, and Windows Server 2008’s new native virtualization feature, Hyper-V, is a significant new competitor that has the potential to change the market. VMware ESX Server is the current market favorite. To make an informed decision about Hyper-V, you need to understand how the architectures of the two products compare. In addition, Hyper-V introduces some important new features, and you’ll want to see how Hyper-V and the older Virtual Server 2005 R2 relate to each other. Finally, to enrich your understanding of Hyper-V I’ll show you how to set it up and use it.
Prerequisites for Hyper-V
Unlike Microsoft’s Virtual Server 2005 R2, which runs on both 32-bit and 64-bit systems, Hyper-V requires an x64-based system that has either Intel-VT or AMD-V support. In addition, the host system’s CPU must have data execution protection enabled (the Intel XD bit or the AMD NX bit). Microsoft will provide Hyper-V virtualization technology with the following versions of the Windows Server 2008.
- Server 2008, Standard: $999 with five Client Access Licenses (CALs)
- Server 2008, Enterprise: $3,999 with 25 CALs
- Server 2008, Datacenter: $2,999 per processor
Like the Windows Server 2003 R2, Enterprise and Datacenter Editions, the Server 2008, Enterprise Edition allows up to four virtual Windows instances with no additional licensing costs, and Server 2008 Datacenter Edition allows an unlimited number of virtual Windows instances with no additional licensing costs. You can use Hyper-V with both the full Server 2008 installation, or with Server Core for any of the Server 2008 editions. In addition Microsoft will offer a standalone version called Hyper-V Server for $29.
Windows Server Hyper-V Architecture
Designed to compete with VMware’s ESX Server, Hyper-V has been built from scratch based on a new microkernel architecture. Figure 1, shows an overview of the new Server 2008 Hyper-V architecture. For a quick comparison of ESX Server and Hyper-V, see the sidebar “Feature for Feature: VMware ESX Server vs. Microsoft Hyper-V.”
Unlike Virtual Server’s hosted virtualization model, which requires installing the virtualization software on top of a host OS, Hyper-V is a virtualization layer that runs directly on the system hardware with no intervening host OS. The Hyper-V architecture consists of the bare metal microkernel hypervisor and parent and child partitions.
All Hyper-V implementations have one parent partition. This partition manages the Hyper-V installation. The Windows Server Virtualization console runs from the parent partition. In addition, the parent partition is used to run thread-supported legacy hardware emulation virtual machines (VMs). These older emulation-based VMs are essentially the same as the VMs that run under a hosted virtualization product such as Virtual Server.
Guest VMs run on Hyper-V child partitions. Hyper-V’s child partitions support two types of VM: high performance VMBus-based VMs or hosted emulation VMs. VMBus VMs include Windows Server 2003, Windows Vista, Server 2008, and Xen-enabled Linux. The new VMBus architecture is essentially a high performance in-memory pipeline that connects Virtualization Service Clients (VSCs) in the guests with the host’s Virtual Service Provider (VSP). Hosted emulation VMs support guest OSs that don’t support the new VMBus architecture. These OSs include, Windows NT, Windows 2000, and non-Xen enabled Linux, like SUSE Linux Server Enterprise 10.
Hyper-V and Virtual Server Server 2008
Hyper-V introduces capabilities that aren’t available with Virtual Server 2005 R2. Running exclusively on the x64 platform, Hyper-V supports host systems with up to 1TB of RAM, and Hyper-V doesn’t limit the number of active VMs; the only limitation comes from the capabilities of the host server hardware. In addition, the Hyper-V VMs are more scalable than Virtual Server VMs. Hyper-V supports both 32-bit and 64-bit guest OSs. Not only can guest VMs take advantage of Hyper-V’s higher performing VMBus architecture, but guest VMs also can use more RAM and CPU than Virtual Server offers. Virtual Server 2005 R2 has no support for virtual SMP and is limited to 3.6GB of RAM per VM. Hyper-V supports up to 4 virtual processors per VM and up to 32GB of RAM per VM. To take full advantage of this support, the host system must have at least 4 cores and more than 32GB of physical RAM.
Hyper-V provides new storage features. Storage Area Network (SAN) support lets you boot VMs and implement guest-to-guest failover clustering, as well as virtual server host failover clustering. Hyper-V also introduces the pass-through VM access storage feature. With Hyper-V, you can access virtual hard disk (VHD) images without mounting the VHD image in a running VM. Hyper-V can also take advantage of Volume Shadow Copy Service (VSS) for live VM backup. On the networking side, Hyper-V includes a new virtual switch with support for Windows Network Load Balancing (NLB) across VMs on separate servers. In addition, Hyper-V allows multiple snapshots of running VMs with the ability to revert back to any of the saved snapshots.
Hyper-V is not installed in Server 2008 by default. To install Hyper-V, you use the Server 2008 Server Manager. Click Start, Programs, Administrative Tools, and then select the Server Manager option. In Server Manager, add the virtualization role by clicking Add Roles, which displays the Add Roles Wizard shown in Figure 2.
In the Add Roles Wizard, check the Windows Server virtualization role. Then click Next and step through the wizard’s screens to learn about and configure Hyper-V. The wizard first explains that you might need to configure your BIOS for virtualization support, and it provides links to Windows Server Virtualization Online Help files. Next, the wizard prompts you for the Local Area Connections that you want to associate with your virtual networks. By default, the wizard creates one virtual network for each physical network adapter that’s installed. Next, you’re asked to confirm your selections and prompted to restart your system.
AMD-V systems have virtualization support enabled by default. In contrast, if your system uses Intel-VT virtualization, check your system’s BIOS configuration during the boot process and make sure that virtualization is enabled. For systems with Intel motherboards, press F2 during the boot process to see the BIOS configuration. You can set the Enable VT option to enable virtualization support in the processor.
After the system reboots, the Resume Configuration Wizard screen appears. Use it to finish installing the Windows Server Virtualization role. The new Windows Server Virtualization role will then be listed under Server Manager’s installed roles node.
Hyper-V’s Management Console
After the virtualization role is installed, you’re ready to fire-up some new VMs. Unlike Virtual Server 2005 R2, which you manage through a Web-based console, Hyper-V is managed through a Microsoft Management Console (MMC) 3.0-based Windows GUI. You start Hyper-V’s Virtualization Management Console by clicking Start, Administrative Tools, and then selecting Windows Virtualization Management. Figure 3 shows the Hyper-V management console.
You can manage multiple Hyper-V server instances in the management console’s left pane. Selecting a server instance displays that server’s VMs in the center Virtual Machines pane. You can manage the VMs by rightclicking them and selecting from among the following commands on the context menu:
- Connect–Allows you to connect to a running VM, which starts the Virtual Machine Connection window
- Settings–Enables you to edit the VM properties
- Turn Off–Powers down the VM
- Revert–Applies a saved snapshot to the VM returning it to prior saved state
- Shut Down–Shuts down the VM’s guest OS
- Save State–Saves the current state as a running VM
- Pause–Halts the execution of a VM
- Snapshot–Saves a snapshot of the current VM state
Use the Actions pane on the right side of the Virtualization Management Console to perform common actions such creating new VMs, editing VM properties, editing virtual hard disk configurations, starting and stopping the virtualization service, and removing servers from the console.
Use the Wizard to Create and Migrate VMs
Creating VMs is easy using Hyper-V’s New Virtual Machine Wizard. To start the wizard, click New in the Virtualization Management Console Action pane.
As Figure 4 shows, the first screen prompts you for the VM name and the location where the VM will be created. By default, Hyper-V creates new VMs in the C:\ProgramData Microsoft\Windows\Virtualization directory. To change the default location, you can use Virtualization Settings in the Virtualization Management Console. Next the wizard prompts you for the amount of memory allocated to the VM. The default value is 256MB, but you can allocate from 8MB to 32MB of RAM per VM (limited by your system’s physical RAM).
Next, the wizard asks you about networking the VM. You can choose no network or select a virtual network. The wizard created virtual networks when you first added the virtualization role. To create virtual networks, you can also use Virtual Network Switch Management in the Virtualization Management Console. You can configure the virtual network switch to allow internal networking so that VMs can connect with other VMs or to the Windows Server host. You also can create a virtual network that connects to one or more of the host’s physical network adapters for external network connectivity.
The New Virtual Machine Wizard gives you the option of creating a VHD, connecting to an existing VHD, or attaching to a VHD later. By default, VHDs are created in the C:\Users Public\Documents\Virtual Hard Disks directory. To change this default directory, you can use Virtualization Setting in the Virtualization Management Console. Hyper-V uses the same on-disk VHD format as Virtual Server 2005 R2. This common format makes it easy to migrate existing Virtual Server 2005 R2 and Virtual PC VMs to Server 2008 Hyper-V: Select the option to use an existing VHD and then provide the wizard with the path to the VHD file. This attaches the existing VHD to the new Hyper-V VM. If you chose to use a new VHD, then the next screen offers OS installation options. You can install the OS later or install the OS from either the host’s CD/DVD drive or from an ISO image file. The last screen presented by the wizard prompts you to confirm your VM configuration settings. Finishing the wizard creates the new VM automatically. You have the option to start it right away or you can manually start it later.
After a VM is created you have the option to install the new Integration Services on the guest. (Before you install Integration Services it’s a good idea to uninstall the Virtual Server R2 Tools; Integration Services replaces the older Virtual Machine Additions.) Integration Services provides improved mouse support and host time synchronization. You can install Integration Services on the guest OS by starting a Virtual Machine Connection from the Virtualization Management Console. From the Virtual Machine Connection Action menu, choose Insert Integration Services Disk. In using the new Hyper-V VM, I definitely noted the brisk performance for the running VMs.
What’s Next for Hyper-V?
Microsoft shipped a beta version of Hyper-V in December. A prerelease version of Hyper-V will ship with the initial release of Server 2008. Microsoft has stated that the final Hyper-V code will ship within 180 days of the Windows Server 2008 release to manufacturing (RTM). The final Hyper-V code will be released via Windows Update, so you won’t need to go through additional downloads or installation processes to get the RTM Hyper-V code.
Microsoft’s Hyper-V is an evolutionary technology that can complement or go beyond the virtualization approach of Virtual Server 2005 R2. Hyper-V’s new microkernel, hypervisor-based solution delivers better performance, more features and functionality, and improved scalability over Virtual Server 2005 R2. These advances level the playing field with VMware’s market leader, ESX Server. The fact that Server 2008 introduces Windowsnative virtualization in the form of Hyper-V is sure to drive the adoption of virtualization in organizations of all sizes. And Hyper-V will help drive the adoption of Server 2008. The price and easy accessibility make moving to Hyper-V virtualization especially attractive for small and medium businesses (SMBs). Plus ESX Server’s more difficult Linux-style administration and higher price deters many SMBs. For more information about Windows Server Hyper-V, see the Learning Path that accompanies this article.