Media Engine
Instructions for installing and configuring the WSC Media Engine...
Hardware Requirements
Minimum hardware requirements:
Property | Value | Comments |
---|---|---|
CPUs | 2 | Minimum required to boot. |
RAM | 4 GB | Minimum required to boot. |
Disk | 50 GB | Minimum required to boot. |
Ethernet NICs | 4 | Will boot with 1 NIC, but typical installations require separate public, private, service and cluster networks. |
OS | Oracle Linux 7.2 | Contact Oracle Support for updates regarding later versions of Linux. |
Oracle Linux 7.2
As of this writing, the current version of WSC (7.2.0.2.0) requires Oracle Linux 7.2 to install. However, running "yum update" to upgrade the system to 7.7+ appears to work just fine.
Linux Installation Wizard
The WSC-ME requires four (4) network cards
NIC | Description |
---|---|
eth0 | Cluster (Private) |
eth1 | Network 1 (Public) |
eth2 | Network 2 (Private) |
eth3 | Service (Private) |
The WSC-ME does not support Predictable Network Interface Names.
To disable it, during installation, upon the initial install screen, press TAB, and add the following parameter to the boot parameters:
net.ifnames=0
Example:
Also, remember to:
- Set the host name
- Configure each network interface to "Automatically connect to this network when it is available"
In addition, on the installation summary screen, perform the following tasks:
- Set the timezone and enable Network Time
- Choose Minimal Install (default)
- Select the installation drive
Additional Components
After changing the network card naming conventions, it is now safe to install WSC.
This also requires installing:
- wget
- unzip
- JDK 8
- JAX-WS RI 2.3
- MySQL 5.6
Update Linux
Steps to update Linux, install 'unzip' and enable the MySQL 5.6 repository:
yum -y install yum-utils
yum-config-manager --enable ol7_optional_latest
yum-config-manager --enable ol7_MySQL56
yum -y update
Install Java
The WSC Signaling Engine requires Oracle Java, but the Media Engine will work with the OpenJDK (which is simpler to install).
To install:
yum -y install java-1.8.0-openjdk-devel
Check Entropy
Every time you install Java, you should check the 'entropy' available. This is random input from the keyboard and mouse during install, which is used to for the generation of random numbers (which are used in SIP messages). If the 'entropy' is too small, it will seriously impact performance.
To check, type:
[root@wscme5 ~]# cat /proc/sys/kernel/random/entropy_avail
579
If the 'entropy' is below 1000, we need to modify the JDK's random number generator from 'secure' to 'unsecure'.
Change Java Random Number Generator
To change the random number generator, we need to determine where Java is installed. Here's a nifty way of doing it:
[root@wscme5 java]# java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
java.home = /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64/jre
Inside that directory, there's a file called: /lib/security/java.security.
We need to modify it to change the "securerandom.source" from "file:/dev/random" to "file:/dev/urandom". Here's an example, using 'sed':
cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64/jre
sed -i "s/securerandom.source=file:\/dev\/random/securerandom.source=file:\/dev\/urandom/g" lib/security/java.security
Install JAX-WS RI
Also, download JAX-WS RI 2.3.1 and install:
yum -y install wget unzip
wget https://repo1.maven.org/maven2/com/sun/xml/ws/jaxws-ri/2.3.1/jaxws-ri-2.3.1.zip
unzip jaxws-ri-2.3.1.zip -d /usr/share/java
rm -rf jaxws-ri-2.3.1.zip
Upload any Golden Configs
You may be supplied with a "cxc.cfg" file. This is a good time to upload it. Once you install WSC-ME, you will lose the ability to SFTP or SCP any files.
Install WSC
Don't forget to check 'edelivery' for patches.
Enable additional repositories:
yum-config-manager --enable ol7_optional_latest
Unzip RPM packages:
mkdir -p /root/install/wsc-me-7.2.1.0.0
unzip wsc-me-7.2.1.0.0-2020-07-31.zip -d /root/install/wsc-me-7.2.1.0.0
Create a local YUM repository, like so:
cat > /etc/yum.repos.d/wsc-me-7.2.1.0.0.repo <<EOT
[wsc-me-7.2.1.0.0]
name=WebRTC Session Controller Media Engine Release 7.2.1.0.0
baseurl=file:///root/install/wsc-me-7.2.1.0.0
enabled=1
gpgcheck=0
EOT
Take a backup
Install via YUM:
yum -y install wsc-me
Restart
Restart the system
reboot
Congratulations! You are now ready to move on to the next exercise: Configure WSC-ME.
Configuration
After installing the WSC-ME, it is now time to configure it.
Login
Upon reboot, let's login.
Oracle Linux Server 7.7
Kernel 3.8.13-118.18.4.trunk.245025.el7uekcov.x86_64 on an x86_64
wscme5 login: root
Net-Net OS-E
Copyright (c) 2004-2013 Oracle Inc.
username: <return>
password: <return>
Access is granted since there are no configured users
NNOS-E>
Wild! The machine has changed considerably...
The first thing we need to do is make a backup of a configuration file called "cxc.cfg". This contains all the important configuration information for the WSC-ME.
Here's example of how to do it:
NNOS-E> shell
[root@wscme5 cxc]# cp cxc.cfg cxc.bak1
Perfect! Now, if we make a mistake we can at least revert back the original install configuration.