After seeing a discussion in the vExpert forums and in my own experience in talking to customers, I came to the conclusion that many people aren’t aware of some of the support restrictions around virtualizing tier-1 Microsoft applications.
The one support requirement that many folks aren’t aware of is the use of virtual machine snapshots on Microsoft applications, particularly Exchange or SQL. For both applications, Microsoft is explicit in stating that virtual machine snapshots of any kind are not supported.
Why does this matter? Many popular virtual machine backup products (purposely not naming any) rely on snapshots to take clean backups of running VMs. That means using these products to backup Exchange or SQL VMs may be unsupported.
Here are the official Microsoft support statements for Exchange and SQL:
Some hypervisors include features for taking snapshots of virtual machines. Virtual machine snapshots capture the state of a virtual machine while it's running. This feature enables you to take multiple snapshots of a virtual machine and then revert the virtual machine to any of the previous states by applying a snapshot to the virtual machine. However, virtual machine snapshots aren't application aware, and using them can have unintended and unexpected consequences for a server application that maintains state data, such as Exchange. As a result, making virtual machine snapshots of an Exchange guest virtual machine isn't supported.
Support policy for SQL Server running in a hardware virtualization environment (covers all versions):
Virtualization Snapshots for Hyper-V or for any virtualization vendor are not supported to use with SQL Server in a virtual machine. It is possible that you may not encounter any problems when using snapshots and SQL Server, but Microsoft will not provide technical support to SQL Server customers for a virtual machine that was restored from a snapshot.
Pretty clear, right? The SQL policy actually explains this the best. They’re saying that you may not have any trouble using virtual machine snapshots, but if you restore a VM using a backup product that relies on snapshots then they will not support any issues with that restore.
What about virtual machine backup products that use an application aware VSS writer? I’ve spoken to Microsoft about this in particular and the answer I got back matches what their policy states. That is, if you’re using a virtual machine backup product that relies on snapshots, that solution is unsupported and you may be redirected to the backup vendor for support. This is true whether or not the virtual machine backup uses an application aware VSS writer, as some popular backup products do.
When you are virtualizing your mission critical applications like Exchange or SQL, support is extremely important. So what are your options?
1) If you have a Microsoft Premier support agreement, then Microsoft will make reasonable efforts to support you even if you run in unsupported configurations. If your organization has a Premier support agreement then you’ll most likely get support if you use a backup product that relies on virtual machine snapshots. Always confirm with your Microsoft rep in advance to ensure they will support the configuration.
2) Talk to your Microsoft representative and try to get the support statement clarified. Show them your configuration and get confirmation that it is or is not supported.
3) Rely on the backup vendor for first level support if your restored VM is having issues.
4) Use a different type of backup product for Exchange or SQL virtual machines.
As I said, mission critical applications have more strict requirements for support and I believe that you should make all attempts to follow these requirements. These applications are usually too important to an organization to risk a lengthy outage due to a miscommunication or disagreement about what is or is not supported.