What’s New in OpenNMS Horizon 22

System Requirements

Java 8: OpenNMS Horizon 22 requires Java 8 as the runtime environment.
To run Horizon 22, we recommend the most recent version of Oracle JDK 8 for your platform.

PostgreSQL 9 or higher: Horizon 22 requires Any supported version PostgreSQL 9 or higher.
As of this writing, PostgreSQL 9.3 is the earliest version under active support, but OpenNMS is known to work with at least PostgreSQL 9.1 and up.

Important Upgrade Notes

All collectors using the JMXSecureCollector, MX4JCollector or JBossCollector must be migrated to use the Jsr160Collector instead.

All monitors using the JBossMonitor or JMXSecureMonitor must be migrated to use the Jsr160Monitor instead.

All detectors using the JBossDetector or MX4JDetector must be migrated to use the Jsr160Detector instead.

The index creation of the Elasticsearch ReST plugin has changed and is now configurable. Please refer to Index Properties.

The Elasticsearch ReST plugin no longer supports ElasticSearch version 2.4. A version >= 5.x must be used.

All JavaScript code in OpenNMS has been unified under a single build system. While we did quite a bit of testing of the resulting changes, it’s possible something was missed. If you run into any JS-related issues in the UI please create an issue.

The default database access implementation is now using HikariCP, rather than C3P0. This will probably not affect you (other than give better performance) but could affect unusual workloads.

Backshift is now the default rendering engine for graphs.

Configuration of the Elasticsearch ReST plugin

The configuration of the Elasticsearch ReST plugin has been changed.
Some properties have new defaults and have been renamed.
It is now also possible to define index settings and provide a index strategy to have more control over the index creation.

Changed Properties with new defaults

Some properties of the plugin have changed.
The following table shows the old (no longer supported) and the new property name, as well as the new default, which is used if the configuration is not updated manually.
Please update the configuration file etc/org.opennms.plugin.elasticsearch.rest.forwarder.cfg accordingly.
For more details on how to configure the plugin to use elasticsearch refer to Configure Elasticsearch.

Index Properties

It is now possible to define index-related properties, e.g. the number of shards and replicas.
It is also possible to define a property elasticIndexStrategy to determine if a hourly, daily, monthly or yearly index should be created.
It defaults to monthly.

The index creation of the Elasticsearch ReST plugin has changed and is now configurable. Please refer to Index Properties.

The Elasticsearch ReST plugin no longer supports ElasticSearch version 2.4. A version >= 5.x must be used.

By default the data collection gathered data twice from SNMP agents supporting the MIB-II with 32bit and 64bit counter on network interfaces.
The default 32bit interface counters are now disabled by default and only 64bit counters are collected.

If you have legacy SNMP agents which only support 32bit interface counters, the data collection for this interfaces will stop after you upgraded to 22.0.0.
To get them enabled, you have to create a data collection package and add the mib2-interfaces data collection group manually for this devices with the example below.

Example to collect 32bit MIB-2 Interface counter from nodes in a category configured in collectd-configuration.xml

New Features

Telemetryd (Drift)

The focus of OpenNMS Horizon 22 is the introduction of support for consuming and indexing flow data in a new subsystem called Telemetryd (code name: Drift).

Telemetryd supports receiving real-time telemetry data in a variety of formats, including JTI (Junos Telemetry Interface), Netflow 5 and 9, IPFIX, SFlow, and Cisco NX-OS.
Data is then stored in Elasticsearch for display using the OpenNMS Grafana-based companion application, Helm.

Accessing flow data from Helm requires Helm 2.0 or higher.

SNMP Session Tracking

To aid in debugging problematic SNMP hosts, an SNMP session tracker/logger has been added.

By default it will print a summary of the top 10 oldest threads every 60 seconds to the SNMP debug log.

It can be enabled by adding org.opennms.core.snmp.trackSessions=true in opennms.properties (or a file in opennms.properties.d).

To change how often the summary is printed, set org.opennms.core.snmp.trackSummaryDelay=number-of-seconds.

To change how many sessions are posted to the debug log, set org.opennms.core.snmp.trackSummaryLimit=number-of-sessions.

New/Updated Device Support (Data Collection and/or Traps)

AsyncOS Mail

Cisco Virtual CallManager

Dell (OpenManage cooling devices, temperature probe, and power usage)

Net-SNMP disk I/O and load

Changelog

Release 22.0.4

Release 22.0.4 is the latest stable release of OpenNMS.
It contains a number of bug fixes and enhancements, including fixes in upgrades, flows, date handling, topology UI performance, and minion management.
For a high-level overview of what’s changed in OpenNMS 22, see What’s New in OpenNMS 22.

Set the default resource graph time range to "Last Day" (Issue NMS-10324)

Memory related env-variables from /etc/sysconfig/minion are not honored (Issue NMS-10332)

Release 22.0.3

Release 22.0.3 is the latest stable release of OpenNMS.
It contains a critical fix for RADIUS support, as well as a number of smaller bug fixes and enhancements.
For a high-level overview of what’s changed in OpenNMS 22, see What’s New in OpenNMS 22.

Breaking Changes

A security issue in the RadiusAuthenticatinProvider has been fixed (Issue NMS-10212).
This requires changes to the radius.xml file located in ${OPENNMS_HOME}/jetty-webapps/opennms/WEB-INF/spring-security.d.
Now instead of providing a bean for the authTypeClass property, it is sufficient to just provide the class name:

Release 22.0.2

Release 22.0.2 is the latest stable release of OpenNMS.
It contains a number of bug fixes and enhancements, including partial support for custom date formatting in the web UI.
This will be expanded to cover the entire web UI in an upcoming release.
For a high-level overview of what’s changed in OpenNMS 22, see What’s New in OpenNMS 22.

Add additional fields to the alarms and events generated by the Kafka Producer (Issue NMS-10263)

Release 22.0.1

Release 22.0.1 is the latest stable release of OpenNMS.
It contains a number of bug fixes and enhancements, including an update to Drools 7, performance improvements to the flow exporter ReST endpoint, and new karaf shell tools for diagnosing nodes.
For a high-level overview of what’s changed in OpenNMS 22, see What’s New in OpenNMS 22.

Release 22.0.0

Release 22.0.0 is the latest stable release of OpenNMS.
It contains a large number of bug fixes and enhancements, most notably adding support for real-time telemetry flow processing.
For a high-level overview of what’s changed in OpenNMS 22, see What’s New in OpenNMS 22.