This blog discusses running a Windows Server Failover Cluster (WSFC) in a Virtual Machine (VM) on top of a VMware host. Running a cluster in a virtualized environment is commonly referred to as "Guest Clustering". Guest Clustering enables health monitoring of applications running within a VM, as well as application mobility to allow applications to failover from within one VM to another (for example, to allow patching the guest operating system). It is supported by Microsoft to run Failover Clustering in a virtualized environment; however the support policy varies for different guest OS versions.
It is not supported by Microsoft to run a Guest Cluster with the Microsoft Cluster Service (MSCS) on Windows NT Server 4.0 or Windows 2000 Server in any virtualized environment.
For a cluster solution to be supported by Microsoft it must be a tested solution which has been qualified and verified to function properly with the Failover Clustering (or MSCS) feature. The full Windows Server 2003 cluster support policy is documented here: http://support.microsoft.com/kb/309395.
When a cluster solution has been qualified it will receive a 'Designed for Microsoft® Windows® Server 2003' logo and be listed on the Windows Server Catalog under "Cluster Solutions" at the following site: http://www.windowsservercatalog.com/.
Two separate VMware configurations have received a logo and are supported in Windows Server 2003 with vSphere 4.0 and EMC storage. One configuration is with EMC V-Max storage and the other with EMC CLARiiON CX4 storage. Details are listed here:
These are the only two supported Windows Server 2003 guest clustering configurations. The Windows Server 2003 cluster logo program stopped accepting new submissions as of 12/31/09, so no additional configurations will be added in the future.
The Microsoft support policy for Failover Clustering radically changed with Windows Server 2008 to become much more flexible. In order for a solution to be supported by Microsoft all individual components must have a Windows Server logo, and the solution must pass the cluster “Validate a Configuration…” tests. It is supported by Microsoft to run Windows Server 2008 and Windows Server 2008 R2 as a guest cluster. The full support policy is documented here: http://technet.microsoft.com/en-us/library/cc732035(WS.10).aspx
In particular see the "Virtualized servers" section here: http://technet.microsoft.com/en-us/library/cc732035(WS.10).aspx#BKMK_validation_scenarios
VMware has a Knowledge Base article titled “Microsoft Cluster Service (MSCS) support on ESX” which outlines additional support considerations: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1004617.
It is recommended to also review the VMware support policies which have additional considerations.
Some points of consideration:
· Windows Server 2008 guest clustering requires vSphere 4.0 or higher
· Windows Server 2008 R2 guest clustering requires vSphere 4.0 Update 1 or higher
· Guest Clustering with VMware HA requires vSphere 4.1
· It is not supported to deploy guest clustering with iSCSI, FCoE, and NFS disks
· It is not supported to deploy guest clustering in conjunction with VMware Fault Tolerance
· It is not supported to vMotion a VM that is part of a guest cluster
Please review the "vSphere MSCS Setup Limitations" section in the documentation linked in the VMware KB above for VMware’s complete and authoritative list of configuration restrictions.
ESX 3.5 or earlier
Windows NT Server 4.0
Windows 2000 Server
Windows Server 2003
Yes (limited hardware configurations)
Windows Server 2008
Yes (restricted configurations)
Windows Server 2008 R2
** Thanks to Elden Christensen (Senior Program Manager Lead, Clustering & High-Availability, Microsoft) for sharing this information.