Basic Upgrade Steps

This procedure describes how to do a basic Meridian upgrade. You may need to complete additional steps to upgrade in a more complex setup (running more than one OpenNMS instance, database migration requirements, and/or age of current version).

Make sure you complete the tasks in the before you begin section before starting. In addition, if system requirements in the new version require you to upgrade your PostgreSQL database, you must do this before the Meridian upgrade.

Update and verify the Meridian repository

  • CentOS/RHEL

Your Meridian repository is defined in a file in /etc/yum.repos.d/. It may be named Meridian.repo, but is not guaranteed to be.

  1. Become root.

  2. Use the text editor of your choice to edit your Meridian repository config to change the baseurl of the repository from the old release family to the new release family. Similar to the following: /https://REPO_USER:REPO_PASS@meridian.opennms.com/packages/2021/stable/rhel8, where REPO_USER and REPO_PASS are your Meridian subscription credentials.

  3. Enable auto updates:

    yum -y install yum-utils
    yum-config-manager --enable opennms-repo-stable-*
  4. Purge any cached yum data:

    yum clean all
  5. Make a backup copy of your OpenNMS config:

    rsync -Ppav ${OPENNMS_HOME}/etc /tmp/etc.orig
    rsync -Ppav${OPENNMS_HOME}/jetty-webapps/opennms/WEB-INF /tmp/opennms-web-inf
  6. Upgrade the Meridian packages to the new version:

    yum -y upgrade opennms
  7. Disable auto updates:

    yum-config-manager --disable opennms-repo-stable-*
  8. Upgrade Java 11 to the latest release:

    yum -y install java-11-openjdk java-11-openjdk-devel
  9. Execute runjava to update which JVM Meridian will use:

    ${OPENNMS_HOME}/bin/runjava -s
  10. Check for configuration file changes, and update accordingly, using the files you backed up in Idenfity Changed Configuration Files.

    If you upgrade in place, OpenNMS renames any shipped config that conflicts with an existing user-modified config to .rpmnew or .rpmsave. Inspect these files manually and reconcile the differences. Use diff -Bbw and diff -y to look for changes. If any .rpmnew or .rpmsave files exist within the configuration directory, services will not start.
  11. Run the Meridian installer:

    ${OPENNMS_HOME}/bin/install -dis

    The upgrade may take some time. The message Upgrade completed successfully! will confirm the upgrade has completed. If you do not get this message, check the output of the install command for any error messages.

  12. Clear the Karaf cache:

    yes | ${OPENNMS_HOME}/bin/fix-karaf-setup.sh
  13. Start OpenNMS Meridian:

    systemctl start opennms.service
    tail -F ${OPENNMS_HOME}/logs/manager.log can illustrate the current point in the startup process Meridian is.
  14. Upgrade is complete and operation is resumed.

PostgreSQL upgrade and configuration

Refer to the PostgreSQL documentation for information on how to upgrade a PostgreSQL database. You may also find this Upgrading PostgreSQL article on Discourse useful.

You must stop the OpenNMS service while doing maintenance on database services.