It's time once again for OpenNMS On the Horizon.

Since last time, we worked on documentation (daemons, ILR, device config backup, SCV, pollerd, passive status keeper, loop detector, BSM), topology maps and graph API tests, CI/CD for Horizon and Horizon Stream, smoke test improvements, Guava, Horizon Stream (Minion, events, detectors/scanning, Kubernetes, Keycloak, UI), Newts, opaque SNMP types, ALEC, Aruba switch configs, OIA, Telemetryd, Karaf, and UI improvements.

Github Project Updates

Internals, APIs, and Documentation

  • Antonio wrapped up adding Linkd layer/protocol view support to the topology maps, plus worked on fixing some graph API smoke tests.
  • Jason worked on CI/CD for Horizon Stream.
  • Gerald continued to work on development environment stuff for Stream.
  • Alexander did some work on cleaning up test API internals.
  • Morteza worked on CI/CD improvements for the Horizon build.
  • Bonnie worked on documentation for daemons and ILR.
  • I continued to work on updating Guava to a newer version.
  • Chandra wrote some documentation for Juniper device configuration backup, SCV, and poller threads.
  • Mark worked on docs for the passive status keeper, loop detector, and BSM.
  • Arthur continued to work on Minion support in Horizon Stream.
  • Gerardo worked on event serialization in Stream.
  • I worked on some dependency updates in Newts.
  • Dmitri did more work on opaque SNMP datatype support.
  • Arthur worked on getting simple detectors loading in Stream.
  • Benjamin Janssens did more ALEC algorithm work.
  • Jason worked on some Kubernetes ingress config for Stream.
  • Mark worked on inventory scanning in Stream.
  • Alberto added Aruba AOS-CX switch configs.
  • Gerald did more work on Keycloak config in Stream.
  • Chandra fixed an archetype issue in OIA.
  • Freddy worked on fixing Telemetryd shutdown issues.
  • Freddy did some enhancements to the stress-metrics Karaf command.
  • Morteza worked on optimizing some of our CircleCI image sizes.
  • Jesse worked on ALEC updates.

Web, ReST, UI, and Helm

  • Chinh Le did more work on topology, thread pool configuration, and IPv6 validation in the new UI.
  • Yang Li added user-management endpoints to the Stream REST API.
  • Mike Rose worked on login in Stream.
  • Christian removed some outdated support stuff from the help page.
  • Lars worked on some improvements to the notification UI.
  • Scott worked on some cleanups to sorting in the DCB UI.
  • Pushkar worked on a bug in event/alarm advanced search not passing parameters properly.
  • Jesse worked on exposing an ALEC UI through OIA.
  • Pushkar fixed an issue with map pins in the UI.


Thanks to the following contributors for committing changes since last OOH:

  • Jesse White
  • Chinh Le
  • Pushkar Suthar
  • Mark Frazier
  • Chandra Gorantla
  • Gerald Humphries
  • Arthur Naseef
  • Morteza Ershad-Manesh
  • Freddy Chu
  • Christian Pape
  • Jason Berry
  • Benjamin Reed
  • Scott Theleman
  • Alberto Ramos
  • Lars Schreiber
  • Benjamin Janssens
  • Bonnie Robinson
  • Mark Mahacek
  • Gerardo Montecon
  • Dustin Frisch
  • Dmitri Herdt
  • Mike Rose
  • Yang Li
  • Antonio Russo
  • Alexander Chadfield

Releases and Roadmap

Upcoming June Releases

OpenNMS is on a monthly release schedule, with releases happening on the second Wednesday of the month.

The next OpenNMS release day is June 8th, 2022.

We currently expect the initial release of Horizon 30, plus Meridians 2019 through 2022.

Next Horizon: 30 (Q2 2022)

The next major Horizon release will be Horizon 30.

Horizon 30 is currently expected to have the following features:

  • the start of a new Vue-based UI using the Feather Design System
  • thresholding support for Flow data
  • initial work moving configuration from XML files to the database -- the first config file implemented on top of the new system will be provisiond-configuration.xml
  • support for running OIA plugins on Minion and Sentinel
  • support for backing up router configuration files

Next Meridian: 2023 (Q1 2023)

Meridian 2023 is early in its development cycle, but you can expect it to contain, at the very least, the work that's going into Horizon 30.


Note that this is just based on current plans; dates, features, and releases can change or slip depending on how development goes.

The statements contained herein may contain certain forward-looking statements relating to The OpenNMS Group that are based on the beliefs of the Group’s management as well as assumptions made by and information currently available to the Group’s management. These forward-looking statements are, by their nature, subject to significant risks and uncertainties.

...We apologize for the excessive disclaimers. Those responsible have been sacked.

Mynd you, møøse bites Kan be pretti nasti...

We apologise again for the fault in the disclaimers. Those responsible for sacking the people who have just been sacked have been sacked.

Until Next Time…

If there’s anything you’d like me to talk about in a future OOH, or you just have a comment or criticism you’d like to share, don’t hesitate to say hi.

- Ben

Resolved Issues Since Last OOH

  • HS-24: Migrate the provisiond module
  • HS-47: create keycloak utils
  • HS-51: Schedule interviews for the activity board
  • HS-73: User Self-host non-dev local env
  • HS-76: K8s Testing with Cucumber
  • HS-92: Add in memory cache for Keycloak user role lookup in REST server
  • HS-96: Investigation of Keycloak login page design limitations vs. feature access
  • HS-110: Create the PM/PO part for the agile cross team
  • HS-111: Run the classic Minion in DEV with Skaffold
  • HS-120: Reenable the validating webhook
  • HS-131: Megamenu navbar component: site search
  • HS-133: customizable dashboard: UX research
  • HS-134: site search: UX research
  • HS-142: Horizon Stream External IT - don't use the Horizon BOM
  • HS-146: Add keycloak themes folder to dev deployment
  • NMS-10393: there is no documentation on the instrumentation log reader
  • NMS-11042: LoopMonitor & detector
  • NMS-11052: Document PassiveServiceMonitor
  • NMS-14203: Add new KPIs to datachoices telemetry
  • NMS-14207: Add docs for SCV
  • NMS-14263: TEST: Provisioning config UI / thread pool sizes
  • NMS-14264: Test provisioning config UI / external requisitions
  • NMS-14266: Rogue opennms-tools/phonebook/pom.xml
  • NMS-14280: Remove "Commercial Support" ticket lookup from web ui support section
  • NMS-14301: DCB: Allow TFTP Port to be Parameterized in Script
  • NMS-14318: DCB UI: History and Compare should only display one config type
  • NMS-14324: DCB Rest API: Order by Location and Backup Status
  • NMS-14332: features/topology: update branch with develop
  • NMS-14337: Correct errors on Business Service Monitoring docs
  • NMS-14341: features/topology: upgrade dependencies
  • NMS-14342: features/topology: right panel menu is not reactive to sublayer context menu
  • NMS-14345: External Requisition UI: Thread pools adjust upper bound validation
  • OIA-38: Fix OIA archetype

Jump to section

About the Author: RangerRick

Principal Software Engineer. Manages the release process of OpenNMS Horizon and Meridian, and a bunch of other stuff.