Tag Archives: Persistent Chat

Step by step Persistent Chat pool deployment: Skype for Business Server 2015 Part II

This post continues the Part I and focus on persistent chat server specific deployment steps. The same process apply to all persistent servers in a pool.

Open PowerShell with administrative privilege, install prerequisite.

Add-WindowsFeature Net-Framework-Core, RSAT-ADDS, Windows-Identity-Foundation, NET-WCF-HTTP-Activation45, Web-Asp-Net45, MSMQ –Source D:\Sources\SxS\

Note: In my setup, Windows Server 2012 R2 media is connected as D:

Install windows update (KB2982006).

Install Silverlight.

Run setup.exe from Skype for Business Server 2015 installation media and follow the steps.

Open Skype for Business Server Deployment Wizard and run “Install Administrative Tools”

Open Skype for Business Server 2015 deployment wizard and run “Install or Update Skype for Business Server System”

Run step 1 “Install Local Configuration Store”

Run step 2 “Setup or Remove Skype for Business Server Components”

Note: Everything is common till step 2 for all persistent chat servers.

Run step 3 “Request, Install or Assign Certificates”

Click on Request.

Fill the required information and click on “Advanced”.

Enter friendly name and select “Mark the certificate’s private key as exportable”.

Add all the persistent chat servers fqdn which are going to be part of the same persistent chat pool.

Export the same certificate for rest of the persistent chat servers.

Import and assign the certificate to rest of the persistent chat servers.

Once you have done with the configuration of all persistent servers within a pool. Start the services by running “Start-CswindowsService” on each server.


Step by step Persistent Chat pool deployment: Skype for Business Server 2015 Part I

This blog post describes step by step deployment process of Persistent Chat pool. Before starting the deployment process, I want to address the basics of persistent chat. Persistent chat (aka group chat) server used to deploy group chat functionality which enables open IM conversations for a set of people belongs to a particular persistent chat group. Persistent Chat can have total 8 servers in a pool, max 4 active and 4 passive at any point of time. Persistent Chat is the only Lync/Skype for Business server pool which can be stretched between two sites. It has two databases mgc for core persistent chat data and mgc comp for persistent chat compliance data.

You should have minimum one Lync/Skype for Business server pool to associate persistent chat server or pool. In my preceding posts, I have covered step by step deployment of Skype for Business server Front End pool.

Please follow the step by step process to deploy persistent chat pool, given deployment has only single site and two sql 2014 servers for persistent chat databases.

Install sql server.

Join all the persistent chat servers to the domain and login with administrative account.

Go to the Front End Server or any Skype for Business management server where Skype for Business server administrative tools are installed.

Open topology builder and download topology from existing deployment.

Right click on Persistent Chat pools under site and select New Persistent Chat Pool…

Define persistent chat pool fqdn and select “This pool has multiple servers”.

Add all the servers which are going to be part of the persistent chat pool.

Set the properties of your pool.

Click on New to define the SQL Server store for Persistent Chat pool.

Enable mirroring and click on new to define mirror server.

Enable SQL server mirroring witness and click on new to define the witness.

Once you are done, click on Next.

Define SQL Server store for Persistent Chat compliance by selecting from drop down menu.

Once done, click on Next.

Define the file store for persistent chat, I am using the same store which used for Front End pool.

Once selected, click on Next.

Select the Front End pool as Next hop for Persistent Chat pool.

Go to the properties of the site and change the machine state “Make Active”.

Now, publish the topology.

Select the data store and click on Advanced..

Select “Use SQL Server instance defaults” and click on OK.

Select the mirror database and click on settings… to define “File share path” to configure mirroring.

Part II of this article will cover the installation steps of persistent chat servers.

Deploy Skype for Business Persistent Chat Server

This blog post continues Deploy Skype for Business Archiving and Monitoring Server and talks about Persistent Chat Server deployment. These steps can be used for collocated persistent chat server deployment with Standard Edition server or can be used for dedicated persistent chat server deployment. In my setup, I have one Standard Edition Server and one sql database server for archiving, monitoring and persistent chat databases.

For persistent chat collocation best practices please see Microsoft Recommendations.

In preceding post we have covered SQL server deployment and best practices. Now, we will continue with the requirement for persistent chat server. If you are installing persistent chat server on standard edition server install messaging queuing (MSMQ) features before attempting to start the persistent chat server installation.

Open Skype for Business Server 2015, Topology Builder.

Go to the Persistent Chat pools under Skype for Business Server 2015 > Right Click > New Persistent Chat Pool…

“Define New Persistent Chat Pool” window will open.

Write the FQDN of Standard Edition Server and select “This pool has one server”.

[Note: If you are deploying persistent chat server on standalone machine then write the FQDN of that server.]

Write the display name of persistent chat pool and click on next if you don’t want to use persistent chat compliance.

If you want to have persistent chat compliance as part of the installation, select “Enable compliance”

If this is not first persistent chat server in Lync/Skype for Business infrastructure then you can deselect “Use this pool as default for all sites”

Don’t deselect this checkbox if this is the first persistent chat server in your infrastructure otherwise you can see below error while publishing topology.

Select SQL Server store, if you want to have new database server for persistent chat deployment click on New…

In my case, I am using the same database server which I had used for archiving and monitoring.

Select the database server for compliance store.

Select the file store.

Select the next hop server, in my case it is Standard Edition Server.

Now once you are done with above process, publish the topology.

Select database, click on Next and finish the process.

Now, open Skype for Business Server 2015, Deployment Wizard and Click on “Install or Update Skype for Business Server System”

Run step 2 “Setup or Remove Skype for Business Server Components” and follow the process.




Now, you can open services console and start “Skype for Business Server Persistent Chat” & “Skype for Business Server Persistent Chat Compliance” services.


High Availability in Lync 2013

Availability is the concern for any enterprise application. In Lync 2013 Microsoft took a step ahead and delivered better availability options. Lync 2013 is a next level enterprise communication and voice based solution which based on different Lync Server roles. In Lync 2013 Microsoft did a tremendous job to consolidate many Lync roles and reduced the number of Lync roles and their complexity. To know more about Lync roles click here

Lync Server Standard Edition and HA*

This is big question for all to know about HA option in Lync Server 2013 Standard Edition. Lync Server 2013 supports up to 5000 users and can be deployed in a single box but to achieve more availability (*not exactly High Availability) you can deploy Lync 2013 SE in paired pool. Paired pools means deploy two Lync SE Server and paired them in a pool. Failover In a paired pool is manual activity (can be automated by PowerShell scripting) and users will get limited functionality at the time of failover. HA can’t be achieved for Persistent Chat in Standard Edition.

Lync Server Enterprise Edition and HA

Lync Server Front End (Audio/Video, Archiving & Monitoring is collocated): High availability can be achieved by deploying Lync 2013 Enterprise Edition Server pool. In one Lync Server 2013 EE pool you can accommodate 80,000 users by deploying maximum of 12 servers. Lync 2013 Enterprise Edition is designed by using brick model which works on Windows Fabric to provide HA. In Lync 2013 EE need minimum three FE servers (MS recommendation) for one pool. For availability, Lync Server pool needs N/2, N/2+1 server in a pool to work.

Microsoft recommends if you have large conferences for more than 250 users, a separate A/V (FE) pool can be deployed.

Lync Server Back End: Lync Server uses SQL server for its backend databases. You need databases for Lync Server backend, archiving/monitoring and persistent chat which can be collocated in one SQL server or deployed on separate (MS recommended) SQL Server instances. Lync Server 2013 supports SQL mirror for its databases. It does not support SQL failover clustering (not recommended) or SQL always on feature. To configure automatic failover in SQL server mirror, you need SQL witness server which can be SQL Express edition or SQL Server instance.

Lync Mediation Server: In Lync 2013, Mediation server role can be collocated with FE server role or can be deployed separately as a pool.

Lync Persistent Chat: In Lync 2013, Persistent Chat is a new server role which replace Lync server 2010 Group Chat server component which was not part of the Lync 2010 server roles. You can deploy Lync Server Persistent Chat as a pool to achieve HA and can have maximum 8 servers in a pool (4 active and 4 passive) for 80,000 concurrent users and total 1, 50,000 users.

Lync Edge Server: Lync Edge server role can be deployed as a pool in a perimeter network to provide HA for external (outside your organization firewall) users.

Director: In Lync 2013, Director is an optional role and can be deployed in the same way as Lync Server 2010 Director pool.

Reverse proxy: Reverse Proxy is not part of any Lync Server role but required for external users. You can use Microsoft Reverse proxy solutions such TMG 2010 / UAG 2010 / IIS ARR or can have any third party solution.

What’s New in Lync Server 2013…?

Microsoft is playing a major role in Unified Communication market. Lync Server 2013 is a 6th release in last one decade. Enterprise voice was started with OCS 2007 R2 and Lync server 2010 became a major release in Enterprise voice space. Lync 2013 is a major release after Lync 2010 and now cumulative updates are also available to download.

In Lync 2013, Microsoft came up with few tremendous features in terms of voice which changed the overall Lync deployment as well as fit into those countries where government has regulation for VOIP. Now, you are thinking which that tremendous feature is; I am talking about Location based routing (LBR) which can provide room for Lync implementation with Enterprise voice in those countries where government has regulated or they have some specific concerns with regards to VOIP roll out.

I will start with basic features of Lync Server 2013 which differentiate it from previous releases. To start with Lync Server 2013 server roles, I am providing table with comparison which can help you to understand better.

Lync Server 2013 Lync Server 2010
Front End & Back End (A/V is collocated) Front End & Back End
A/V Conferencing (Can be collocated with Front End)
Archiving (Can be deployed separately) Archiving (Can be collocated with Front End)
Monitoring (Can be deployed separately) Monitoring (Can be collocated with Front End)
Mediation (Can be collocated with Front End) Mediation (Can be collocated with Front End)
Director (Optional & Can’t be collocated with Front End) Director (Can’t be collocated with Front End)
Edge (Can’t be collocated with Front End) Edge (Can’t be collocated with Front End)
Persistent Chat (Can’t be collocated with Front End) Group Chat (Can’t be collocated with any Lync Server role)
Standard Edition Server (All above roles combined) Standard Edition Server (All above roles combined except group chat)


To get a better understanding, have a look into the images:

For more updates, be in touch with me at www.insidemstech.com