Design Guide for Cisco Unity Connection Release 8.x
Cisco Unity Connection 8.x Clusters (Active/Active High Availability)
Downloads: This chapterpdf (PDF - 147.0KB) The complete bookPDF (PDF - 2.35MB) | Feedback

Cisco Unity Connection 8.x Clusters (Active/Active High Availability)

Table Of Contents

Cisco Unity Connection 8.x Clusters (Active/Active High Availability)

Cisco Unity Connection Cluster Overview

Publisher Server

Subscriber Server

Requirements for Cisco Unity Connection Cisco Unity Connection Cluster

Support for Installing the Cisco Unity Connection Servers in Separate Buildings or Sites

Balancing the Load of Calls That the Cisco Unity Connection Servers Handle

Load Balancing Clients in a Cisco Unity Connection Cluster

Configuration for Dial-out Voice Messaging Ports

For More Information


Cisco Unity Connection 8.x Clusters (Active/Active High Availability)


Cisco Unity Connection clusters (active/active high availability) and disaster recovery are two key customer requirements for preserving voice messaging services in the event of a system outage or disaster. This chapter discusses the Connection cluster feature in Cisco Unity Connection Release 8.x. For information on disaster recovery, see the "Disaster Recovery in Cisco Unity Connection 8.x" chapter.


Note The Connection cluster feature is not supported for use with Cisco Unified Communications Manager Business Edition.


See the following sections:

Cisco Unity Connection Cluster Overview

Publisher Server

Subscriber Server

Requirements for Cisco Unity Connection Cisco Unity Connection Cluster

Support for Installing the Cisco Unity Connection Servers in Separate Buildings or Sites

Balancing the Load of Calls That the Cisco Unity Connection Servers Handle

Load Balancing Clients in a Cisco Unity Connection Cluster

Configuration for Dial-out Voice Messaging Ports

For More Information

Cisco Unity Connection Cluster Overview

Cisco Unity Connection supports a Connection cluster configuration of two Connection servers to provide high availability and redundancy. The Connection servers handle calls, HTTP, and IMAP requests. If only one server in the Connection cluster is functioning, the remaining server preserves the system functionality by handling all calls, HTTP requests, and IMAP requests for the Connection cluster. Note that each server in the Connection cluster must have enough voice messaging ports to handle all calls for the Connection cluster.

The first server installed is the publisher server for the Connection cluster; the second server installed is the subscriber server. These terms are used to define the database relationship during installation. The separation of roles is consistent with the Cisco Unified Communications Manager cluster schema in which there is always one publisher server and multiple subscriber servers. (Note that Connection runs on the Cisco Unified CM platform). Unlike a Cisco Unified CM cluster, however, Connection supports only two Connection servers in the Connection cluster. For a network diagram of a Connection cluster integrated with Cisco Unified CM, see Figure 11-1.

Figure 11-1 Cisco Unity Connection Cluster Integrated with Cisco Unified Communications Manager

A Connection cluster server pair supports up to 20,000 users. In this configuration, both servers can support up to 250 voice messaging ports each for a cumulative total of 500 voice messaging ports when both servers are active. If only one server is active, the port capacity is lowered to a maximum of 250 ports.

For more information on capacity planning for a Connection cluster, see the Cisco Unity Connection 8.x Supported Platforms List at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/supported_platforms/8xcucspl.html.


Note A Connection cluster server pair supports up to 20,000 IMAP Idle clients (250 sessions). If the IMAP clients that connect to the Connection server do not support IMAP Idle, each of these clients must be counted as 4 IMAP Idle clients. For example, deploying 4 non-IMAP Idle clients is the same as deploying 16 IMAP Idle clients. See the "IMAP Clients Used to Access Connection Voice Messages" section for a discussion of IMAP Idle and non-IMAP Idle clients.


Publisher Server

The publisher server is required in a Connection cluster, and there can be only one publisher server in a Connection cluster server pair. The publisher server is the first server to be installed, and it provides the database and message store services to the subscriber server in the Connection cluster server pair.

For information on installing a Connection cluster server pair, see the "Overview of Mandatory Tasks for Installing a Cisco Unity Connection 8.x System" chapter of the Installation Guide for Cisco Unity Connection Release 8.x, at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/installation/guide/8xcucigx.html.

As a best practice, we recommend that you direct the majority of client traffic (for example, IMAP and the Cisco Personal Communications Assistant) and administration traffic (for example, Cisco Unity Connection Administration, the Bulk Administration Tool, and backup operations) to the publisher server in a Connection cluster server pair. However, we recommend that the majority of call traffic (for example, SCCP, SIP, or PIMG/TIMG) be directed to the subscriber server in a Connection cluster server pair rather than to the publisher server. Additional call traffic can be directed to the publisher server, if needed, but the call traffic should be directed to the subscriber server first.

Subscriber Server

When installing the subscriber server in a Connection cluster server pair, you provide the IP address or hostname of the publisher server. After the software is installed, the subscriber server subscribes to the publisher server to obtain a copy of the database and message store. There can be only one subscriber server in a Connection cluster server pair.

As a best practice, we recommend that you direct the majority of call traffic (for example, SCCP, SIP, or PIMG/TIMG) to the subscriber server in a Connection cluster server pair. Additional call traffic can be directed to the publisher server, if needed, but the call traffic should be directed to the subscriber server first. Most of the client traffic (for example, IMAP and the Cisco Personal Communications Assistant) and administration traffic (for example, Cisco Unity Connection Administration, the Bulk Administration Tool, and backup operations) should be directed to the publisher server in a Connection cluster server pair. Additional client and administration traffic can be directed to the subscriber server, if needed, but the client and administration traffic should be directed to the publisher server first.

Requirements for Cisco Unity Connection Cisco Unity Connection Cluster

For current Cisco Unity Connection cluster requirements, see the System Requirements for Cisco Unity Connection Release 8.x at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/requirements/8xcucsysreqs.html.

Support for Installing the Cisco Unity Connection Servers in Separate Buildings or Sites

Cisco Unity Connection supports the Connection cluster configuration in which the Connection servers are installed in separate buildings or sites. This configuration requires a maximum round-trip latency of no more than 150 ms, and a minimum amount of guaranteed bandwidth with no steady-state congestion that depends on the number of voice messaging ports on each server in the cluster, as follows:

For 50 voice messaging ports on each server—7 Mbps

For 100 voice messaging ports on each server—14 Mbps

For 150 voice messaging ports on each server—21 Mbps

For 200 voice messaging ports on each server—28 Mbps

For 250 voice messaging ports on each server—35 Mbps

The minimum amount of required bandwith is linear, so you can calculate the required bandwidth for other port quantities based on the above numbers. For example, for 60 voice messaging ports, 8.4 Mbps is required. (7 / 50 x 60 = 8.4 Mbps)


Note The bandwidth numbers above are intended as guidelines to ensure proper operation of an active-active cluster with respect to synchronization traffic between the two servers. Additional conditions such as network congestion, CPU utilization, and message size may contribute to lower throughput than expected. Call-control and call-quality requirements are in addition to the guidelines above and should be calculated by using the bandwidth recommendations in the applicable Cisco Unified Communications SRND at http://www.cisco.com/en/US/solutions/ns340/ns414/ns742/ns818/landing_uc_mgr.html.


If you plan to utilize a traffic prioritization scheme between the servers in the cluster, you can use the CLI command utils cuc networking dscp on to mark intracluster data and message traffic with a differentiated services code point (DSCP) value of 18. By default, traffic is not marked. The CLI command should be entered on both servers in the cluster. For more information on CLI commands, see the applicable Command Line Interface Reference Guide for Cisco Unified Communications Solutions at http://www.cisco.com/en/US/products/ps6509/prod_maintenance_guides_list.html.

For additional cluster requirements, see the System Requirements for Cisco Unity Connection Release 8.x at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/requirements/8xcucsysreqs.html.

Balancing the Load of Calls That the Cisco Unity Connection Servers Handle

Although it is possible to balance the load of calls that the Cisco Unity Connection servers handle in a Connection cluster, we recommend that most call traffic be directed to the subscriber server. This configuration follows the Cisco Unified Communications Manager cluster model of allowing call traffic only on subscriber servers.

Cisco Unified Communications Manager by Skinny Client Control Protocol (SCCP)

When integrating Connection with Cisco Unified CM by Skinny Client Control Protocol (SCCP), it is possible to balance the voice traffic that the Cisco Unity Connection server pair handles by using one of the following methods:

(Recommended) In Cisco Unified Communications Manager Administration (on the Call Routing > Route/Hunt > Line Group page), use Top Down as the distribution algorithm for the line group that contains directory numbers of ports that will answer calls on both servers in the Connection cluster.

In Connection Administration, all the ports that share the same device name prefix will be in a one port group. (If there are ports that share a different device name prefix, they must be in a separate port group.) Beginning with the answering port that has the lowest number in its display name, assign half the answering ports to the subscriber server so that the subscriber server will answer most incoming calls. Assign the remaining answering ports to the publisher server. Then beginning with the dial-out port that has the lowest number in its display name, assign half the dial-out ports to the primary server so that the primary server will handle MWIs and notification calls. Assign the remaining dial-out ports to the subscriber server.

In Cisco Unified Communications Manager Administration (on the Call Routing > Route/Hunt > Line Group page), use Longest Idle Time as the distribution algorithm for the line group that contains directory numbers of ports that will answer calls on both servers in the Connection cluster.

In Connection Administration, all the ports will be in a single port group. The first half of the answering ports and dial-out ports will be assigned to the publisher server and the remaining ports will be assigned to the subscriber server in the Connection cluster.


Note You can use the following CLI command to configure the "Wait for Blind Transfer Ringing Timer" counter.

"run cuc dbquery unitydirdb execute procedure csp_ConfigurationModify(pFullName='System.Telephony.WaitForBlindTransferLongTimeoutMs',pvaluelong='1000')"

For more information on the CLI commands, see the applicable Command Line Interface Reference Guide for Cisco Unified Communications Solutions at http://www.cisco.com/en/US/products/ps6509/prod_maintenance_guides_list.html.

Cisco Unified Communications Manager through a SIP Trunk

When integrating with Cisco Unified CM through a SIP trunk, it is possible to balance voice traffic that the Connection cluster server pair handles by using one of the following methods:

(Recommended) Use a Route List in Cisco Unified CM.

Use DNS-SRV - RFC 2782.

Use a SIP gateway DNS-SRV.

TDM-Based (Circuit-Switched) Phone System through PIMG/TIMG Units

When integrating with a TDM-based (circuit-switched) phone system through PIMG/TIMG units, it is possible to balance the load of voice traffic that the Connection cluster server pair handles by using one of the following methods:

(Recommended) Turn on load balancing on the PIMG/TIMG units.

Use load balancing on the TDM based PBX.


Note We recommend that you also turn on fault tolerance on the PIMG/TIMG units. This allows the PIMG/TIMG units to redirect calls to either server in the Connection cluster if one server is unavailable to take calls.


Load Balancing Clients in a Cisco Unity Connection Cluster

Although it is possible to balance client and administration requests that the Cisco Unity Connection cluster server pair handles (for example, from the Cisco Personal Communications Assistant (PCA), IMAP, and Cisco Unity Connection Administration), we recommend that most client and administration traffic be directed to the publisher server.

In order to balance client requests, it is necessary to use DNS A-records. DNS A-records allow client DNS lookups to resolve to either server in a round-robin fashion.


Note If one server in a Connection cluster server pair stops functioning and failover occurs, clients such as the Cisco PCA and IMAP clients may need to authenticate again by signing in.

We do not recommend using DNS to load balance with multiple A-records because this method does not account for server unavailability (for example, if one of the servers in a Connection cluster server pair stops functioning). The DNS server cannot determine the availability of a server IP address that is listed in an A-record. It may be necessary for the clients to attempt DNS resolution multiple times before they connect to a functioning Connection server in a Connection cluster server pair.


Configuration for Dial-out Voice Messaging Ports

Each Cisco Unity Connection server in a Connection cluster must have voice messaging ports designated for the following dial-out functions in case either server has an outage:

Sending message waiting indicators (MWIs).

Performing message notifications.

Allowing telephone record and playback (TRAP) connections.

As a best practice, we recommend that you dedicate an adequate number of voice messaging ports for these dial-out functions. These dedicated dial-out ports should not receive incoming calls and should not be enabled for answering calls.

For More Information

Configuring Cisco Unity Connection Ports and Port Groups to Support a Cisco Unity Connection Cluster and the Various Phone System Integrations

See the applicable Cisco Unity Connection integration guide at http://www.cisco.com/en/US/products/ps6509/products_installation_and_configuration_guides_list.html, and the Cluster Configuration and Administration Guide for Cisco Unity Connection Release 8.x at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/cluster_administration/guide/8xcuccagx.html.

Configuring Cisco Unity Connection Clients to Support a Cisco Unity Connection Cluster

See the Cluster Configuration and Administration Guide for Cisco Unity Connection Release 8.x at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/8x/cluster_administration/guide/8xcuccagx.html.