Virtualization shoot-out: Microsoft Windows Server 2008 R2 Hyper-V

Microsoft's server virtualization platform pairs good performance with extensive management, at the cost of significant added complexity

1 2 3 4 Page 2
Page 2 of 4

Unless you leverage additional Microsoft technologies such as System Center Operations Manager to build and manage your Hyper-V hosts (a significant task all to itself), be prepared to perform plenty of the same steps, over and over, on each host in the cluster as you build it and as you add hosts over time. For the test, we configured our four Hyper-V hosts manually.

We ran into a few relatively minor problems during the initial build revolving around VLAN tagging. Using the Intel X-520 driver's VLAN capabilities, we set up virtual interfaces with VLAN tagging and presented them to the Hyper-V hosts as regular networks. Even though these interfaces were already tagged, it was necessary to specify each network's VLAN tag not only within the network definition in the host, but also on each virtual machine built with a network connection to those networks -- a step not necessary with other solutions. Oddly, migrating VMs from one host to another outside of VMM caused those tags to disappear, rendering the virtual machine disconnected from the networks. When using VMM to migrate the same hosts, the VLAN IDs were maintained.

There are other ways to connect Hyper-V virtual machines to trunked VLANs, but they aren't as simple as defining a trunked VLAN as a network and applying that network to the VM. It's functional, but not a very fluid process. This is a notable issue, as very few significant virtualized infrastructures operate without VLANs.

Hyper-V R2 management
The management aspects of Hyper-V are not contained in a single console, but scattered throughout the various supporting players that Microsoft has leveraged to bring higher-end features to the solution. Although most of the basic VM tasks can be controlled through Virtual Machine Manager, other tasks such as load balancing, backups, host updates, and patching are handled by Operations Manager and Configuration Manager. The plethora of management tools can get tedious when you're looking for one specific function that might exist in one or more consoles. Also, there's a noticeable lag in host and VM status points in the VMM console, so a virtual machine that might be heavily loaded might actually reflect a low CPU load in the display, which is annoying.

Further, the VMM console and the other supporting players are simply rife with options, context menus, and other management detritus that make it a challenge to locate certain configuration screens. You may right-click a host in the left-hand pane and select Configuration, only to realize that you actually have to left-click the host, then right-click an element in the resulting central pane, then select Configuration to find what you're looking for. There's also the potential that you actually want to click Settings, not Configuration. This Byzantine layout can trip you up no matter how much you work with Hyper-V.

That said, the abundance of System Center tools that Microsoft has brought into the Hyper-V fold provides extreme management functionality to physical and virtual servers alike. These include Opalis, which can be used to automate workflows, and Operations Manager, which can provide problem detection and resolution. All play nice with VMM and Hyper-V, extending the management capabilities from the host to the virtual machine and even to application sets within the VM, assuming that everything has been configured properly. This might include restarting a Web service when a problem is detected -- even if that service is an Apache process running on a Red Hat Enterprise Linux VM.

The tight integration with PowerShell also contributes to very easy Hyper-V scripting. This process is further accelerated by the PowerShell integration into VMM that can spit out PowerShell code of a GUI operation in many cases. This means that you can create a new virtual machine and, on the last dialog box in the wizard, click a button that will open a text editor containing the PowerShell code equivalent of your selections. You can then modify that code as you wish, which is a very good thing because there's no method in the GUI to build several VMs from a single configuration or template.

Virtual Machine Manager shows a listing of prior actions across a virtualization farm.
1 2 3 4 Page 2
Page 2 of 4