Upgrading to 1.6.0

This chapter describes the upgrade of an existing installation to version 1.6.0 with the installer’s update mode, what the installer does and does not do, and the step that has to follow every upgrade from a 1.5.x version.

Before the upgrade

  1. Take a snapshot of the virtual machine.

  2. Dump the databases and copy the configuration. The installer does not make a backup.

    mysqldump --single-transaction nacoma > nacoma.sql
    mysqldump --single-transaction merlin > merlin.sql
    mysqldump --single-transaction nachos > nachos.sql
    tar czf naemon-etc.tgz /opt/naemon/etc
    tar czf energy-monitor-etc.tgz /etc/energy-monitor
    
  3. Check that the licence files are in /etc/energy-monitor-license. Licence validation runs after the services are stopped, and a failed validation leaves the system down.

  4. Plan a maintenance window. The system is unavailable for the whole upgrade.

  5. Make sure the host can reach the package repositories, or prepare the offline packages. The installer adds the Docker repository and removes the runc package.

Running the upgrade

./install.sh update

The update mode stops rrdcached, mariadb, httpd, lmd, merlind, npcd, naemon and php-fpm, validates the licence, updates the packages, installs the cmdb and intelligence packages if they are missing, and configures Redis, OpenSearch, Statusengine, retention and the web server timeouts.

Warning: The update mode removes the rtmin and rtmax metrics of PING services from OpenSearch. This cannot be undone. It also switches SELinux to permissive mode permanently and clears the SSSD cache.

After the upgrade: enable the new modules

Version 1.6.0 introduces four modules with their own permissions: cmdb_access, integrations_access, ai_access and agents_access. The permissions file /etc/energy-monitor/auth_groups.yml is a configuration file and is not replaced during an upgrade, so existing groups do not receive the new permissions. Until they do, every user, administrators included, gets 403 Forbidden on CMDB, Integrations, AI Control and Agents.

  1. Log in as an administrator.

  2. Open Manage -> Configuration -> Group Rights.

  3. For each group that should use the new modules, enable cmdb_access, integrations_access, ai_access and agents_access.

  4. Save.

The package ships the default permissions of 1.6.0 next to the existing file as /etc/energy-monitor/auth_groups.yml.rpmnew; use it as a reference for which groups get which permission by default. A fresh 1.6.0 installation does not need this step.

Verification

  • systemctl status naemon merlind lmd httpd php-fpm opensearch

  • The About page shows Release 1.6.0.

  • The Monitor Cluster Status widget shows the expected number of hosts and services.

  • CMDB, Integrations, AI Control and Agents open without 403.

  • One availability report generates, one service graph draws.

Known issues

  • In one upgrade from 1.5.5 to 1.6.0 OpenSearch did not start together with the intelligence package. Check systemctl status opensearch after the upgrade.

  • There is no dry-run mode. The way back is the snapshot and the dumps taken before the upgrade.