Thus far in our guide on installing and managing Hyper-V in Windows Server 2008, we've discussed installing the Hyper-V role, requirements for Hyper-V, Using System Center Virtual Machine Manager and the Live Migration feature in Hyper-V. Now we'll explore another standout management feature: Cluster Shared Volumes.
Cluster Shared Volumes
Cluster Shared Volumes is a new feature in Hyper-V R2 that improves the operational management of Hyper-V virtual machines (VMs). While not intended to improve server cluster performance, this new feature makes it possible to fail over individual virtual machines from one host to another when their disk files are colocated on the same storage volume.
It is easiest to explain this important feature by first discussing how cluster resources work within Windows Failover Clustering. A Windows Failover Cluster itself exists as two or more cluster "nodes" on which the Windows Failover Cluster service has been installed and configured to operate as a cluster.
Once created, a cluster can then host any of a set of cluster resources. Those resources can be services and applications such as a DHCP server, a file server, or a Hyper-V virtual machine. Within each service or application are additional resources that enable the service or application to do its job: For example, a file server resource might include "network name", "IP address", and "physical disk" resources. Among those resources, dependencies are created to identify which resources depend on which other resources. In this example, the network name might have a dependency on the IP address. As such, if the IP address fails, so will the network name, and ultimately the file server resource itself.
Within this architecture lies the problem with Hyper-V R1: This original version was only capable of failing over a physical disk resource all at once. This means that when a virtual machine needed to be failed over from one node to another, any other virtual machines which shared its physical disk would be failed over at the same time.
The net result was that this configuration made it operationally difficult to install multiple virtual machines to a single attached disk. As a workaround, Microsoft's recommendation with Hyper-V R1 was to create one physical disk per virtual machine and manage them as individual units. This practice created additional work for storage administrators, required the creation of large numbers of small-sized SAN disks, and ultimately complicated the use of Hyper-V in a clustered environment.
Cluster Shared Volumes eliminates this problem by making the cluster aware of the individual files within a physical disk resource. By enabling Cluster Shared Volumes, the cluster gains the ability to fail over individual virtual machine .VHD files rather than the entire physical disk at once. This change now enables administrators to create smaller numbers of very large physical disks with the goal of storing multiple virtual machines on each disk.
Cluster Shared Volumes is not enabled by default, and must be specifically enabled for this feature to work. It can be done by right-clicking the Cluster Shared Volumes node in the Failover Cluster Manager and selecting Add Storage. In the resulting wizard, select the storage you wish to enable. Be aware that Cluster Shared Volumes is currently only supported for use by Hyper-V virtual machines.
Greg Shields is an independent author, instructor, Microsoft MVP and IT consultant based in Denver. He is a co-founder of Concentrated Technology LLC and has nearly 15 years of experience in IT architecture and enterprise administration. Shields specializes in Microsoft administration, systems management and monitoring, and virtualization. He is the author of several books, including Windows Server 2008: What's New/What's Changed, available from Sapien Press.