Support for Active Directory on vSphere

I heard something interested today from a customer, a storage vendor who sells predominantly block storage products was trying to tell them that Active Directory domain controllers are not supported on vSphere when using NFS datastores.

The context was the vendor was attempting to sell a traditional block based SAN, and they were trying to compete against Nutanix. The funny thing is, Nutanix supports block storage too, so it was a uneducated and pointless argument.

None the less, the topic of support for Active Directory on vSphere using NFS datastores is worth clarifying.

There are two Microsoft TechNet articles which cover support for  topic:

  1. Things to consider when you host Active Directory domain controllers in virtual hosting environments
  2. Support policy for Microsoft software that runs on non-Microsoft hardware virtualization software

Note: There is no mention of storage protocols (Block or File) in these articles.

The second article states:

for vendors who have Server Virtualization Validation Program (SVVP) validated solutions, Microsoft will support server operating systems subject to the Microsoft Support Lifecycle policy for its customers who have support agreements when the operating system runs virtualized on non-Microsoft hardware virtualization software.

VMware has validated vSphere as a SVVP solution which can be validated here: http://www.windowsservercatalog.com/svvp.aspx

The next interesting point is:

If the virtual hosting environment software correctly supports a SCSI emulation mode that supports forced unit access (FUA), un-buffered writes that Active Directory performs in this environment are passed to the host operating system. If forced unit access is not supported, you must disable the write cache on all volumes of the guest operating system that host the Active Directory database, the logs, and the checkpoint file.

Funnily enough, this is the same point for Exchange, but where the Exchange team decided not to support it, the wider organisation have a much more intelligent policy where they support SCSI emulation (ie: VMDKs on NFS datastores) as long as the storage ensures writes are not acknowledged to the OS prior to being written to persistent media (ie: Not volatile memory such as RAM).

This is a very reasonable support statement and one which has a solid technical justification.

In Summary, running Active Directory is supported on vSphere including both block (iSCSI, FC, FCoE) and file (NFS) based datastores where the storage vendor complies with the above requirements.

So check with your storage vendor to confirm if the storage your using is compliant.

Nutanix 100% complies with these requirements for both Block and File storage. For more details see: Ensuring Data Integrity with Nutanix – Part 2 – Forced Unit Access (FUA) & Write Through

For more information about how NFS datastores provide true block level storage to Virtual Machines via VMDKs, check out Emulation of the SCSI Protocol which shows how all native SCSI commands are honoured by VMDKs on NFS.

Related Articles:

  1. Running Domain Controllers in Hyper-V

This post covers the requirement for FUA the same as with vSphere and recommends the use of UPS (to ensure write integrity) as well as enterprise grade drives which are also applicable to vSphere deployments.

Microsoft Support for MS SQL on NFS datastores

QUESTION: Is MS SQL supported when running in a vSphere environment where the SQL databases/logs are in a VMDK on an NFS datastore?

Short answer: YES!

Note: I have confirmed this with the Principal Program Manager for SAP, SQL & Azure Customer Programs.

Here are some important Microsoft Knowledge Base articles to confirm this statement.

1. Support policy for Microsoft SQL Server products that are running in a hardware virtualization environment

2. Support policy for Microsoft software that runs on non-Microsoft hardware virtualization software

It is important to note, no where in the above support policies is storage protocol even mentioned. To me this is a very smart move by the SQL team as the underlying storage protocol is abstracted from the VM, making it irrelevant.

The key requirements are:

a) The platform must be SVVP (Server Virtualization Validation Program) certified

VMware is SVVP certified, as is shown by on the SVVP Website.

b) The SQL Server product must be a supported version under its current Microsoft Support Lifecycle policy

For more information about Microsoft Support Lifecycle policies, visit the following Microsoft Support website: http://support.microsoft.com/?pr=lifecycle

c) Virtualization support per SQL features based on SQL Edition

This can be verified here under “Virtualization Support” and the below table is from this KB showing what is supported based on SQL edition.

virtusupportsql

Now in saying SQL is supported when running in a VMDK on NFS datastores, there are some limitations as discussed in SQL AlwaysOn Availability Group support in VMDKs on NFS Datastores.

In summary, old style SQL clustering requiring Shared disks which is not supported.

However SQL Always on Availability Groups (AAG) and SQL Mirroring are supported, which are the two configurations you should be considering these days.

I hope this helps clear up any confusion.

Now for the MS Exchange team to follow the lead of the SQL team!

See Virtualizing Exchange on vSphere with NFS backed storage for more details.