1. Persistent Chat Overview
Persistent Chat is a Lync server role that
enables administrators and/or users to create chat rooms containing
persistent conversations based on specific topics and categories. The
persistent nature of the messages enables Lync users to view ongoing
conversations at their leisure, and also search for information within
the chat rooms. The benefits of Persistent Chat become evident when
there is a need to share information with multiple people on a specific
topic, and that data needs to be available at a later time and be
easily searchable. Although this can be accomplished to some degree
using other forms of communication, none of these other forms is as
effective as Persistent Chat for these specific requirements. Some of
the primary uses for Persistent Chat are project communications, group
discussions, meetings, and knowledge bases.
Note
Persistent Chat was available as a
third-party trusted application with previous versions of Lync, and was
known as Group Chat. With Lync Server 2013, Persistent Chat is now
being included as part of the Lync topology along with other Lync
server roles for the first time. For this reason, along with other
important architectural changes, Persistent Chat will likely find more
widespread adoption than ever before with Lync Server 2013.
Like several other Lync server
roles, Persistent Chat consists of a front-end component as well as a
back-end SQL database component. As further detailed in later text,
these components can in some cases be collocated with other Lync 2013
server roles depending on the Lync topology and the requirements for
Persistent Chat.
2. Persistent Chat Deployment
Since Persistent Chat is now included as part
of the Lync topology for the first time, the deployment process is very
streamlined compared to that of previous versions. This section
provides the details on installation of the Persistent Chat server role
into an existing Lync 2013 environment.
Topology Options and Scaling
Several topology options are available with
Persistent Chat, and these are dependent on the overall Lync
deployment. Similar to the Lync Front End Services, an instance of
Persistent Chat is referred to as a pool, even if just a single server
is used. As with other Lync server roles, both front-end and back-end
components are included in a Persistent Chat pool. The front-end
components include the Persistent Chat service and the Compliance
service. Back-end databases for Persistent Chat include the Persistent
Chat Store and the Persistent Chat Compliance Store.
With a Standard Edition deployment, the
Persistent Chat Server role can be collocated with the Front End
Server. The single-server deployment can support up to 20,000 users.
However, since all Lync services are hosted using a single system with
this topology, Persistent Chat performance will be entirely dependent
on the resource usage requirements for all Lync services. With an
Enterprise Edition deployment, Persistent Chat cannot be collocated
with the Lync Front End Services, and therefore dedicated systems are
required. However, the Persistent Chat databases can be collocated on
the same SQL Server, or even the same SQL instance, as the Lync Back
End databases. Hosting the Persistent Chat Stores on a dedicated SQL
Server is of course also an option, and is recommended particularly for
larger Lync implementations to ensure the best performance.
Note
The requirement to install Persistent Chat on
dedicated systems with an Enterprise Edition deployment is better
understood when considering the differences in how resiliency is
handled between a Persistent Chat pool and a Front End pool. When
Enterprise Edition Front End pools are configured for Front End Pool
Pairing, the Lync Server Backup Service replicates the databases
between the pools for high-availability. In contrast, to achieve high-availability
with Persistent Chat a single pool is stretched across two locations,
and SQL log shipping is used to replicate database information between
SQL systems at the two locations.
Persistent Chat also includes support for
multiple-server topologies, with several high-availability and disaster
recovery options. Up to eight Persistent Chat Servers can be installed
into a single pool, and these servers can be installed across multiple
locations for site resiliency. Up to four Persistent Chat Servers in a
pool can be active at any time, and each active server can support up
to 20,000 concurrent connected endpoints, for a total of 80,000 users.
The load is automatically distributed evenly across the active servers,
and in the event of a server failure, users are automatically
transferred to a remaining active server. When multiple Persistent Chat
Servers are used, the file stores and databases are shared among the
servers, and the servers freely communicate with each other as needed
to form a cohesive Persistent Chat system. The end result is that all
chat history is available to any of the servers in the pool, and users
connected to different Persistent Chat Servers can freely chat with
each other.
Tip
It is not possible to add additional servers
to a Persistent Chat pool if the first Persistent Chat Server is
collocated with a Standard Edition Front End Server. If there is any
question as to whether multiple servers will eventually be needed for
Persistent Chat, it is recommended to install the first server as a
standalone instance to allow the pool to grow accordingly.
Intra-site high-availability can be
achieved with the installation of multiple SQL Servers in a datacenter
and using SQL mirroring to replicate the data between them. For
cross-site disaster recovery, at least one set of Persistent Chat Front
End Servers and dedicated Back End database servers must be installed
at each location. SQL log shipping is then used to replicate Persistent
Chat database information between the two locations.
Prerequisites
The infrastructure requirements for a
Persistent Chat pool are very similar to the requirements for a Front
End pool. For example, the Active Directory requirements are identical
with one small exception: At least one AD global catalog server must
exist in the forest root domain for Persistent Chat to be installed in
that forest. Also similar to the Front End pool, a file store must be
defined for use with Persistent Chat, which serves as a repository for
files that are uploaded using the chat rooms. With a single-server
deployment, the file store can be defined as a local file path on the
Persistent Chat Server. For multiple server deployments, a UNC path
location must be specified. If desired, the same UNC path location can
be used as a file store for both the Front End pool and the Persistent
Chat pool.
The system requirements for a Persistent Chat Server are summarized here:
• Windows Server 2008 R2 with SP1 and
Windows Server 2012 are supported operating system platforms (Standard,
Enterprise, or Datacenter Editions).
• .NET Framework 4.5 (included with Windows Server 2012).
• Windows PowerShell 3.0 (included with Windows Server 2012).
• Windows Identity Foundation (included with Windows Server 2012).
• The Message Queuing feature
(including Directory Service Integration) included with Windows Server
is required if the Persistent Chat Compliance service is enabled.
• Microsoft Visual C++ 11 x64
redistributable (automatically installed from the Lync media if not
present when starting the Lync installation).
• One standard SSL certificate is
required, from either a third party or an internal certificate
authority (no subject alternative names are required).
Hardware guidelines for a Persistent Chat Server are the same as for other Lync Server roles and are summarized here:
• Quad-core 64-bit dual processor (2.0GHz or higher), or dual-core four-way processor (2.0GHz or higher)
• 16GB RAM
• Two 10,000 RPM hard disk drives with at least 72GB of free space, or RAID 1 or RAID 10 volume on a storage area network
• One network adapter, 1Gbps or higher (NIC teaming with a single MAC and single IP address are supported)
Note
Microsoft’s listed hardware guidelines are
based on a user pool of 80,000 users, and can therefore be scaled back
appropriately as needed.
For the Persistent Chat database server, SQL
Server 2008 R2 and SQL Server 2012 are the only supported database
platforms. The hardware guidelines for a Persistent Chat database
server are the same as for other Lync database servers, and are
summarized here:
• Quad-core 64-bit dual processor (2.0GHz or higher) or dual-core four-way processor (2.0GHz or higher)
• 32GB RAM
• Eight or more 10,000 RPM hard disk
drives with at least 72GB of free space, or RAID 1 or RAID 10 storage
area network with four dedicated LUNs
• One network adapter, 1Gbps or higher (NIC teaming with a single MAC and single IP address are supported)