Search This Blog

Tuesday, May 10, 2011

Why You Should Not Running Domain Controller in a Cluster Hyper V Host?

 

I’m not sure about other people deployment but in my country most of the deployment would like to save cost especially hardware. The customer requirement would probably request to consolidate VMM, Domain Controller or DPM running in Virtual Machine rather than Physical server.

Let me take one of the example which I just experience:

“Running domain controller as a Virtual Machine in a cluster Hyper V Host”

Pic1

Why Not?

You will tend to lose connection to Failover Cluster. Cluster fail to start due to cannot locate AD account for Cluster Hyper V Host. Microsoft Failover Cluster is rely on Active Directory and it is a pre-requisite to setup failover cluster.

I have just experience this scenario whereby my active directory is running on a Virtual machine and located inside the CSV. Everything work well until I restart the server. Guess what happen next?

Managed to login to Hyper V Cluster Host but when I open Failover Cluster mmc snap-in, I saw the error message “Cluster name not found” and all the VM in the CSV fail to start.

If I go to CSV Volume located in C: \ClusterStorage , I cannot see the Volume 1 where the rest of my virtual machine and domain controller is resides. Without Active directory, I cannot start the cluster and all the Virtual machine is gone.

I’ve tried to use command mountvol to mount the volume but still fail.

Lesson learned and it is a hard way. So my advise to everyone reading this blog is “Please put domain controller at least 1 into physical server”.

Pic2

If possible, don’t put into CSV. You can configure to run as standalone on any Cluster Hyper V host but Microsoft did not recommend to run standalone VM on a cluster Hyper V host.

Besides, you also put another risk if the DC VM located in one of Hyper V Host crashed, then you face the same scenario as mine.

Pic3

Now let read further on how i fix this problem.

Resolution

I managed to recover and bring the cluster back due to luck. Why I say lucky is because my shared storage is running Windows Storage Server 2008 R2.

Step 1:- Stop all the iSCSI Target services

Step 2:- Use computer management to attach vhd of the LUN.

Step 3:- Copy the domain controller VM to another Hyper V host and recreate the VM configuration file.

Step 4:- Boot up and reconfigure the DC VM Ip address.

Step 5: Start the Cluster name and cluster resources.

Lucky right! Now just wonder if other type of shared storage solve this problem. Probably present the LUN to another storage but so far I have tried to present the LUN to another server but it detected as “Non formatted disk” and asking to format before use this disk.

Next scenario, how about put each DC VM into each cluster Hyper V hosts? This mean 2 domain controller VM and it is located in each Hyper V Cluster.

When server boot up, the DC VM is not boot up and Cluster Hyper V Host will try to contact the domain controller. You will end up as what happen in my above scenario.

Pic4

Therefore, the best options is to separate Domain controller VM from Cluster Hyper V Host or run in physical server. That’s my advise.

Cheers,

Virtual Lai