In August 2013, Microsoft expanded its support for high-availability solutions in Lync Server 2013. Microsoft now supports SQL Server clustering solutions for Back End Servers. Previously, the only supported solution for Lync Server 2013 Back End Servers was SQL Server mirroring.

If you're new to Lync and hearing about this change for the first time, you might be wondering what all the hoopla is about. But if you've been involved with Lync Server 2013 since its initial release, I hope you're delighted at this change.

What the Hoopla Is All About

Before the change, Microsoft supported only mirroring in SQL Server 2012 and SQL Server 2008 R2 databases in Lync Server 2013 environments. As a result, organizations that already invested a lot of time and financial resources in a SQL Server clustering solution for their Lync Server 2010 or Office Communications Server (OCS) 2007 R2 environment were up in arms. If those organizations wanted to upgrade to Lync Server 2013 and have their back-end high-availability solutions supported, they had to do away with their clustering solutions and implement a mirroring approach. The "subtle" way (and I say "subtle" sarcastically) in which Microsoft delivered the message that Lync Server 2013 didn't support SQL Server clustering was basically telling organizations that they had two options if they wanted to upgrade:

  1. Move to SQL Server mirroring if they want to use a supported high-availability solution.
  2. Stay with their SQL Server clustering solution if they want to use an unsupported high-availability solution.

What to Consider Now That Mirroring and Clustering Are Supported

Fortunately, organizations using Lync Server 2013 Back End Servers can now use either SQL Server mirroring or clustering as a supported solution. Before I go any further, I want to point out that this article isn't about the pros and cons of each approach in a Lync Server 2013 environment. Each approach has its benefits. Instead, I'll be discussing what you need to consider after you've decided which approach to use.Lync Server 2013 High-Availability Solution Using SQL Server Mirroring

Lync Server 2013 High-Availability Solution Using SQL Server ClusteringFigure 1 and Figure 2 illustrate two high-availability topologies that are supported for the back-end SQL Server servers in a Lync Server 2013 pool. In Figure 1, the pool has a two-node active/passive SQL Server cluster. In Figure 2, the pool uses database mirroring. Keep in mind that, in a truly redundant Lync Server 2013 environment, these solutions for the Back End Servers are only part of the high-availability infrastructure.

Here are some items to consider when deploying a SQL Server mirroring or clustering solution in a Lync Server 2013 environment:

  • Both mirroring and clustering are site-specific resilient solutions and not data-center redundant solutions. The only metropolitan (i.e., stretched) solution supported in Lync Server 2013 is a stretched Persistent Chat Server pool. (For more information about this solution, see Microsoft TechNet's Using a Stretched Persistent Chat Server Pool for Disaster Recovery web page.)
  • Mirroring is a database-level solution. It can increase the availability of a Lync database by offering the ability for automatic failover (with a witness server deployed) in the event a node in the mirror is unavailable.
  • Clustering is a server-level solution. With a clustering solution, if a node fails, all resources on that node are shifted to another available node.
  • Both mirroring and clustering solutions can be configured for automatic failover. Manual failover can be set up as well if the administrators want more control of when and how the failover takes place.
  • Both mirroring and clustering solutions require recovery models in the event of a failover. Both solutions can also leverage the Full option. (For more information about this option, see TechNet's Selecting a Recovery Model web page.)
  • Depending on how many pools an organization has, both mirroring and clustering solutions can get expensive because there are a certain number of servers needed for each solution per pool. Mirroring requires at least three servers (both nodes and a witness server). Clustering requires at least two servers and is supported for up to 16 nodes in an active/passive state.

Microsoft Listened to Customers' Feedback

Just when you think Microsoft isn't listening to customers' feedback and concerns, it sometimes pleasantly surprises you with good news. This is one of those cases where I'm glad to say that Microsoft was listening. As a Lync consultant and trainer, I often had to deliver the bad news about Lync Server 2013 not supporting clustering for back-end SQL Server servers. Now I can gladly say that mirroring and clustering are supported options. For more information about these options, see TechNet's Database Software Support web page.