Since last time, we worked on docs, the configuration management API, IFTTT, CI, the Twin API, router config backup, poller performance, Catheter and Nephron, and the new UI and geomaps.

Github Project Updates

Internals, APIs, and Documentation

  • Bonnie and Mark continued their work on cleaning up and rearranging the admin guide docs.
  • Patrick, Tikayat, and Shankar did more work on the new configuration backend.
  • Christian did some SSL-related bug fixes to the IFTTT integration.
  • I did more work cleaning up CircleCI build issues.
  • Chandra worked on making the Twin API reuse the existing GRPC IPC port and server.
  • Stefan worked on wrapping up his changes to make health-check calls asynchronous.
  • Stefan documented the Cortex integration for Nephron.
  • Stefan cleaned up some extra dependencies in the Minion client.
  • Chandra worked on updating the Twin API to support incremental/partial updates.
  • Marcel worked on daemon reload docs.
  • Chandra, Maxim, Jesse, and Freddy worked on a prototype to back up router configs.
  • Stefan worked on some performance improvements to the poller.
  • I released updated Catheter and Nephron packages.
  • Dustin worked on the Kafka implementation of the Twin API.

Web, ReST, UI, and Helm

  • Sagar did more work on provisiond configuration editing in the new UI.
  • Jane continued her work on implementing the vue-based geomap.
  • Freddy did more work on the configuration ReST API.


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

  • Benjamin Reed
  • Bonnie Robinson
  • Chandra Gorantla
  • Christian Pape
  • Dustin Frisch
  • Freddy Chu
  • Jane Hou
  • Jesse White
  • Marcel Fuhrmann
  • Mark Mahacek
  • Maxim Brener
  • Patrick Schweizer
  • Sagar Salunkhe
  • Shankar Suman
  • Stefan Wachter
  • Tikayat Mohanta
  • Tripti Bansal

Breaking Changes Coming in Horizon 29

With Horizon 29 slated for next month, I wanted to take a moment to note some changes that are coming.

Along with a bunch of bug fixes and enhancements, we have a couple of things that are changing significantly that it's worth noting.

  1. OpenNMS will run as non-root by default.
    However, because it is possible to have a significant number of resources
    writing files into the $OPENNMS_HOME/share directory, we will not automatically
    fix ownership of those files on upgrade, because it could take an indeterminate
    amount of time to run chown on the entire shared data tree.

    Be prepared for some downtime while upgrading.

  2. Amazon SQS support for communicating with Minion will be removed.
    RPC communication and the handling of configuration are changing significantly
    enough that we would need to rewrite the SQS component and we don't believe
    it to be in wide deployment, compared to using gRPC or Kafka.

Release Roadmap

Upcoming November Releases

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

The next OpenNMS release day is November 10th, 2021.

We currently expect the first release in the Horizon 29 series, as well as a Meridian 2021 update.

Next Horizon: 29 (Q4 2021)

The next major Horizon release will be Horizon 29.

The current roadmap for Horizon 29 includes the following goals:

  • running as non-root by default
  • refactor the Minion's communication to get rid of out-of-band ReST calls to the OpenNMS core
  • add support for persistence of flows to Cortex

Next Meridian: 2022 (Q1 2022)

The current expectation is that we will release Meridian 2022 in Q1 of next year. It will be based on Horizon 29 plus any bug fixes that happen between November and the Meridian release.


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

  • NMS-4951: Provisiond never generates nodeCategoryMembershipChanged events
  • NMS-13463: Implement Kafka broker for Object replication ( Twin)
  • NMS-13542: Geo-Map: implement the Acknowlege/Unackowlege... on Alarm grid page
  • NMS-13590: The implementation of HealthCheck.performAsyncHealthCheck is not async
  • NMS-13595: Geo-Map: move map center to selected node while double click the row in the Node grid
  • NMS-13620: geo-map: swap the position of "Alarms" and "Nodes" tab and fix typo "label"
  • NMS-13623: Move Admin Web UI section under Horizon Administration
  • NMS-13625: Move "search" topic under "Administrative Web Interface"
  • NMS-13626: Move Enabling RMI to Horizon Administration section
  • NMS-13628: Move system properties under Horizon Administration
  • NMS-13630: geo-map: Have default sort column
  • NMS-13631: geo-map: disable the hidden filter beside the column name
  • NMS-13655: Lock contention when processing large volume of REST API requests
  • NMS-13666: Handle Publisher Restart for Grpc
  • NMS-13687: Fix JtiTelemetryIT smoke test

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.
Published On: October 25th, 2021Last Updated: October 25th, 20214 min readTags: , , , , , , , , , , , , , , , , , , ,