Nov 24

Virtualizing Domain Controllers on Hyper-V 2008 R2 – Lesson Learned

Tag: Infrastructure — November 24, 2009 @ 8:21 am
Author:

Jason Sharp

More about Jason
Articles by Jason Sharp

Windows Server 2008 R2 includes a new and improved version of the hardware virtualization hypervisor, Hyper-V.  With the performance of virtualization matching that of hardware in many cases, servers such as domain controllers and utility servers are often the first to go virtual. 

There are, of course, some things to watch for when virtualizing Active Directory Domain Controllers; however recently I ran into an issue that had me scratching my head for a while!

The issue occurs when utilizing the new Cluster Shared Volumes, which allow a Hyper-V cluster to put multiple Virtual Hard Drives (VHDs) on one SAN volume shared by all nodes in the cluster.  Each node has access to the shared volumes through a mount point arrangement, presenting all the cluster storage under C:\ClusterStorage.  This works great, until you need to down an entire cluster and the DCs are down as well.

It seems that the Cluster Shared Volumes rely on DNS, specifically the cluster’s network name resource, to work properly.  In the two examples I encountered, the shared volumes were online according to cluster manager, the VMs were stuck in “pending” status, but I could not access the shared volumes through the C:\ClusterStorage mount point.  Upon further examination, I noticed that the cluster network name resource was in a failed state.

Once I was able to get a DC booted locally on a node and DNS services online, the cluster network name came online, and presto… my shared volumes were now working as well! 

Here’s the lesson you should learn – Put Domain Controllers on local storage, on non-cluster shared volumes, or just keep a physical DC in your environment. 

If properly architected and tested, it is possible to virtualize all your Domain Controllers, but don’t assume your cluster will always be up!  Test a complete power cycle of all cluster components, especially if you are virtualizing domain controllers!

Leave a Reply