Preparing an EL7 server for upgrade to R8

Preparing an EL7 server for upgrade to R8

Background

This article will not cover the upgrade path from EL6 to EL7 because EL6 is End of Life.
CentOS7 is also no longer supported as an operating system, but the official scopserv repos for EL7 are still updated and backported as of 07/11/2026
It is advised that before backing up an existing EL7 system for a backup and restore upgrade to Rocky8 that the EL7 server is fully updated.
This will prepare the source server and allow the sanity of the updates to be confirmed prior to any cutover.
It is recommended to do the EL7 updates during a scheduled maintenance window.
It is also recommended that prior to performing any massive updates to the production server that you back up its current state for forced recovery.
And keep a copy of any mysqldump files backed up and saved externally.
This is standard best practice when preparing a server for replacement.

Preparing the EL7 server

Do not attempt this procedure using a reverse tunnel as the tunnel may stop during the updates and leave unfinished transactions.

Convert the MyISAM to InnoDB to remove locking

First download the conversion script (php version agnostic).
Connect by ssh:
wget --no-check-certificate -O /var/www/scopserv/telephony/scripts/migrate_database.php https://scm.scopserv.com/files/4/d/4/4d4b93b806ce5f881a8726cfb6628536.phps

Then execute the script:

php -q /var/www/scopserv/telephony/scripts/migrate_database.php


Backup the server before updating

Copy the backup files to an external file system so they can be restored elsewhere when needed.
If the EL7 server is a VM then backup the machine.
Purpose:
A working server and config in case a reversion is necessary.
Best practice before updating any server.


Kill asterisk so it doesn't deadlock during updates


Find the asterisk pid:
ps aux |grep asterisk

Then kill the pid:
kill -KILL <pid>

Update the packages

scopserv_yum update

rm all .lock file in ~scopserv/telephony/scripts/upgrade/ directory using:
rm -f /var/www/scopserv/telephony/scripts/upgrade/*.lock

Then run the update script:
php /var/www/scopserv/telephony/scripts/update

Verify that all deprecated nodejs and npm is removed:
rpm -e nodejs --nodeps
rpm -e npm --nodeps

rm -rf /usr/local/nvm/
This remove all "remaining" files which included a node.js 10 version which ScopSERV no longer supports.

scopserv_yum install nodejs

service scopserv_realtime restart


Configure Performance Tuning in MySQL Server

Disable any popup blockers on your browser for this site and edit the MySQL server|Performance Tuning.
Once you save your changes a popup will appear and restart the mysql service.




Start Asterisk

service asterisk start

Check Service Status

service scopserv_realtime fullstatus
pm2 status
asterisk -vr

Once all packages are updated execute a full backup and restore to Rocky 8

Copy the backup files to an external file system so they can be restored elsewhere when needed.
Updating the EL7 server prior to migration is the ideal method to ensure that the source backup is sane and has no issues prior to restore.
Best practice.