Preface
This guide describes the upgrade process of icom Router Management Server (On-Premises). It assumes that you have a working icom Router Management Server installation 2025.03.0 that has been installed using the icom Router Management Server (On-Premises) Install Guide after June 2024. If you have installed icom Router Management Server (On-Premises) before September 2023, please contact our support hotline to schedule a migration because there have been breaking changes in the folder structure and naming in general.
Supported version
icom Router Management Server (On-Premises) Version 2025.03.0
Preparations
Backup PostgreSQL database
Backup your PostgreSQL database before you start the upgrade process. You can use the pg_dump
command to create a backup of your database.
sudo -i -u postgres pg_dump -d insysicomroutermgmt -f /tmp/insysicomroutermgmt_backup.bin -Fc
Only if necessary, restore the database with the pg_restore
command:
sudo -i -u postgres pg_restore -d insysicomroutermgmt /tmp/insysicomroutermgmt_backup.bin -Fc
Upgrade preparations
Stop the insysicom-routermgmt systemd service.
sudo systemctl stop insysicom-routermgmt
Stop the insysicom-autoupdate systemd service.
sudo systemctl stop insysicom-autoupdate
Backup the old binaries.
sudo cp /opt/insysicom-routermgmt/bin/insysicom-routermgmt /opt/insysicom-routermgmt/bin/insysicom-routermgmt.old
sudo cp /opt/insysicom-routermgmt/bin/insysicom-autoupdate /opt/insysicom-routermgmt/bin/insysicom-autoupdate.old
Download the new version from the INSYS icom Router Management Cloud or from the link provided by our support team. Copy the zip file to your server. Create a directory in your home and copy the installation zip file irm_linux_2025_09_0.zip into this directory.
mkdir dist
unzip irm_linux_2025_09_0.zip -d dist
ls -aFl dist
You should see the insysicom-routermgmt
and insysicom-autoupdate
binaries aswell as the static frontend files www
in the dist directory.
Mark the new binaries as executable if the ls
command did not show the executable flag indicated by *
behind the file name. Static files should be owned by the insysicom-routermgmt user.
For the insysicom-routermgmt binary:
sudo chown insysicom-routermgmt:insysicom-routermgmt dist/insysicom-routermgmt
sudo chmod +x dist/insysicom-routermgmt
For the static frontend files:
sudo chown -R insysicom-routermgmt:insysicom-routermgmt dist/www
For the insysicom-autoupdate binary:
sudo chown insysicom-routermgmt:insysicom-routermgmt dist/insysicom-autoupdate
sudo chmod +x dist/insysicom-autoupdate
Upgrade process
Upgrade application server
Copy the new binaries to the correct location.
sudo cp ./dist/insysicom-routermgmt /opt/insysicom-routermgmt/bin/
sudo cp ./dist/insysicom-autoupdate /opt/insysicom-routermgmt/bin/
Set required environment variables and run the database migrations.
Migrate the database for the insysicom-routermgmt service.
sudo -i -u insysicom-routermgmt
/opt/insysicom-routermgmt/bin/insysicom-routermgmt system upgrade -c /opt/insysicom-routermgmt/etc/insysicom-routermgmt.conf
exit
Migrate the database for the insysicom-autoupdate service.
set -a
source /opt/insysicom-routermgmt/etc/insysicom-autoupdate.env
set +a
/opt/insysicom-routermgmt/bin/insysicom-autoupdate -migrate
The result should be Migration completed successfully
or No pending migrations
, depending on the current state of the database.
Delivering the Frontend
With version 2025.09.0 static frontend files are being delivered separately from the application. In our case nginx will act as a static file server for them.
Start by copying the frontend files to the correct location:
sudo cp -r ./dist/www /opt/insysicom-routermgmt/www
Adapt the nginx config for the servers on port 80 and/or 443:
sudo vi /etc/nginx/sites-available/insysicom-routermgmt
/etc/nginx/sites-available/insysicom-routermgmt
server {
...
client_max_body_size 300M;
client_header_timeout 600;
client_body_timeout 600;
send_timeout 600;
proxy_read_timeout 600;
# - delete this block
location = / {
return 301 /ui;
}
location /ui/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:9203;
}
# -
# + add this block
gzip on;
gzip_proxied any;
gzip_http_version 1.1;
gzip_comp_level 5;
gzip_min_length 256;
gzip_vary on;
gzip_types text/css text/javascript text/xml text/plain application/javascript application/x-javascript application/json;
location = / {
return 302 /ui/;
}
location /ui/ {
root /opt/insysicom-routermgmt/www;
index index.html;
try_files $uri $uri/ /ui/index.html;
}
# +
location /api/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:9203;
}
...
Replace the locations /
and /ui/
with additional settings and content, delivering the files in www
.
If applicable, also change these locations in the https server block.
Save the configuration and check it with the following command:
sudo nginx -t
Change command for autoupdate systemd service
The command for starting the autoupdate service has changed. Without the following command change, devices might not leave the state Not Configured.
Open the systemd service file for the autoupdate service.
sudo vi /etc/systemd/system/insysicom-autoupdate.service
Change the command for ExecStart
to the following one.
/etc/systemd/system/insysicom-autoupdate.service
[Unit]
...
[Service]
...
ExecStart=/opt/insysicom-routermgmt/bin/insysicom-autoupdate -serve-all
[Install]
...
Reload the systemd daemon to apply the changes.
sudo systemctl daemon-reload
Start application server
sudo systemctl restart nginx
sudo systemctl start insysicom-routermgmt
sudo systemctl start insysicom-autoupdate
Confirm upgrade
Confirm that both services are active and running.
sudo systemctl status insysicom-routermgmt
sudo systemctl status insysicom-autoupdate
Should the autoupdate service not be running, try restarting it.
sudo systemctl restart insysicom-autoupdate
Visit the icom Router Management Server (On-Premises) web interface and check its availability and the version number in the system information menu or use curl to do so.
curl http://localhost:9203/api/admin/software-version