SVC Installation

Overall Installation Steps

The high-level steps for installing and configuring N2SIP SVC nodes are:

  1. Determine the server(s) that will supply the SVC logical component, bearing in mind the supported operating systems and minimum server requirements.
  2. Ensure the installation pre-requisites are met.
  3. Install the SVC package.
  4. Perform any required post-installation steps.
  5. Update the N2SIP SVC configuration and N2SVCD SVC configuration as appropriate for each component.

Installation Pre-requisites

OS-specific Setup

Refer to the specific Red Hat or Debian instructions for any pre-requisites as required.

Lua

Each N2SIP SVC instance requires Lua to be available at version 5.2+. Specifically, both lua and luac must be present in the PATH for all users. Consult your operating system documentation to determine the appropriate package to install.

If your distribution does not support Lua at version 5.2+, N-Squared maintains a pre-packaged, separately-installable version of Lua that meets N2SIP’s requirements. Contact N-Squared Support to discuss access to this if required.

N2SVCD

The N-Squared N2SVCD application framework must be installed as a pre-requisite for all N-Squared products. Follow the installation steps for this, noting any prerequisites.

The N2SIP SVC package also expects that the default N2SVCD configuration directory exists:

/etc/n2svcd

Be sure to apply any applicable N2SVCD post-installation steps once installation is complete.

Installation Steps

Follow the appropriate installation steps depending on your installation sources. The N2IVR GUI can replicate audio files and configuration by database or file sync. If database replication is being used, the installation of n2sip-db should also be done, as noted by [*].

From N-Squared Repository

Execute the instructions specific to your operating system:

RHEL 8 / 9 DEB-based Systems
sudo dnf install n2sip-svc sudo apt-get install n2sip-svc
[*] sudo dnf install n2sip-db [*] sudo apt-get install n2sip-db

As Manual Installation

Transfer the provided package file to the target node, then follow the instructions specific to your operating system.

Execute (adjusting as appropriate for package location and version details) the following:

RPM-based Systems DEB-based Systems
sudo rpm -Uvh /path/to/n2sip-svc-M.m.p-b.noarch.rpm sudo dpkg -i /path/to/n2sip-svc_M.m.p-b_all.deb
[*] sudo rpm -Uvh /path/to/n2sip-db-M.m.p-b.noarch.rpm [*] sudo dpkg -i /path/to/n2sip-db.m.p-b_all.deb

[*] Only if database replication is being used for audio file transfer.

Post-Installation Steps

Database Configuraiton

If n2sip-db is installed for database replication, refer to the database installation guide to complete the database installation on each service node.

N2SVCD Integration

The N2SIP SVC packages delivers several N2SVCD applications to perform traffic handling functions. Refer to the application configuration documentation for details of the configuration required for these applications.

Non-Standard File Directories

When database replication is used, non-standard directories for IVR audio files and configuration are not required and this section can be skipped.

However, when using file-base storage for audio files, the following actions must be taken to set up the audio file and configuration directory for the N2IVR audio files synchronised from the SMS node to the service nodes.

If the standard directories generated under /var/lib/n2sip are not used, their replacements must be created and updated before use.

mkdir -p /path/to/n2sip/resources/live
chown -R n2in:daemon /path/to/n2sip

The SELinux permissions must also be updated:

semanage fcontext -a -t var_lib_t "/path/to/n2sip(/.*)?"
restorecon -Rv /path/to/n2sip

Firewall

The firewall (if any) on the SVC node must be updated to allow:

If required, the firewall (if any) on the SVC node may also be updated to allow:

If statistics and EDRs are to be retained, the firewall must be updated to allow access for:

The exact commands to do this will depend both on the firewall on your platform and also which port(s) are in use. For example, to allow the default PostgreSQL port when using firewalld, the commands might be:

firewall-cmd --zone=public --add-port=5432/tcp --permanent
systemctl restart firewalld