Are you looking at reducing hardware cost and utilizing your virtualization infrastructure to run your Exchange servers? Are you still on edge about virtualizing a mailbox role or unified messaging role? Today I'll be sharing some tips for virtualizing Microsoft Exchange that I've picked up over the years – hopefully some of them may help ease your Exchange anxiety.
Virtualization and Exchange are a great pair if designed correctly. If you were to go and ask a vAdmin about virtualizing Exchange, they will tell you that almost any application can be virtualized with no problem. While this is a true statement, there are certain tweaks that should be made to ensure your Exchange Servers run smoothly. I’ve been virtualizing Exchange servers since the days of running Exchange 2003 on ESX 3.0, which at the time was not supported by Microsoft. I’m pretty confident that in those early days I was doing everything that the Microsoft support statement indicated not to do. Over the years, I’ve learn many lessons – some the hard way – on how to get the most out of running an Exchange virtual machine (VM).
Tips for Virtualizing Exchange
There are probably some administrators that are still concerned about performance issues with running all roles virtualized – it's a valid concerns to be sure, but if it's well designed you can have a completely virtualized Exchange environment. For those just getting their feet wet with the idea of virtualizing their Exchange servers I’ve made a list of things to look out for to help your transition.
Read the fine print. This may seem like a no-brainer, but before you start spinning up VMs, take a glance at Microsoft’s support statement for Virtualizing Exchange servers. There are also several useful white papers written about virtualizing Exchange. Doing a little research goes a long way to determine the right needs for your particular environment. Here are just a handful:
- Microsoft Support Policies and Recommendations for Exchange Servers in Hardware Virtualization Environments
- Exchange 2013 Virtualization
- Best Practices for Virtualizing Exchange Server 2010 with Windows Server 2008 R2 Hyper V
- Understanding Exchange 2010 Virtualization
- Virtualizing Exchange with VMware
Split your roles. You may want to consider splitting your server roles when you virtualize your Exchange servers. This can improve performance for your VMs and Exchange performance.
Reserve your Memory. Exchange loves memory, so the more you have the better. The new versions of Exchange servers have been optimized for performance by using RAM to cache mailbox data. Dynamic memory reductions can have a negative effect on the performance of your Exchange servers by not having enough RAM to cache your data. Slow performing Exchange server means unhappy users.
Turn off DRS or Live Migrations. Yep, you read that correctly. Host-based failover is only supported for Exchange VMs if the server is coming up from a cold boot. While you can perform a vMotion of your Exchange server, it is not supported to do so while the server is powered on. If you are running VMware, you can modify the VM’s settings to prevent and DRS actions. If you’re running a DAG you don’t need vMotion because your passive databases on another VM would handle the high availability of the mailboxes.
Know your Storage. Exchange does not support NFS for Exchange data. Storage presented to an Exchange VM must be block level storage. NFS is a common protocol used in a lot of VMware environments; if you are in one of them, you will need to look at other protocols to present the storage to yours VMs. The ideal way of presenting storage to an Exchange VM is to use pass-through storage from the host to the VM. Software iSCSI inside the guest VM is also supported, but there are performance considerations you must account for.
No Snapshots. Snapshots are a way the Hypervisor allows you to capture the state of a VM at a particular moment while it’s running, giving you an opportunity to revert back at a later time. Snapshots are great but they are not application aware, which could cause issues if a server were to revert back. Performing Snapshots on an Exchange VM is not supported. Yes, you can still do it there is nothing stopping you from clicking that button, but it’s just best to step away from the Snapshot button. If you’re running a lab it may not be a big issue, but on a production server I would avoid doing snapshots of the VMs.
Only use SATA disks under certain conditions. The use of lower-cost storage such as SATA disks is very enticing, especially as the need for more mailbox storage grows. Wait! Before you jump on the SATA bandwagon, do the research to determine whether SATA drives will give you enough IOPS to support your environment. You may find that it is more cost effective to run the data on faster drives rather than buying a 100 SATA drives to give you enough spindles for your IOPS.
Unified Messaging has limited support. The unified messaging role is only supported for Exchange 2010 SP1 or later. You will need to upgrade to a new version if you are running anything older than that.
These are just a few items to consider when virtualizing your Exchange servers that can help with your design. Virtualizing all your Exchange servers is definitely possible and can even reduce hardware costs. I have personal experience running a completely virtualized Exchange environment for a large enterprise, so I know it can be done – and it runs great. Using virtualization to run an Exchange environment can reduced your hardware footprint as well as allowing you to utilize your investment your virtualization environment.