Upgrading your SIPIS installation

Backing Up

We recommend that you create a full backup of your SIPIS machine regularly. When doing SIPIS upgrades (or when moving SIPIS to a different machine) your backup needs to include at least the following items:

  • Files from /etc/sipis/ (usually sipis.key and Settings.xml)
  • Your TLS certificates and keys.
  • The sipis database (it is unusable without sipis.key file).
  • Your username and password for Acrobits’ repository (however, you can get a new one from Acrobits).

Configuration files version

Occassionally we make changes to a default configuration file. In that case the upgrade process will ask you if you want to replace the configuration file by the new version. This is Debian’s package manager asking you. If this happens, you should answer No so that you keep your currently-installed version.

New version from the package will be installled with the suffix .dpkg-dist. If you answered Yes, your version will be renamed by adding suffix .dpkg-old. In both cases you should check the differences between the old and new version to decide what settings you think are best for you.

Note

If you answer Yes you may get an error saying FATAL:  password authentication failed for user "sipis". While it may sound scary, it just means that our script could not connect to your database. Restore Settings.xml file and run /usr/share/sipis/upgrade.py

Regular upgrading

Regular upgrading means upgrading without moving between Debian versions. This upgrade is usually as simple as running

apt-get update && apt-get upgrade

The upgrade will stop SIPIS server, install a new version and start it again.

Note

This upgrades all Debian packages. If you want to upgrade only SIPIS, run apt-get update && apt-get install sipis.

Important

Make sure that you have only this server set up as NotificationServer in your Settings.xml file: <NotificationServer Name="*" Host="pnm.cloudsoftphone.com" Port="6552" Premium="No" RequiresTls="Yes" />

Migrating to a different server

Migrating SIPIS installation to a different machine is fairly straightforward procedure.

  • Do a clean installation of SIPIS on the target machine.
  • Stop SIPIS on both source and target machines.
  • Move the database between the machines: that means dropping the database on the new server (if you created it), and importing the database from the old server.
  • Copy contents of /etc/sipis to the new server (replacing ones from the installation).

Upgrading to Debian 9 – Stretch

We replaced the parts of SIPIS infrastructure in the new version of SIPIS for Debian 9 Stretch. The upgrade to new Debian version (and new versions of SIPIS) requires several manual steps. We assume that you are running Debian 8 Jessie which hosts only SIPIS installed using our installation guide and no other service. Even if that is not the case, you or your system administrator should be able to use this guide to do the upgrade.

Note

If you want to use new SIPIS in Debian 8 Jessie, you can use SIPIS from our Stretch repository. In the first step change only Acrobits.list file and skip step 5 (upgrading postgres database). We did not push these updates to Jessie repository because they require manual changes to configuration.

  1. Update addresses to Debian repositories. In the files /etc/apt/sources.list (this is for Debian upgrade) and /etc/apt/sources.list.d/Acrobits.list (this is for SIPIS upgrade) replace every occurence of jessie with stretch. For example the Acrobits.list file should now read.

  2. Run:

apt-get update
apt-get dist-upgrade

This will install a new version of Debian and new version of SIPIS package. However, there are more steps that need to be done.

  1. Install our new package named loadbalancer2 that will replace bridgetcpudp package:
apt-get install loadbalancer2
  1. Remove file /etc/stunnel/tcpudpbridge.conf if it exists (if you are using TLS).
  2. Upgrade postgresql database from 9.4 (default in Debian 8 Jessie) to 9.6 (default in Debian 9 Stretch). The following three commands should do this:
pg_dropcluster --stop 9.6 main
pg_upgradecluster 9.4 main
pg_dropcluster 9.4 main
  1. Edit /etc/sipis/Settings.xml file and change Server Port from 4998 to 14998 (do NOT change Name parameter) For example:
<Server Name="SipisOne" Address="0.0.0.0" Port="14998" />
  1. If you use TLS, edit file /etc/acrobits/LoadBalancer2/Settings.xml:

    • Uncomment Tls section.
    • Uncomment Certificate and PrivateKey in DefaultTlsOptions section.
    • Provide path to Certificate and PrivateKey.

Warning

Certificate and PrivateKey must be readable by user sipis.

  1. Enable start of LoadBalancer2:

    systemctl enable LoadBalancer2.service
    
  2. Reboot the machine