Virtualizing Microsoft Applications
As you move toward the goal of 100% virtualization in your data center, careful attention to the virtualization of business critical MicrosoftÂ® applicationsâ€”including Microsoft Exchange, Microsoft SQL ServerÂ®, and Microsoft SharePointÂ® Serverâ€”becomes essential.
To get from where you are today to an environment that delivers all the benefits of virtualization, including efficiency, improved availability, and decreased cost, you have to focus on virtualization of all layers of your infrastructure, including virtualization software, servers, networks, and storage.
Figure 1) Key elements of the joint NetApp, VMware, and Cisco solution.
Thatâ€™s why NetApp joined forces with Cisco and VMware to create a complete solution for virtualizing Microsoft applications. This architecture combines the benefits of VMwareÂ® vSphere 4 virtual infrastructure, Cisco Nexus unified fabric, and NetAppÂ® unified storage hardware and software.
This flexible architecture allows you to virtualize a mixed workload Microsoft application environment to deliver the full benefits of server, network, and storage virtualization. Weâ€™ve tested the performance of Microsoft applications on this solution to make sure there are no bottlenecks and that all performance metrics are well within Microsoftâ€™s published parameters.
This article briefly describes the reasons for virtualizing Microsoft applications and highlights the most important architecture and deployment considerations to help you get started. For full details on the joint solution, you can refer to the NetApp technical report â€œNetApp Solutions Guide: Microsoft Exchange Server, SQL Server, and SharePoint Server Mixed Workload on VMware vSphere 4, NetApp Unified Storage (FC, iSCSI, and NFS), and Cisco Nexus Unified Fabric.â€
Why Virtualize Microsoft Applications?
The reasons for virtualizing Microsoft applications with this solution are in large part the same reasons for virtualizing any application:
Despite these obvious benefits, there are two persistent concerns about virtualizing critical Microsoft applications, but these concerns have been addressed:
Key Design Considerations
One of our key goals when architecting the joint solution was to provide clear design guidelines and at the same time provide enough flexibility so that you can create a solution that is tailored to meet the requirements of your environment This section is structured around some of the key questions you will want to ask yourself as you move your Microsoft applications to a fully virtualized environment.
What storage protocol should I choose? One of the great things about this solutionâ€”like all solutions that include NetApp storageâ€”is that you have the flexibility to choose whatever storage protocol makes sense for your environment. We provide architecture guidelines for all protocols: FC, iSCSI, and NFS. A joint NetApp and VMware performance study demonstrates that all protocols perform within 10% of one another, so there is no reason based on performance to choose one protocol over another.
If you already have Fibre Channel (FC) infrastructure, you can continue to use it. If not, NFS and/or iSCSI can easily meet your storage needs. I advise you to look at each protocol in terms of cost to you (capital and operational), manageability, scalability, and flexibility and choose the one that fits your needs best. (A few more specific guidelines are forthcoming in the section on storage layout.)
What NetApp software will I need? We strongly recommend the use of a core set of four NetApp products:
In addition, you will want to install NetApp SnapDriveÂ® and the application-specific SnapManager product inside guest VMs that hosts an Exchange Mailbox server, SQL Server, or SharePoint database and index server to provide application-consistent backup and granular restores of databases, logs, and so on. (Backup and DR are covered in more detail later.)
What storage layout should I use for different data components? The storage layout you choose will depend in part on the storage protocol you have selected. Rather than trying to cover all possible storage layout and protocol options here, Iâ€™ll simply focus on one of the most flexible IP-based storage layout options. If you are deploying from scratch or your infrastructure will support this approach, the layout shown in Figure 2, combining NFS and iSCSI, is the one I would suggest. For FC or iSCSI layouts, refer to TR-3785. (The approach in all casesâ€”and the logic behind themâ€”is similar in most respects.)
Figure 2) Storage layout using NFS data stores and iSCSI LUNs.
Here are the guidelines at a high level:
This approach is recommended over guest-connected LUNs using the Microsoft iSCSI software initiator because if you want to implement VMware vCenter Site Recovery Manager for disaster recoveryâ€”now or at some point in the futureâ€”the failover/failback process is much simpler with application data on iSCSI RDMs, and youâ€™ll get better support from VMware. You also should put all data stores and RDM LUNs on the same storage system if you are going to use VMware vCenter Site Recovery Manager.
To leverage the benefits associated with SnapDrive and (either iSCSI RDMs as recommended above or guest-connected RDMs using the iSCSI S/W initiator), if you want to use application-specific SnapManager tools for backup of your Exchange, SQL Server, and/or SharePoint data, you must use RDMs (either FC RDMs, iSCSI RDMs as recommended above, or guest-connected LUNs using the Microsoft iSCSI S/W initiator).
If, for some reason, you must configure your environment using VMFS or NFS data stores for application data, your best backup option is SMVI. SMVI is capable of producing consistent backups for all three applications but with some limitations. Currently, because of limitations in the VMware VSS Requestor (VMware uses copy enumeration for shadow copy), SMVI cannot provide automatic transaction log truncation or backup verification. Both have to be done manually. Also, the VMware VSS Requestor does not currently support application consistency for VMs running WindowsÂ® Server 2008. Therefore this solution is limited to scenarios where granular transaction-level restore is not required (for example, point-in-time restore for SQL Servers), manual backup verification can be performed after the backups, and alternate methods of transaction log truncation are possible, for example, with SQL Server databases in simple recovery model (SQL Server provides an automated method for log truncation).
How do I perform application-consistent backup and recovery? The best way to achieve application-consistent backups for Microsoft applications is to install SnapDrive and the appropriate SnapManager product (SnapManager for Microsoft Exchange, SnapManager for Microsoft SQL Server, SnapManager for Microsoft SharePoint Server) inside the guest OS for each VM as needed. These tools deliver the specific capabilities to provide application-consistent backups, automated backup verification, and granular restores. For example, SnapManager for Exchange provides single mailbox recovery capabilities. You can learn more about these SnapManager tools in a previous Tech OnTap article.
Whatâ€™s the best way to implement DR? NetApp SMVI and application-specific SnapManager products can provide replication and disaster recovery for VMs and hosted Microsoft apps. Fully automated disaster recovery can be achieved using VMware vCenter Site Recovery Manager in conjunction with these products. This solution provides complete failover workflow automation for complex environments as described in the Tech OnTap article Using VMware Site Recovery Manager to Simplify DR.
Figure 3) Combining NetApp SnapManager, SnapMirror, and VMware Site Recovery Manager creates a complete data protection solution for backup/recovery and disaster recovery.
How do I implement multipathing? If you want your environment to be robust, you must implement multipathing. For an FC-based architecture, I would recommend the Asymmetric Logical Unit Access (ALUA) protocol and round robin (RR) path selection policy. ALUA allows for the autonegotiation of paths between SCSI target devices and target ports, enabling dynamic reconfiguration. ALUA is enabled by default on ESX hosts. On NetApp storage arrays, ALUA should be enabled on the initiator groups, resulting in a more dynamic, or plug-and-play-like, SAN architecture. The RR path selection policy (PSP) provides path redundancy and bandwidth aggregation. Note that there is no need for device-specific module (DSM) inside the guest VM.
For iSCSI, vSphere introduced support for multiple TCP sessions at the ESX host level for multipathing. You can have two vmkernel ports and use round robin PSP to achieve plug-and-play multipathing. It provides multiple active paths, and no DSM is required inside the guest VM. Also, both the traditional and multiswitch trunking network designs can be used, as described in TR-3749.
For NFS, multipathing can be achieved for both traditional and cross-stack switches. For details, see NetApp TR 3749.
When using Cisco Nexus 10 Gigabit Ethernet (10GbE), only two 10GbE ports are required on the ESX host. Cisco virtual port channeling (vPC) provides redundancy, fault tolerance, and security.
Figure 4) Using Cisco Nexus vPC to connect ESX hosts and NetApp storage.
Are there benefits to using deduplication and thin provisioning? One of the benefits of this configuration is that no matter which protocol you choose, you can take advantage of NetApp storage efficiency capabilities (FlexClone, deduplication, and thin provisioning) to significantly reduce the amount of storage space you need.
Typical virtual environments have many copies of the same OS and application binaries in different VMs, consuming large amounts of space on expensive shared storage. By using NetApp storage efficiency capabilities, you can achieve more than 50% storage savings on primary storage. Figure 5 illustrates the 92% space savings we achieved while validating the joint solution.
Figure 5) Space savings due to combining NetApp storage efficiency techniques.
How do I size my environment? Sizing your environment includes sizing both VMware data stores (containing the guest OS, application binaries, VM page file, and vswap file) and LUNs hosting application databases and logs. NetApp has developed sizing tools to properly size your environment. Your NetApp systems engineer or reseller can help you size your environment based on information gathered from your site:
How do I validate the performance of my virtualized Microsoft application environment? You can use the same set of performance validation tools available from Microsoft and third-party vendors that are used in physical environments. These tools can help you determine if performance is within Microsoft guidelines. To test this joint solution, we used the Microsoft Exchange Load Generation Tool, Microsoft SQLIOSim utility, and AvePoint Sharepoint Test Environment Creator and Usage Simulator to validate performance. Several load tests were conducted for these applications, all running at the same time. Performance validation methods and success criteria for each application are described in TR-3785. Our tests validated that:
As you march toward your goals of a 100% virtualized data center, I hope the information provided in this article is helpful in understanding the process of virtualizing Microsoft applications. This article only covers the high points of the joint solution for Microsoft application virtualization. You can get all the information you need to deploy this solution in the detailed, 50-page solutions guide, which covers all the configuration details based on the careful work done by NetApp, VMware, and Cisco. The guide covers FC, iSCSI, and NFS implementations.
In addition to the various links embedded in this article, other valuable resources include:NetApp and VMware vSphere Storage Best Practices (TR-3749). Best practices to implement VMware with NetApp storage.
Using the Performance Acceleration Module with Exchange 2007 (TR-3767). This technical report describes how PAM can boost the number of Exchange users you can support without adding spindles.
Protecting Exchange Server 2007 with NetApp SnapManager for Exchange (TR-3598)
SnapManager for Virtual Infrastructure Best Practices (TR-3737)
NetApp and VMware vCenter SRM Best Practices (TR-3671)
Got opinions about virtualizing MS apps?
Ask questions, exchange ideas, and share your thoughts online in NetApp Communities.