Step 1 Go to download.denovolab.com
Download api, database, systemd service files, falcon_rest package, ui and switch binaries
Supported OS is Centos7
First time install:
Run the following commands:
yum -y install epel-release
yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum -y install centos-release-scl
yum clean expire-cache
yum -y install python3 python3-pip python3-devel libnetfilter_conntrack postgresql12 postgresql12-devel wget lzma openssl-devel xz-devel gcc libjpeg-turbo-devel ntp python-devel tcpdump wireshark make bzip2-devel sqlite-devel zip expect telnet git ntp redis nginx postgresql12-server prefix12 ip4r12 postgresql12-contrib
Check if selinux is enabled, and if true, set it to permissive or disable it
Install NodeJS for the UI with the following commands:
curl --silent --location https://rpm.nodesource.com/setup_12.x | sudo bash -
yum install -y nodejs
create user webbackend and denovo_v6:
- useradd denovo_v6 -d /opt/denovo_v6
- useradd -r webbackend
copy content of the systemd.tar.gz into /etc/systemd/system
initialize postgresql server:
/usrl/psql-12/bin/postgresql-12-setup initdb postgresql
Go to /opt/pgsql/12/data/, edit pg_hba.conf:
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
Start Postgres server using the following command:
systemctl start postgresql
Unpack database archive and prepare and load db. In psql command prompt , make database named class4_dnl.
Here is how you enter into Postgres prompt:
Here is how you create .a Postgres database:
create database class4_dnl;
create user webbackend superuser login;
After that, you navigate to the folder where you unpacked database files
psql -U postgres class4_dnl <schema.sql
psql -U postgres class4_dnl <data.sql
Then you can install Python Backend:
pip3 install falcon-rest-1.0.14.tar.gz
In the directory /opt/denovo_v6 copy contend of the switch binaries
Create directory web and put content of the UI archive there
Go to the dir where api_dnl is and run following commands:
pip3 install –U pip
pip3 install filename_api_dnl.tar.gz
Create file named denovo.conf in the /etc/nginx/conf.d/ and put following:
server {
listen 80;
server_name localhost;
root /opt/denovo_v6/web;
index index.html index.htm;
client_max_body_size 320m;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
try_files $uri $uri/ @rewrites;
}
location @rewrites {
rewrite ^(.+)$ /index.html last;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
systemctl start dnl_softswitch, dnl_livecall, dnl_tools dnl_webhelper dnl_api_dnl, dnl_api_dnl_worker@0 dnl_api_dnl_worker@1 dnl_api_dnl_worker@2 dnl_api_dnl_beat
Also make sure that redis and nginx is running, if you have firewall enabled, add port for the web ui into it
For the switch you need also to open ports in firewall if you are using it:
Default ones are 4319/udp , 5060/udp
After all is started you should be able to open UI on the ip address of your machine, and take rest configuration from there.
You must setup Selinux according to instruction here in order for UI to show up.