Now that Lync Server 2013 Release Preview is here, I thought it would be nice to create an article on how to deploy a Persistent Chat (formerly Group Chat) Server while connected to a SQL 2012 Backend Server.
This article series is to guide you through the entire Lync Server 2013 Persistent Chat deployment process from scratch. In Part 1, we’ll take a look at preparing the environment for the Persistent Chat Pool. In Part 2, we’ll take a look at the installation process in the Lync 2013 Persistent Chat Pool. We’ll then finish up the article series with Part 3 by taking a look at the client capabilities utilizing the Persistent Chat features.
Guest Virtual Machines
There will be four virtual machines being introduced into the lab; one Windows 2008 R2 Global Catalog with Certificate Services, one Front End Enterprise Edition Server, one SQL Server 2012 BackEnd, and one Windows 7 x64 Client.
- You have a domain that contains at least one Server 2003 SP2 Domain Controller (DC)
- You have configured the IP settings accordingly for all servers to be on the same subnet or be on subnets that are routable to eachother.
- You have at least SQL 2008 R2 server installed if doing an Enterprise Edition deployment. We will be using SQL 2012 installed on Server 2008 R2 SP1.
- You have a copy of Lync Server 2013 Client Release Preview.
Global Catalog Cserver – B-DC1
Lync Server 2013 Enterprise Edition Release Preview – B-L15FE1.15lab.net
Persistent Chat – B-L15PG1.15lab.net
SQL Server 2012 – B-S15BE1.15lab.net
Windows 7 Client – B-Client1.15lab.net
General Information on Topology Support
Persistent Chat installation is very different than OCS 2007 R1 or R2 installation. You can see my guide on deploying Group Chat with OCS 2007 R2 here. The first thing we will see is that there is now a Persistent Chat section in Lync 2013 Topology Builder. In Lync Server 2010, it was not supported to collocate Group Chat Databases on the same SQL Server (not just instance, but server) as other Lync 2010 databases. This is now supported in Lync Server 2013.
If using Lync Server 2013 Standard Edition Front End, it is supported to collocate the Persistent Chat role on the Lync Server 2013 Standard Edition Front End and you can also deploy the Persistent Chat role on its own dedicated box. The Persistent Chat Database (including Compliance Database) is supported for installation on the Lync 2013 SQL Express instance utilized by a Lync 2013 Standard Edition Front End Server.
If using Lync Server 2013 Enterprise Edition, it is not supported to collocate the Persistent Chat role on the Lync Server 2013 Enterprise Edition Front End. The reason for this is the the way Lync 2010 Pools (which include CMS, Monitoring, and Archiving) DR work is different than the way Persistent Chat Pools work. With Enterprise Edition Pools, DRs operate by pairing Enterprise Pools with another Enterprise Pool in a DR Site. A service called the Backup Service is installed when you pair pools that replicate Enterprise Edition Pool databases (along with the CMS, Monitoring, and Archiving Databases) to the DR Enterprise Edition Pool.
With a Persistent Chat Pool, a single Persistent Chat Pool is stretched across two locations. This Pool supports up to 8 Persistent Chat Pool Servers where four can be active at any given time. Persistent Chat Pools will use SQL Mirroring to replicate their databases from one Site to the other Site. However, unlike the Pool Pairing which uses the Backup Service, Persistent Chat Servers use a file share (these file shared are not part of the Lync Server 2013 Topology and you can read more about how these file shares are configured here and here) to replicate SQL database data from the SQL Mirror Instance in the primary datacenter to the SQL Mirror Instance in the secondary/DR datacenter.
In the below example, if there is good connectivity between your sites (low latency and high bandwidth), you will have one Group Chat Pool with up to 4 Group Chat Servers active at any given time and either site can be hosting Active servers at the same time.
In the below example, if there is not good connectivity between your sites (high latency and low bandwidth), you will have one Group Chat Pool with up to 4 Group Chat Servers active at any given time and you will only want one site hosting Active servers at any given time.
Hopefully that gives you some insight as to why collocation for Persistent Chat role is supported on Standard Edition Front End Servers and why it’s not when using Enterprise Edition Front End Servers.
Because we need a dedicated Persistent Chat Server, we need to install prerequisites which depend on the operating system (Windows Server 2008 R2 does not have these prerequisites whereas Windows Server 2012 do).
- Software Installation
Installing Persistent Chat
When taking a look at the Lync Server 2013 Topology Builder, we can see there’s a new Persistent Chat Pool section.
Go ahead and right-click on Persistent Chat pools and create a new Persistent Chat Pool.
I decided to choose to create a Highly Available Persistent Chat Pool instead of a single server even though for now, I’m only going to deploy a single Persistent Chat Server.
Go ahead and add the server FQDN of your Persistent Chat Server.
Define the name of the Persistent Chat Pool. We won’t be enabling compliance in this article but I will be writing a new article in the future when Lync Server 2013 RTMs that shows a Persistent Group Chat Pol with compliance and most likely with DR. We only have one Central Site currently in my Lync Server 2013 Lab deployment called Chicago.
As you can see, we can utilize the same SQL Instance that our Enterprise Front End Pool uses. In the previous screenshot, if we were doing Persistent Chat DR, we would have chosen the “Use backup SQL Server stores to enable disaster recovery” option. If we chose that option, the next screen after “Define the SQL Store” would ask us to define the SQL Stores in the secondary/DR datacenter. But, we’re not choosing that option at this time.
We now define our File Store. This can be the same file store used by the Enterprise Front End Pool.
Choose the Front End Pool that Persistent Chat will utilize. Previously, we chose to use the Central Site, Chicago. We would now be able to select any pools that are deployed within the Chicago Site.
After finishing up the above, we can now go ahead and publish the Lync Topology.
One of the previous pains with deploying Group Chat in OCS and Lync Server 2010 is that there were manual steps to pre-create databases and manual permission assignment. It felt a bit alien in comparison to how the rest of the OCS and Lync Server 2010 roles were deployed. Now, in Lync Server 2013, Persistent Chat no longer requires this manual work and is now has a very familiar and native installation experience.
After publishing the topology, we can see everything went successfully and the databases were created.
Thanks for reading Part 1 where we took a look at preparing the environment for the Persistent Chat Pool. In Part 2, we’ll take a look at the installation process in the Lync 2013 Persistent Chat Pool. We’ll then finish up the article series with Part 3 by taking a look at the client capabilities utilizing the Persistent Chat features.