12. Software Upgrade

12.1. Release Notes
12.2. Upgrade sip:provider CE from previous mr4.4/mr4.5 versions to mr4.5.9 LTS version
12.3. Upgrade sip:provider CE from previous mr3.8 LTS version to mr4.5.9 LTS version

12.1. Release Notes

The sip:provider CE version mr4.5.9 has several important changes comparing to the previous release. Please find the complete changelog in our release notes on our WEB site.

12.2. Upgrade sip:provider CE from previous mr4.4/mr4.5 versions to mr4.5.9 LTS version

The sip:provider CE system upgrade to mr4.5.9 will perform a couple of fundamental steps:

  • Verify APT source lists
  • Upgrade NGCP software packages
  • Upgrade NGCP configuration templates
  • Upgrade NGCP DB schema
  • Upgrade the base system within Debian (v8) to the latest package versions
[Warning]

ensure you are using Sipwise APT repositories. Public Debian mirrors may not provide packages for old Debian releases anymore. Also they can be outdated. Consider to use Sipwise repositories for the time of upgrade.

Execute the following commands as root:

echo "# Please visit /etc/apt/sources.list.d/ instead." > /etc/apt/sources.list

mkdir -p /etc/apt/sources.list.d
for file in /etc/apt/sources.list.d/*.list ; do mv "${file}" "${file}.DISABLED" ; done

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
cat > /etc/apt/sources.list.d/debian.list << EOF
# Debian repositories, deployed via upgrade ${NGCP_CURRENT_VERSION}->mr4.5.9
deb https://debian.sipwise.com/debian/ jessie main contrib non-free
#deb-src https://debian.sipwise.com/debian/ jessie main contrib non-free
#
deb https://debian.sipwise.com/debian-security/ jessie-security main contrib non-free
#deb-src https://debian.sipwise.com/debian-security/ jessie-security main contrib non-free
#
deb https://debian.sipwise.com/debian/ jessie-updates main contrib non-free
#deb-src https://debian.sipwise.com/debian/ jessie-updates main contrib non-free
EOF

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
cat > /etc/apt/sources.list.d/sipwise.list << EOF
# NGCP_MANAGED_FILE
# Sipwise repository, deployed via upgrade ${NGCP_CURRENT_VERSION}->mr4.5.9
deb https://deb.sipwise.com/spce/${NGCP_CURRENT_VERSION}/ jessie main
#deb-src https://deb.sipwise.com/spce/${NGCP_CURRENT_VERSION}/ jessie main
EOF

Run "apt-get update" and ensure you have no warnings/errors here.

For upgrading the sip:provider CE to release mr4.5.9, execute the following commands:

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
sed -i "s/$NGCP_CURRENT_VERSION/mr4.5.9/" /etc/apt/sources.list.d/sipwise.list
apt-get update
apt-get install ngcp-upgrade-ce

Run the upgrade script as root like this:

ngcp-upgrade
[Note]

sip:provider CE can be upgraded to mr4.5.9 from previous release mr4.4.* or previous builds mr4.5.* only. The script ngcp-upgrade will find all the possible target releases for the upgrade and allow to choose the proper one.

[Note]

If there is an error during upgrade, the ngcp-upgrade script will request you to solve it. Once you’ve fixed the problem just re-execute ngcp-upgrade again and it will continue from the previous step.

The upgrade script will ask you to confirm that you want to start. Read the given information carefully, and if you agree, proceed with y.

The upgrade process will take several minutes, depending on your network connection and server performance. After everything has been updated successfully, it will finally ask you to reboot your system. Confirm to let the system reboot (it will boot with an updated kernel).

Once up again, double-check your config file /etc/ngcp-config/config.yml (sections will be rearranged now and will contain more parameters) and your domain/subscriber/peer configuration and test the setup.

When all finishes successfully check that replication is running. Check ngcp-status. Finally, do a basic functionality test. Check web interface, register two test subscribers and perform a test call between them to ensure call routing works.

[Note]

You can find a backup of some important configuration files of your existing installation under /var/backup/ngcp-mr4.5.9-* (where * is a place holder for a timestamp) in case you need to roll back something at any time. A log file of the upgrade procedure is available at /var/backup/ngcp-mr4.5.9-*/upgrade.log.

12.3. Upgrade sip:provider CE from previous mr3.8 LTS version to mr4.5.9 LTS version

The sip:provider CE system upgrade from mr3.8 LTS version to mr4.5.9 LTS version will perform a couple of fundamental steps:

  • Verify APT source lists
  • Upgrade Debian from version 7 (wheezy) to version 8 (jessie)
  • Upgrade NGCP software packages
  • Upgrade NGCP configuration templates
  • Upgrade NGCP DB schema
  • Upgrade the base system within Debian 8 (jessie) to the latest package versions
[Warning]

ensure you are using Sipwise APT repositories. Some public Debian mirrors may not provide wheezy packages anymore! Execute the following commands as root:

echo "# Please visit /etc/apt/sources.list.d/ instead." > /etc/apt/sources.list

mkdir -p /etc/apt/sources.list.d
for file in /etc/apt/sources.list.d/*.list ; do mv "${file}" "${file}.DISABLED" ; done

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
cat > /etc/apt/sources.list.d/debian.list << EOF
## custom sources.list, deployed via upgrade ${NGCP_CURRENT_VERSION}->mr4.5.9
#
# Debian repositories
deb http://debian.sipwise.com/debian/ wheezy main contrib non-free
#deb-src http://debian.sipwise.com/debian/ wheezy main contrib non-free
#
deb http://debian.sipwise.com/debian-security/ wheezy-security main contrib non-free
#deb-src http://debian.sipwise.com/debian-security/ wheezy-security main contrib non-free
#
deb http://debian.sipwise.com/debian/ wheezy-updates main contrib non-free
#deb-src http://debian.sipwise.com/debian/ wheezy-updates main contrib non-free
EOF

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
cat > /etc/apt/sources.list.d/sipwise.list << EOF
# NGCP_MANAGED_FILE - do not remove this line if it should be automatically handled
#
# Sipwise repository
deb http://deb.sipwise.com/spce/${NGCP_CURRENT_VERSION}/ wheezy main
#deb-src http://deb.sipwise.com/spce/${NGCP_CURRENT_VERSION}/ wheezy main
EOF

Run "apt-get update" and ensure you have no warnings/errors here.

[Note]

Re-check you have all the latest packages/hotfixes installed, execute as root:

apt-get update && apt-get upgrade && \
ngcp-update-db-schema && ngcp-update-cfg-schema && \
ngcpcfg apply

ensure you have 0 everywhere below apt-get upgrade output:

> ... && apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

For upgrading the sip:provider CE from mr3.8 LTS version to mr4.5.9 LTS release, execute the following commands as root:

NGCP_CURRENT_VERSION=$(cat /etc/ngcp_version)
sed -i "s/$NGCP_CURRENT_VERSION/mr4.5.9/" /etc/apt/sources.list.d/sipwise.list
sed -i 's/wheezy/jessie/g' /etc/apt/sources.list.d/sipwise.list
rm -f /etc/apt/sources.list.d/dell.list
apt-get update
apt-get install ngcp-upgrade-ce
[Note]

sip:provider CE can be upgraded to mr4.5.9 from mr3.8 LTS only. Run the upgrade script as root like this:

ngcp-upgrade
[Note]

If there is an error during upgrade, the ngcp-upgrade script will request you to solve it. Once you’ve fixed the problem just re-execute ngcp-upgrade again and it will continue from the previous step.

The upgrade script will ask you to confirm that you want to start. Read the given information carefully, and if you agree, proceed with y.

The upgrade process will take several minutes, depending on your network connection and server performance. After everything has been updated successfully, it will finally ask you to reboot your system. Confirm to let the system reboot (it will boot with an updated kernel).

Once up again, double-check your config file /etc/ngcp-config/config.yml (sections will be rearranged now and will contain more parameters) and your domain/subscriber/peer configuration and test the setup.

When all finishes successfully check that replication is running. Check ngcp-status. Finally, do a basic functionality test. Check web interface, register two test subscribers and perform a test call between them to ensure call routing works.

[Note]

You can find a backup of some important configuration files of your existing installation under /var/backup/ngcp-mr4.5.9-* (where * is a place holder for a timestamp) in case you need to roll back something at any time. A log file of the upgrade procedure is available at /var/backup/ngcp-mr4.5.9-*/upgrade.log.