EMS Server - Installation and Setup
When configuring a single node using the direct connect scenario, the node can be configured through use of a single Web UI application running on a Web Browser. If a user wants to configure numerous IMG 2020 nodes using a single Web Browser and Web UI application, Sangoma's EMS software must be utilized. In this scenario, the IMG 2020 nodes communicate with the Web UI application through the EMS software. The EMS software needs to be running on either a Virtual Machine or a separate server running one of the supported Linux versions (see EMS Server Specifications). Sangoma can supply a customer with either a VM image with the EMS software installed or a separate Linux Server with the EMS software installed. The procedures and information below describe the setup and configuration required to configure a server to be able to control the IMG 2020's using the Multi Node setup.
Important!!! If purchasing a single node direct connect system and the plans are to expand to multiple nodes, initially purchasing a Multi Node setup with EMS software will make it easier to expand to more than one node. The configuration used in the single node scenario cannot be used in the multi node setup and the node will need to be completely re-configured. However, it is possible to use the Offline Configurator software to modify a Direct Connect configuration so that it will be usable for a Multi Node setup. Refer to the Offline Configurator topic for details on setting that up.
EMS Server Specifications
Sangoma supplies a server that is pre-configured with CentOS (64-bit) and KVM installed, along with the EMS Software installed (model dependent). Below are the specifications of the server supplied.
Hardware Specifications
Server | Specifications |
---|---|
Model | BDN-EMS-2930/2931 |
Processor | 1.8 GHz Quad Core (Intel Xeon E5-2403) |
L2 Cache | 10 MB Cache |
Memory | 12 GB (3 X 4 GB) 1333 MHz Dual Rank |
Hard Drive | (2) 500 GB 7.2K RPM SATARAID 1 |
Optical Drive | DVD+/-RW SATA |
Power Supply | (2) AC 350 Watts |
Rack Mount Kit | Included (19") |
Ethernet Adapter | 1 GB on-board Broadcom 5720 Dual Port |
Physical Specifications
Server | Specifications |
---|---|
Height | 1U Form Factor, 1.7" (4.28 cm) |
Depth |
|
Width | 17.1" (43.4 cm) |
Weight |
|
Power Specifications
The power and cooling provided from the site must fall within the specifications listed below. In general, a typical office environment satisfies these conditions. A temperature-controlled environment is preferable.
Parameter | BDN-EMS-2930 |
---|---|
Vin (voltage) | 100 - 240 vac |
Iin (current) | 2.4A - 4.8A Max (Nominal xxx) |
Vin (frequency) | 50/60 Hz |
Heat Dissipation | 1356 BTU's/hr |
Environmental Specifications
Storage Requirements
Parameter | Range |
---|---|
Temperature | -40°F to 149°F (-40°C to 35°C) |
Relative Humidity (Non Condensing) | 5% to 95% |
Altitude | -50 ft to 39,370 ft (-15.2 m to 12,000 m) |
Operating Requirements
Parameter | Range |
---|---|
Temperature | 50°F to 95°F (10°C to 35°C) |
Relative Humidity (Non Condensing) | 10% to 80% |
Altitude | -50 ft to 10,000 ft (-15.2 m to 3048 m) |
Create Sangoma User Profile
The server must have a "Sangoma" profile configured on it. If the server being used was purchased from Sangoma, the Sangoma user profile and associated directories have already been created. Skip to the Download Software from Sangoma BBS (Bulletin Board System) section below if server has been purchased from Sangoma. Follow the next few steps to create the profile
Login to the Linux machine as a root user.
As a root or superuser, create a group labeled dialogic. The example will create a group profile labeled dialogic in /home. Refer to example below.
[root@localhost ftpBuilds]# groupadd dialogic
Create a user labeled dialogic under the group dialogic.
[root@localhost ftpBuilds]# useradd -g dialogic dialogic
Add a password of Dial0gic to the user. (Capital D, Zero for 0)
[root@localhost etc]# passwd dialogic
New password: <Dial0gic>
Retype new password: <Dial0gic>
Verify the group and user got created by entering the following command.
[root@localhost etc]# grep /home /etc/passwd
dialogic:x:500:500::/home/dialogic:/bin/bash
Using SSH, log into the profile created by entering the appropriate credentials.
Within the /home/dialogic directory, a new directory labeled ftpBuilds should be created. Open a terminal window and go to /home/dialogic. Create the ftpBuilds directory as a dialogic user.
[dialogic@localhost]$ mkdir ftpBuilds
Verify that the ftpBuilds directory was created in the correct directory with the correct owner:
[dialogic@localhost ~]$ ls -ld /home/dialogic/ftpBuilds/
drwxrwxr-x. 2 dialogic dialogic 6 Dec 7 16:24 /home/dialogic/ftpBuilds/
Download Software from Sangoma BBS (Bulletin Board System)
The IMG 2020 is shipped with a default software loaded on it. If you require a different version, you can obtain the software from Sangoma BBS (Bulletin Board System):
For login information, refer to the welcome letter e-mailed after purchase of product or contact Sangoma Support for information on getting a logon username and password.
Download the latest IMG 2020 software. Refer to the example below. Below is the format of the files required.
System Software - bdn2020_ver230xxx.bin (xxx=build number)
EMS Software
For version 2.3.0 SP2 (build 76) and newer - webuid-2.3.0-xxx-Linux.rpm (xxx=build number)
For version 2.3.0 SP1.2 (build 72) and older - bdn2020_host_ver230xxx.bin (xxx=build number)
Transfer the bdn2020_ver230xxx.bin and bdn2020_host_ver230xxx.bin software files to the /home/dialogic/ftpBuilds directory created earlier. Transfer the files using the binary format.
Required Installation Packages on Red Hat Enterprise Linux 6.7 (64-bit) Server
Before installation of EMS software, some required packages need to be installed.
Follow the procedure below to install the required packages on the EMS software Red Hat Enterprise Linux 6.7 (64-bit) Server.
Note: The yum tool is needed for installation. Make sure to register the system before installation.
Become a superuser.
Install packages.
yum install nss.i686 --setopt=protected_multilib=false
yum install libstdc++.i686 --setopt=protected_multilib=false
yum install libcurl.i686 --setopt=protected_multilib=false
Enable EPEL Repository for Red Hat Enterprise Linux 6.7 (64-bit).
wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
Install monit service.
yum --enablerepo=epel install monit
Change mode of the monit.conf.
chmod 700 /etc/monit.conf
Stop and disable iptables service permanently through services configuration.
Disable SELinux permanently.
vi /etc/selinux/config
Set SELINUX=disabled.
Update to Apache 2.4 on Red Hat Enterprise Linux 6.7 (64-bit) Server
Register the system to have RHSCL repo.
Before installation of EMS software, some required packages need to be installed.
Follow the procedure below to install the required packages on the EMS software Red Hat Enterprise Linux 6.7 (64-bit) Server.
Note: The yum tool is needed for installation. Make sure to register the system before installation.
Log in as root user. The root password should be Dial0gic. Otherwise, you will need to acquire the root password to the server.
Enable the RHSCL repository for your system.
yum install yum-utils
yum-config-manager --enable rhel-server-rhscl-6-rpms
Install the software collection.
yum install httpd24
yum install httpd24-mod_ssl
Start using the software collection.
scl enable httpd24 bash
Enable httpd24 service and disable httpd on boot time.
chkconfig --levels 2345 httpd24-httpd on
chkconfig --levels 12345 httpd off
Stop httpd and start httpd24 service.
service httpd stop
service httpd24-httpd start
Required Installation Packages on CentOS 7.3 (64-bit) Server
Before installation of EMS software, some required packages need to be installed.
The OS installation (it works even from a minimal install, and should work whether you create the dialogic user during install or not)
Follow the procedure below to install the required packages on the EMS software CentOS 7.3 (64-bit) Server.
Note: An Internet connection should be accessible from the CentOS server.
Paste the following bash script code into a root SSH session to automatically setup the EMS server.
yum install -y epel-release
yum install -y libcurl.i686 openssl*i686* --setopt=protected_multilib=false
yum install -y monit openssl-devel p7zip httpd mod_ssl nfs-utils java-1.8.0-openjdk wireshark wireshark-gnome dhcp vsftpd xrdp tigervnc tigervnc-server rsync ntp tcpdump zip unzip
groupadd dialogic ; useradd -g dialogic dialogic ; usermod -g dialogic dialogic ; echo dialogic:Dial0gic | chpasswd
sudo -u dialogic mkdir -p /home/dialogic/ftpBuilds
sed -i 's/^[^#]*SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
systemctl disable firewalld ; systemctl stop firewalld
systemctl enable ntpd ; systemctl start ntpd
# if you are not using FTP for switch software, licences or fault files, you may skip the following command:
systemctl enable vsftpd ; systemctl start vsftpd
# if you are not using NFS-based call tracing you may skip the following 5 commands (they are not needed for trace server):
systemctl enable nfs-server.service ; systemctl start nfs-server.service
mkdir -p /opt/dialogic ; chown dialogic /opt/dialogic ; chgrp dialogic /opt/dialogic
sudo -u dialogic mkdir -p /opt/dialogic/common/calltracing
echo "/opt/dialogic/common/calltracing *(rw,sync,all_squash,anonuid=`id -u dialogic`,anongid=`id -g dialogic`)" >> /etc/exports
exportfs -a |
Load the System Software to Each Node
The system software needs to be loaded onto each IMG 2020 node. Decide which method of the three displayed in the links below will be used. Refer to one of the topics in the links below and load the system software to each node.
Software Install - FTP/SD Card
Once system software is loaded, the nodes can then be configured as described in each of the topics in the links above.
Install the EMS Software (rpm package method) - Version 2.3.0 SP 2 and newer
The procedure below describes the steps required to Install EMS software running on the Virtual Machine using RPM package.
Follow the steps below to Install the EMS (using RPM Package) and system software.
Notes: Please backup dialogic directory before upgrading using RPM package as precautionary measures.
To install the EMS software on the Virtual Machine, the webuid-2.3.0-xxx-Linux.rpm file must first be transferred and then installed
Currently you are logged in as a dialogic profile user. Become a superuser by entering the following commands:
[dialogic@localhost ~]$ su
Password: Dial0gic (Capital D, zero for o)
[root@localhost ftpBuilds]#
From the /home/dialogic/ftpBuilds directory, install the EMS Software. Follow the installation instructions in the SSH screen to install.
[root@localhost ftpBuilds]# cd /home/dialogic/ftpBuilds
[root@localhost /]# rpm –ivh webuid-2.3.0-76-Linux.rpm
See below RPM installation logs screen shot
[root@localhost ftpBuilds]$ rpm -ivh webuid-2.3.0-76-Linux.rpm
Preparing... ########################################### [100%]
1:webuid ########################################### [100%]
###################################################################
Installing WebUI 2.3.0.76
###################################################################
Updating Service Files...
Stopping Services...
Stopping httpd: [FAILED]
Shutting down monit: [FAILED]
WebUI Stopping...
Shutting down oampManager: [FAILED]
Shutting down DBSyncEntity: [FAILED]
Shutting down SS7Redund: [FAILED]
Shutting down backupmgr: [FAILED]
Shutting down EMSRedund.sh: [FAILED]
Copying WebUI Files...
Setting WebUI Permissions...
Setting Service Levels...
Installing jre...
Starting Services...
WebUI Restarting...
WebUI Stopping...
Shutting down oampManager: [FAILED]
Shutting down DBSyncEntity: [FAILED]
Shutting down SS7Redund: [FAILED]
Shutting down backupmgr: [FAILED]
Shutting down EMSRedund.sh: [FAILED]
WebUI Starting...
Starting EMSRedund: [ OK ]
Starting oampManager: [ OK ]
Starting DBSyncEntity: [ OK ]
Starting SS7Redund: [ OK ]
Starting backupmgr: [ OK ]
Shutting down monit: [FAILED]
Starting monit: [ OK ]
Stopping httpd: [FAILED]
Starting httpd: [ OK ]
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
EMS is configured in STANDALONE mode - No redundancy
To change the EMS configuration, run EMSSetup.sh in /opt/dialogic/bin
###################################################################
WebUI Installation: SUCCESS
###################################################################
Install the EMS Software (bin executable method) - Version 2.3.0 SP 1.2 and older
Once the EMS software file has been downloaded.
To be able to install the EMS software, the bdn2020_host_ver220xxx.bin file must be executable. As a dialogic user, modify the file to become executable by performing the chmod +x command displayed below.
[dialogic@dialogicuser ftpBuilds]$ chmod +x bdn2020_host_ver220xxx.bin (xxx=build)
As a root or superuser, install the software by entering the command below and follow the installation instructions in the install.
[root@localhost ftpBuilds]$ ./bdn2020_host_ver220xxx.bin (xxx=build)
When the installation has completed, log out of root or superuser mode by entering the exit command
[root@localhost ftpBuilds]$ exit
Rotate syslog to avoid disk full on EMS server
logrotate.conf
logrotate.conf is located in /etc/ and holds the default system wide configuration for logrotate. By default logrotate will rotate logs weekly and maintain 4 weeks of backlogs. You can customize logrotate.conf but it is usually better to customize the individual daemon’s log rotation configuration in /etc/logrotate.d/
/etc/logrotate.d/
This directory contains log rotation files for different services running on the system.
A typical file in this directory is this one for syslog ( /etc/logrotate.d/syslog ):
/var/log/cron /var/log/maillog /var/log/messages /var/log/secure /var/log/spooler { weekly rotate 3 compress missingok sharedscripts postrotate /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true endscript } |
The first line is a regular expression that matches the log files. In this case all files ending in “log” and residing in the /var/log/ directory.
Then inside the opening and closing braces you have the options for log rotation for this daemon’s files. In the above case you have weekly rotation configured.
Options for logrotate
Some of the options that you can include in the logrotate.conf file or the individual daemon’s log rotation files in /etc/logrotate.d/ are :
rotate: Specify the number of back logs to keep using the rotate option. For example “rotate 5” will keep 5 old log files.
compress: Will compress the old log files to save disk space.
daily, weekly, monthly or yearly: Rotate logs after the specified period has passed.
size: Specify the size of the log file to trigger rotation. For example “size 50M” will rotate the log file if it is 50MB or greater in size. You can use the prefix M for megabytes, k for kilobytes and G for gigabytes. If no prefix is used it will take it to mean bytes.
minsize: This is like size except it also takes into account the period ( monthly, weekly etc. ). So it will only rotate the log files if the period is reached AND the log files are larger than the minsize specified.
prerotate and postrotate: These specify commands that you can run before and after log rotation. For example restarting the daemon after log rotation.
For the full list of available options see the logrotate.conf man file ( man logrotate.conf).