Thursday, November 19, 2009

Hyper-V Cluster Error: An error occurred while creating the cluster. An error occurred creating cluster 'clustername'. The service has not been started.

Here’s an interesting one that I already run a couple of times. You try to create a cluster at Hyper-V, the cluster pass all validation tests, then, at the final phase of the cluster creation, the process fails with the following error:
An error occurred while creating the cluster. An error occurred creating cluster 'clustername'. The service has not been started.

After this, the cluster computer account is removed from Active Directory!!!

After a closest check, I notice that the problem is related with the “Microsoft Failover Cluster Virtual Adapter” - “This device cannot start. (Code 10)”.

Hum…
After a reboot I saw the following errors at the event log:
EventID 4872:
The failover cluster virtual adapter failed to generate a unique MAC address. Either it was unable to find a physical Ethernet adapter from which to generate a unique address or the generated address conflicts with another adapter on this machine. Please run the Validate a Configuration wizard to check your network configuration.
and
EventID 4871:
The cluster service failed to start. This was because the failover cluster virtual adapter failed to initialize the miniport adapter. The error code was '2147483674'. Verify that other network adapters are functioning properly and check the device manager for errors. If the configuration was changed, it may be necessary to reinstall the failover clustering feature on this computer.

Okay, something is wrong with the MAC Address creation for the Microsoft Failover Cluster Virtual Adapter. What can we do about that?

Solution:
(Before proceeding, make sure that you backup of your registry)

- Open registry, and navigate to the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}

- Under this subkey, find the subkey that holds a DriverDesc string value entry whose value is "Microsoft Failover Cluster Virtual Adapter." (NOTE: 007 was the key designated were the Microsoft Failover Cluster Virtual Adapter was in my server, but this number may vary on different servers.)


- Under the subkey (in my scenario "007"), add the following string value registry entry:
Name: DatalinkAddress
Value data: 02-AA-BB-CC-DD-01
String Value (REG_SZ)

Restart the computer.

DONE!!!

Repeat these steps for computers were you're having this problem. When you do this on other computers, replace the value data of the registry with different values in order to set a unique value for each node. For example, set the value on the second node to 02-AA-BB-CC-DD-02, and set value on the third node to 02-AA-BB-CC-DD-03. If you notice this behavior on distinct clusters, make sure that you use an address for each node that is unique across all clusters.

Recently, Microsoft has released the KB973838 that describes the same issue.

Have Fun!!!

1 comment:

  1. In my case however, the "Microsoft Failover Cluster Virtual Adapter" is simply not there, despite repeatedly removing, rebooting and then reinstalling the "FailoverCluster-Core" option.

    ReplyDelete