ScopTel configuration

Configure High Availability Telephony server

Background

The ScopTEL IP PBX supports different methods for High Availability and replication of MySQL databases; this article will explain the easiest way to configure two (2) servers in a Main / Main Server (Circular) scenario using RSYNC to synchronize Asterisk and /tftpboot directories.

We will show how to replicate the configuration, voicemail, and prompts from the Master with the IP address 192.168.192.79  to a Backup (192.168.192.60) using a Floating IP Address (192.168.192.50 /24).

 

Requirements

Both servers must use the ScopServ installation disk (ISO).  The image is available to download at http://download.scopserv.com/iso/

You must absolutely use version scopserv-server-7.9.4.0.20220404 or greater, scopserv-network-7.1.0.6.20220406 or greater, scopserv-telephony25-7.4.28.0.20220404-2  or greater.

Databases

If MySQL Replication is not enabled then the standalone database is 'scopserv'
The scopserv database includes all server and network/firewall settings etc... so enabling MySQL Replication creates the 'scopserv_repl' database excluding those settings so that they are not overwritten during replication.
To revert to the standalone database you may disable MySQL Replication but you will lose all changes applied to the scopserv_repl database.

To backup 'scopserv_repl' and restore it to a standalone server:
mysqlcheck scopserv_repl -r (this will check and repair the database before backing it up)
mysqldump scopserv_repl > scopserv.sql (will backup scopserv_repl and save the file scopserv.sql to /root)
Copy the scopserv.sql file to a remote location and then upload a copy to the replacement server's /root directory
On the new server execute:
mysql scopserv < scopserv.sql
NOTE: you will have reconfigure your license and network settings if you convert HA to standalone.
 

Recommendations

We highly recommend that you update all packages to the latest versions. To proceed, go to Server -> Packages Manager and click on Update Now.

If you are planning to use DRDB and not RSYNC we strongly recommend reading the ‘DRBD User’s Guide’ available at http://www.drbd.org/users-guide-8.3/ that covers all aspect of Shared Storage (DRBD), including troubleshooting information.




Preparing your Network Configuration

The floating IP address is a dedicated IP address used by both the Master and Backup

It is recommended, though not strictly required, that you run your RSYNC replication over a dedicated connection. The most reasonable choice for this is a direct, back-to-back, Gigabit Ethernet connection using IP addresses in the same subnet. If you cannot use IP addresses in the same subnet then you cannot implement a floating IP address and bind Asterisk to a single IP address.


The Floating IP address

Allows any SIP User Agents to bind to a single IP address for SIP traffic without having to configure a primary and backup SIP Registrar and/or SIP Proxy. This means that if the Master and Backup and Floating IP are not on the same subnet then any SIP phones must be configured with the Master and Backup server addresses. SIP carriers which use static IP's to handle incoming and outgoing PSTN traffic can only bind to a single IP address so in these cases the Floating IP address is mandatory.

If you are configuring a floating IP address then you must configure the Asterisk SIP channel to bind to the floating IP




In cases where the Floating IP address cannot be used then the option must be disabled





Here is an example of a Yealink Phone template configured to use the Floating IP address.





Here is an example of a Yealink Phone template configured to use a Primary and Backup IP address when the Floating IP address cannot be used.




– In these examples the Floating IP Address that will be used by VoIP devices is set to 192.168.192.50

– The Master Server will use IP Address 192.168.192.79

– The Backup Server will use IP Address 192.168.192.60

It is very important that both servers can reach each other using IP address or Hostname. On both servers, go to Network -> Configuration and verify that the specified hostname matches. On Network -> Static Hosts,  you can create a hostname for each server or configure local DNS A records on a local DNS Server.


Firewall Requirements


If each server is behind a firewall then the necessary open ports for MySQL Replication and Heartbeat are:
3306/tcp 2224/tcp 3121/tcp 5403/tcp 5404/udp 5405/udp
22/tcp is required for RSYNC
In the ScopTEL Firewall you can add these ports using Add a new Inbound Service




Heartbeat and RSYNC Configuration

The heartbeat service checks to see if the Master server is reachable and if it isn't shuts down asterisk and scopserv_realtime on the Master and starts those services on the Backup server and vice versa. It is critical that these services aren't running on both servers. Therefore on the Telephony Manager page these services will appear as locked.

To ensure that files are replicated for /var/spool/asterisk/voicemail /var/spool/asterisk/monitor /tftpboot /var/lib/asterisk/sounds/custom /varlib/asterisk/moh you must enable rsync Replication
And on the Master server you must execute from ssh this command:
ssh-keyinstall -s IP_<Address_of_Backup_Server>




MySQL Configuration

Before configuring this section make sure that any Pop Up Blockers on your Web Browser are disabled for each server.

On both servers, go on Server -> MySQL Server -> Configuration and check the options Enable TCP/IP listenening and Enable High Availability Support and fill in the required fields.
Set the Mode to Main/Main Server (Circular) on both the Master and the Backup.
Set the Server Role for the Master to Main Server
Set the Server Role for the Backup Server to Backup Server.
Clive Save when done.
Once both Servers are fully configured reboot them.



Services Status and Verification

To check status navigate to Server|General and you will see current status as well as options to change Standby.

If there are errors after a reboot click on Resynchronize Database.




    • Related Articles

    • ScopTEL IP PBX Software - Basic Installation Hierarchy for Telephony Server

      Basic Installation Hierarchy for Telephony Server Therefore the purpose of this document is to provide a visual walkthrough of a very basic but functional installation for one tenant. This tutorial does not include an overview of the overall network ...
    • Enable Instant Messaging (XMPP) Service on ScopTEL PBX

      We will look at how to setup an Instant Messaging server on ScopTEL PBX using a free and open source XMPP based IM server. Openfire is a real time collaboration (RTC) server dual-licensed under the Open Source GPL and commercially. It uses the only ...
    • ScopTEL Telephony Feature List

      ScopTEL Telephony Feature List ScopTEL has many applications and many Enterprise PBX features. This is a list of PBX Features. Feature Name Extended Description Fax Server Fax to Email Email to Fax (Clientless) Per User Licensing Model Customizable ...
    • Module 3 - ScopTEL IP PBX Software - Server Installation Wizard

      "root" login In order to login to the Linux CLI you must login as the root user Type root Enter the default root password ‘scopserv’ omitting the ‘ To change the default root password then after a successful root login type ‘passwd’ omitting the ...
    • How to implement Skill Based Routing (ACD) on ScopTEL PBX

      Skills Based Routing Definition The following is the Wikipedia definition for Skills Based Routing: “Skills based routing (SBR) is a call assignment strategy used in call centers to assign incoming calls to the most suitable agent, rather than simply ...