Virtualizing SharePoint Server 2007 Series - High availability and disaster recovery, deployment best practices, common mistakes and summary

An internal memo was sent to all employees by Steve Ballmer recently extolling the fact that we ALL need to take personal responsibility for our impact on the world and its environment and that we all need to invest in environmental sustainability. Enterprise virtualization technologies have matured and come along way. They now provide similar levels of performance to physical environments, at a fraction of the cost.

Implementing SharePoint farms using virtualization technologies is a win-win-win situation for you, your organization and the world. You win by taking personal responsibility and architecting environmentally friendly SharePoint solutions; your organization saves by reduced power consumption, cooling and data centre costs of virtualized SharePoint environments; and finally the world benefits by the reduced carbon footprint of your organization.

This final topic discusses:

  • Recommendations for high availability and disaster recovery in the virtualized SharePoint environment
  • Deployment best practices for a virtual SharePoint environment
  • Common mistakes that customers make when virtualizing SharePoint
  • Conclusion and summary

Recommendations for high availability and disaster recovery in the virtualized SharePoint environment

Plan for availability: Microsoft TechNet provides detailed guidance on ensuring the availability of physical SharePoint farm. This has been documented extensively here. This guidance also applies to virtualized environments. Additionally consider host machine clustering and management tools as discussed below.

Virtual Machine Clustering:  Additionally Windows 2008 provides a feature called “Failover clustering” that enables you to cluster host servers together, in an active passive mode. This allows virtual machines on the active host to failover to the passive host when the active host fails. This adds an entire new dimension to availability in virtualized scenarios.

System Center Virtual Machine Manager 2008 : System Centre Virtual Machine Manager 2008 provides management features to add easily add capacity to existing SharePoint farm. It has some fantastic P2V features that enable you to turn your physical farm into a virtual farm. This feature can be very useful when you need to setup a disaster recovery farm, or provisioning QA or test farms. 

Deployment best practices for a virtual SharePoint environment

SQL Alias Flexibility: When provisioning a new SharePoint farm, it is highly recommended to use an alias to connect to SQL server, as this provides for greater flexibility to move the SharePoint databases to a new server.

Crawling Recommendation: It can be advantageous to have the index server be the dedicated crawl server for a farm, as it eliminates the extra hop required to crawl content in a traditional scenario when other web servers are used. To do this, the web role must be added to the server and the farm must be configured to use a dedicated server.

Query Propagation: If the Query role resides on the same server as the Index Role, there cannot be any additional Query servers in the farm as SharePoint will not propagate the Index. For virtualized environments, this can mean fewer disk requirements for the Index corpus.

Network, network, network: Ensure your physical network provides enough capacity between the server roles in your SharePoint farm and dedicate multiple virtual network adapters to each machine, each focussed on certain types of traffic. For example, internal traffic versus traffic to users. Setup load balancing between your web frond ends to balance traffic over each of your virtual web front ends.

Database maintenance: Database maintenance is even more important in a virtual environment than a physical environment. Bill Baer authored a whitepaper (here) on measuring and reducing fragmentation of your content databases. Optimizing the speed of your databases will reduce time to fetch and store data resulting in faster response times for users of your portal.

Common mistakes that customers make when virtualizing SharePoint

Understand the impact of your virtualization vendor feature set! : Virtualization technologies provide a ton of useful features, such as dynamically moving virtual machines of your SharePoint farm to another physical host. A common problem during such a move, I have experienced, in virtualized environments is the corruption of index propagation to the query servers when the index or query servers have been moved. Therefore be careful when pushing virtual servers to different host machines. Test these features before using them in your production environment.

Don’t let governance slip in your virtualized SharePoint environment: Apply the same rigour and change control processes to your virtual farm as you would a physical farm. Review and ensure change control processes are in place and followed to protect your virtual SharePoint farm.

Restoring snapshots: Microsoft does not support snapshotting of individual SharePoint servers as state stored in a snapshot may be incompatible with the rest of the farm. (Think of effect of snapshotted timer jobs running on each SharePoint server.)

Beware of over subscribing host servers: It is easy to underestimate how load will increase over time on each of your guest machines and cumulatively on each of your host servers. This problem is often caused by squeezing virtual servers in temporarily to meet short term business objectives when no budget is available to purchase hardware. This is dangerous, not only for SharePoint, but for all the virtual servers running in your farm.

Host is a single point of failure: A host is a single point of failure. If your host server dies, all virtual machines will fail as well. To overcome this, first load balance your vm’s across hosts, (Place virtual web  query servers on each host.) Additionally use built in Windows virtual machine clustering features to ensure failover of virtual machines to the passive host server.

Conclusion and summary

This series has demonstrated that Microsoft fully supports the virtualization of SharePoint on many virtualization technologies provided they are certified using SVVP program. We described why and how the latest virtualization technologies perform so well, the various layers of a virtual SharePoint farm, and a detailed plan to virtualize your SharePoint farm. We delved into each role of the SharePoint farm and provided virtualization recommendations for each of these roles. We showed that it is easy to monitor and manage a virtualized environment using advanced tools to look after your virtualized environment, and that it is easy to install and configure and finally that it is easy to ensure that SharePoint is highly available using failover clustering technologies.

So now that we have shown that the tools and technologies exist and have matured, what choice will you make? Will it be a physical or virtual SharePoint farm?  If you have any questions or need assistance, please feel free to contact me. My contact details are at the bottom of the article. Goodluck and thanks for reading the series!

This article was authored by:

Brian Wilson
Senior Consultant
Microsoft Consulting Services UK

Click here for my bio page