Before you install Sentinel VoLTE, you need to download the SDK package, get other required software.

You can then either:

  • let the built-in installer install both the Rhino SDK and Sentinel VoLTE, or

  • install and configure Rhino and the JVM manually, then use the installer to install Sentinel VoLTE into your Rhino

In both cases you need to get a license.

Allowing the installer to install both the Rhino SDK and Sentinel VoLTE software is recommended for functional testing or experimentation with Sentinel VoLTE. For production installs and/or load testing it is recommended to manually install and configure Rhino and the JVM.

Finally, if you are planning to install Sentinel VoLTE on an existing Metaswitch Rhino installation (for example, to use clustering), it makes sense to refer to other Metaswitch product dependencies

Download the Sentinel VoLTE SDK package

To get the latest Sentinel VoLTE SDK package go to https://repo.opencloud.com/artifactory/opencloud-sentinel-volte-2.8.0/opencloud/volte/2.8.0/sentinel-volte-sdk/ Choose the version with the highest release number.

The SDK package contains an installer, that can install Sentinel VoLTE as an out-of-the-box system. It is also an SDK allowing customisation of the product.

Warning You will need Metaswitch-supplied credentials to download the package.

Get required software

You’ll need the following software to run Sentinel VoLTE:

Software Download Link Documentation Link

Java JDK 8, update 172 or later

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Apache Tomcat 7.0.39 or greater (7.0.x series or 8.5.x series, not 9.x.x series)

http://tomcat.apache.org

Rhino 2.6.1.0 or later - optional - to be used when installing and configuring Rhino manually

Rhino 2.6.1 SDK from Artifactory

Rhino Documentation

Rhino Element Manager 2.6.1.0 or later

REM Download Page

REM Documentation

Sentinel VoLTE SDK including out of the box installer

Sentinel VoLTE SDK, from Artifactory

Sentinel VoLTE SDK

Cassandra Database, version 2.1.17 or later version from the 2.1.x series. Cassandra is required for multiple functions including the SCC-AS, Rhino’s Session Ownership subsystem and the Rhino Key-value store subsystems.

http://cassandra.apache.org/download/

http://cassandra.apache.org/doc/latest/getting_started/index.html

Note that it is not necessary to configure auto-start (e.g. systemctl or init.d) for Cassandra or Tomcat.

Install and configure Rhino and the JVM

Optionally you can install and configure Rhino and the JVM for use with Sentinel VoLTE. This is recommended for production deployments, and clustered setups. It is required if using Session Replication. If using Session Replication, read the

Alternatively for Proof of Concept and lab functional testing it is recommended to use the Installer documented in Installing Sentinel VoLTE Services

If the installation is to use Session Replication, see the Session Replication installation checklist.

Install Rhino

1

Start by choosing a location to extract the contents of the Rhino package.

We’ll refer to this directory as RHINO_HOME.

2

Rhino must be started at least once to generate the necessary configuration files. To start Rhino, in the RHINO_HOME directory, execute:

./start-rhino.sh

3

Wait until Rhino is ready. It prints the following message in its log when ready:

SLEE successfully started on node(s) [101]

4

Stop Rhino by executing in the RHINO_HOME directory:

./stop-rhino.sh --node 101

(specifying the node ID of the local node)

Tip For more about installing and configuring the Rhino TAS, please see the Rhino v2.6.1 Documentation.

Configure Rhino and the JVM

If you want to install Sentinel VoLTE in top of an already running Rhino then this step must be performed. If you are letting the installer configure the Rhino SDK for you, this step can be skipped.

The following settings are needed:

Setting Configuration

Management database size

For a full Sentinel VoLTE install, the default Rhino 2.6.1 management database size is insufficient and should be increased to at least 400MB. To do this, edit RHINO_HOME/config/rhino-config.xml on all nodes, increasing the <committed-size> in the following section:

    <memdb>
      <jndi-name>ManagementDatabase</jndi-name>
      <message-id>10003</message-id>
      <group-name>rhino-db</group-name>
      <committed-size>400M</committed-size>
      <stripe-count>1</stripe-count>
      ...
    </memdb>

JVM

You’ll also need to configure the JVM:

For RhinoSDK: * The Rhino HEAP_SIZE setting should be set to 2560m at a minimum. * The recommended MAX_NEW_SIZE and NEW_SIZE setting for a Rhino node running Sentinel VoLTE is 1/4th of the total heap size (for example, 640m when the HEAP_SIZE is 2560m).

All of these settings can be found in RHINO_HOME/config/config_variables after running Rhino for the first time.

For Rhino Production:

The configuration will depend on the expected traffic characteristics and the hardware configuration. There is no general rule for a production setup and each project installation will require specific analysis.

Recommendations are:

  • The Rhino HEAP_SIZE setting should be set to 6144m at a minimum.

  • TieredCompilation is enabled by default in Java 8. It is recommended Sentinel VoLTE is run with a larger CodeCache. Use the JVM settings -XX:ReservedCodeCacheSize=768m and -XX:InitialCodeCacheSize=768m.

These options will need to be set in environment variables, either in the config_variables file or the read_config_variables script.

Socket permissions

If running the installer remotely, you will need to add the host address where the installer is running to the mlet configuration file. In addition, you’ll need to add the address of any Rhino Element Manager hosts and any remote hosts from which you might access the Rhino console.

  • For RhinoSDK the configuration file is RHINO_HOME/config/mlet.conf

  • For Rhino Production the configuration file is RHINO_HOME/node-xxx/config/permachine-mlet.conf

  • In the configuration file look for the xmltag <security-permission-spec> and add the following entry, replacing <IP ADDRESS> with your installer’s IP address:

<mlets>
    <mlet enabled="true">
        <classpath>
            <jar-url>$${rhino.dir.base.url}/lib/jmxr-adaptor.jar</jar-url>
            <security-permission-spec>
		.... other entries

		permission java.net.SocketPermission "<IP ADDRESS>", "accept,resolve";

		.... other entries
 	    </security-permission-spec>
        </classpath>
    </mlet>
</mlets>
Important
Start Rhino to load the new configuration

To start Rhino, in the RHINO_HOME directory run ./start-rhino.sh.

This applies the Rhino and JVM configuration.

Get a license

Warning To install Sentinel VoLTE you need a license to run SIS, CGIN, and Sentinel VoLTE from Metaswitch. In order to obtain a license file, please contact Metaswitch. A full overview of license requirements can be found of this page: License Requirements.

If you allow the installer to install both Rhino SDK and Sentinel VoLTE for you, it will prompt you for the location of the license file.

If you prefer to set up Rhino manually, then you need to install the license file prior to installing Sentinel VoLTE.

To install your license file:

1

Make sure Rhino is started and running.

2

Go to the RHINO_HOME/client/bin directory.

3

In this directory, start the Rhino Console with the rhino-console script (or rhino-console.bat in Microsoft Windows).

4

In the Rhino Console execute, this command:

installlicense [PATH_TO_LICENSE_FILE]

([PATH_TO_LICENSE_FILE] should be relative to the RHINO_HOME/client/bin directory.)

Ports

If using the standard configuration, the following ports need to be open on the VoLTE TAS host’s firewall.

Port Purpose

5060

SIP traffic

5061

Secure SIP traffic

8080

REM GUI

1199-1203

RMI Access

If using other configuration the firewall should be configured for those non-standard ports. Other ports may be opened as needed. For example if ssh is used to administer a node, then port 22 would be opened

Metaswitch product dependencies

Sentinel VoLTE is built on top of other Metaswitch products. The 2.8.0 series depends on the following series:

Product Series

Rhino

2.6.1.x

REM

2.6.1.x

SIP

2.6.0.x

CGIN

2.0.0.x

SIS

2.6.1.x

SIS-EM

2.6.1.x

Diameter

3.1.1.x

IM-SSF

2.6.1.x

CDR-RA

2.3.0.x

HTTP-RA

2.4.0.x

DB-Query-RA

1.4.0.x

FSM Tool

1.2.0.x

CQL-RA

1.1.0.x

Session Replication installation checklist

Session Replication is supported through the use of various Rhino subsystems, introduced in Rhino 2.6.1, and associated enhancements to various components are on top of Rhino. DNS is expected to be configured according to Non-sharded DNS configuration, with Record Route to enable fail-over of sticky sessions.

In order to install Sentinel VoLTE with Session Replication enabled, the following needs to occur during installation:

  1. During Rhino production installation, enable both Rhino’s Session Ownership facility, and setting Rhino’s replication storage to the Cassandra Key-value store. These are enabled by answering

    1. True to the Session Ownership Facility question

    2. Providing the value KeyValueDatabase to the Replicated Storage question

    3. Both of these questions must be answered correctly, as they affect code generation for applications on top of Rhino. Once applications are installed, their code generation cannot change without re-install.

  2. During the Sentinel VoLTE application installation, answer Yes to the Session Replicated Enabled question

    1. this question changes application configuration that is able to be modified post installation if desired (i.e. answering Yes or No does not preclude a later configuration change to enable/disable)

After the Rhino and Sentinel VoLTE installers have completed some configuration settings are required for failover to function correctly according to DNS Redundancy.

  1. Configure the VirtualAddresses configuration property for the network interface (named sip-sis-ra-default) for the sip-sis-ra RA entity.

    1. this should be set to the "TAS Cluster" DNS SRV name, used in IMS Initial Filter Criteria. E.g. tas-cluster.example.com

    2. this is necessary for the SIS to recognise SIP Route headers as "belonging to me" and therefore accepting such Requests for processing

    3. further information on the use of this value is viewed in Non-sharded DNS configuration, and SIP default network interface settings

  2. Configure the DynamicSRVFormat configuration property for the sip-sis-ra RA entity’s Network Interface. This is necessary for SIP Record-Route headers to provide primary and backup nodes

    1. A format such as tas-node-{IP}.example.com will produce DNS names with the Network Interface’s IP address included in the name.

    2. If a node has an IP address of 192.168.0.10, the node will add a Record-Route header with value tas-node-192-168-0-10.example.com

    3. further information on the use of this format can be viewed in Record Route to enable fail-over of sticky sessions, and

  3. Set the SIS-SIP RA’s Rfc3263FailoverEnabled property to true

Previous page Next page
Sentinel VoLTE Version 2.8.0