Call Bridge Cluster

Configuring Call Bridge

Now that the underlying database and the REST API are available by enabling Web Admin, you can focus on enabling and configuring the most important of the core services, the Call Bridge. You will also license your CMS servers in this section as well. The Call Bridge is the one service present in every CMS deployment. The Call Bridge is the main conferencing engine. It also provides the SIP interface, so that calls can be routed to/from it from external call control, such as the Cisco Unified CM.

Enabling Call Bridge

As with other services, initial configuration of the Call Bridge begins in the CLI. And as before, you must assign certificates for the service and bind the service to an interface. Start by connecting to server CMS1A.

Cisco Meeting Server Name Password
cms1a.pod2.cms.lab c1sco123

Enter the following command to associate the certificates with the Call Bridge service:

cms1a> callbridge certs cms1a.key cms1a.cer cmslab-root-ca.cer

Next bind the service to an interface:

cms1a> callbridge listen a

Finally, restart the service:

cms1a> callbridge restart SUCCESS: listen interface configured SUCCESS: Key and certificate pair match SUCCESS: certificate verified against CA bundle

The callbridge command gives some status information about the Call Bridge service, although it is primarily to check that the certificates are assigned.

cms1a> callbridge Listening interfaces : a Preferred interface : none Key file : cms1a.key Certificate file : cms1a.cer Address : none CA Bundle file : cmslab-root-ca.cer XMPP trusted certs : none Callbridge cluster trusted certs : none

CMS1b and CMS1c already have their certificates installed, so no need to do anything to those servers.

Install CMS Licenses

Now that the Call Bridge service is enabled, you can install the licenses. You may be wondering why you didn't install the licenses earlier. There is an issue where if you install the license before the Call Bridge service is enabled, the license command does not show any output at all, even if the license file is present.

The license file is bound to the MAC address of the “a” interface of the system. To obtain the MAC address, use the ipv4 a command from the CLI. Connect to CMS1A to issue the command.

Cisco Meeting Server Name Password
cms1a.pod2.cms.lab c1sco123
cms1a> ipv4 a IPv4 configuration: address 10.0.102.51 default true dhcp false enabled true gateway 10.0.102.1 macaddress 00:50:56:AE:4E:04 prefixlen 24 ...

You would typically provide the MAC address to Cisco to get a license. Once Cisco has issued the license, it needs to be copied to the CMS server in a file named cms.lic. We have already generated the licenses for your servers, so the only thing you need to do is upload them.

  1. There is a single license file that contains the license for the MAC addresses of all your servers, so you only need to download a single file and then upload it to each of the three servers.
    Click HERE to download the license file for your CMS servers. The file is named pod2.lic.
  2. Open a Windows Command window on your laptop to access the psftp client. There should be a CMD icon on the Desktop or you can click Start > Run and enter cmd
  3. Now enter these commands to upload and rename the license file as cms.lic:

    cd %USERPROFILE%\Downloads psftp admin@cms1a.pod2.cms.lab Using username "admin". Using keyboard-interactive authentication. Please enter password: c1sco123 Remote working directory is / psftp> put pod2.lic cms.lic local:pod2.lic => remote:/cms.lic psftp> exit
      OR to enter all commands at once:
    cd %USERPROFILE%\Downloads psftp admin@cms1a.pod2.cms.lab c1sco123 put pod2.lic cms.lic exit

Now you can SSH back to the CLI of the CMS servers and see the licenses with the license command.

Cisco Meeting Server Name Password
cms1a.pod2.cms.lab c1sco123
cms1a> license Feature: callbridge status: Activated expiry: 2100-May-08 (30286 days remain) Feature: branding status: Activated expiry: 2100-May-08 (30286 days remain) Feature: recording status: Activated expiry: 2100-May-08 (30286 days remain) Feature: personal status: Activated expiry: 2100-May-08 (30286 days remain) Feature: shared status: Activated expiry: 2100-May-08 (30286 days remain) Feature: streaming status: Activated expiry: 2100-May-08 (30286 days remain)

For the license to take effect you need to restart the Call Bridge service on the CMS.

cms1a> callbridge restart SUCCESS: listen interface configured SUCCESS: Key and certificate pair match SUCCESS: certificate verified against CA bundle

Configure Call Bridge Clustering

Now you can configure Call Bridge Clustering. Call Bridge clustering is different than the forms of clustering configured so far. It can support anywhere from 2 to 8 nodes without and special permissions (it can scale higher, with approval from Cisco). It provides not only redundancy, but also load sharing, whereby conferences can be actively distributed between Call Bridge servers using intelligent distribution of calls.

Call Bridge clustering will be configured primarily through the Web Admin interface. Follow these steps:

  1. Browse to cms1a Call Bridge Web Admin page at https://cms1a.pod2.cms.lab:8443
  2. Click OK
  3. Enter your credentials (username: admin password: c1sco123)
  4. Press Submit (feel free to allow the browser to save the credentials)
  5. Press Ok to get to the overview page. You should no longer get a warning that there is no license. If you do, either the license is not valid (check the license command) or the Call Bridge service was not restarted.
  6. Select Configuration > Cluster from the menu.
  7. For the Unique name enter CB_cms1a. This name is arbitrary, but must be unique to that cluster. This name is descriptive in that it indicates this is the identifier for the server cms1a.
  8. Make sure you press Submit to save the value. You can leave the Peer link bit rate and Participant Limit fields blank.

You must repeat this for each of the other Call Bridges servers, configuring CB_cms1b and CB_cms1c as the unique names. Follow these steps to do this:

  1. Log into the cms1b Call Bridge cluster config at https://cms1b.pod2.cms.lab:8443 (username: admin password: c1sco123) under Configuration > Cluster.
  2. For the Unique name enter CB_cms1b
  3. Press Submit

Finally, configure the same for Call Bridge cms1c.

  1. Log into the cms1c Call Bridge cluster config at https://cms1c.pod2.cms.lab:8443 (username: admin password: c1sco123) under Configuration > Cluster.
  2. For the Unique name enter CB_cms1c
  3. Press Submit

Now that all the Call Bridge servers have unique Call Bridge identities, you can configure the clustering. To do this, you need to create a full mesh whereby you tell each server about the other two servers in the cluster as well as adding an entry for itself. Follow these instructions to enable Call Bridge clustering:

  1. From the cms1a server web admin, access Configuration > Cluster (username: admin password: c1sco123)
  2. Under Clustered Call Bridges section, enter its own unique name, CB_cms1a
  3. Enter the Web Admin URL, https://cms1a.pod2.cms.lab:8443, in the Address field. Be sure to include the port.

    You can leave the Peer link SIP domain blank. This setting defines the domain used for intra-cluster SIP calls (for load balancing calls or joining participants on different Callbridges to a common meeting Space). If left blank, these calls will have a destination domain consisting of the IP address (e.g. for CB_cms1a, @10.0.102.51). The Outbound calls settings, configured later, will determine how calls to these domains will be routed, either directly between CMS' Callbridge servers, or via an external call control.
  4. Click Add New
  5. Next enter the cms1b information in the next row. The Unique name is CB_cms1b
  6. The Web Admin URL for cms1b, to be entered in the Address field is https://cms1b.pod2.cms.lab:8443
  7. Click Add New
  8. Then enter the cms1c information in the next row. The Unique name is, of course, CB_cms1c
  9. The Address for cms1c is https://cms1c.pod2.cms.lab:8443
  10. Click Add New

You should now see all three servers on the list like this:

If you reload this web page, you should eventually show the two non-local Call Bridges with a connection active status. This means that they are successfully sending and receiving keepalives. If you access any other Call Bridge, the clustering page should show the same status, since they are sharing the same information via the clustered database.

Follow these steps to confirm the connections are active on the other two servers:

  1. Log in to cms1b at https://cms1b.pod2.cms.lab:8443 (username: admin password: c1sco123)
  2. If the connections are not all active, you should navigate to Status > General to see if there are any fault conditions listed.
  3. Now log into cms1c at https://cms1c.pod2.cms.lab:8443 (username: admin password: c1sco123)
  4. If there is a problem, or if the connections never go active you will also want to look at the Status > General page of each node.

In some instances, if there is a problem during setup, a fault will be generated on this page. If there is a problem while doing the initial setup, usually the quickest way to get around this is to simply remove the offending Call Bridge from the Configuration > Cluster page and then re-add it. Other more persistent issues are typically due to connectivity problems, certificate errors, or problems in the network time or DNS setup.

You have now completed the basic Call Bridge clustering.