OpenNMS On the Horizon – Docs, Vue UI, Config API, JDK17, Time-Series, Docker, Kafka, Nephron, Catheter, Health Check, ReST

Since last time, we continued to work on documentation improvements and a new experimental Vue-based UI, plus the unified config API, JDK17 support, Time-Series API enhancements, Docker image improvements, Kafka CollectionSet enhancements, Nephron and Catheter, Health Check, and ReST query fixes.

Github Project Updates

Internals, APIs, and Documentation

  • Patrick worked on implementing reading the Vacuumd configuration in the new config API.
  • Patrick made some collection API updates to use regular matching.
  • I did more fiddling with OpenJDK 17 support.
  • Patrick worked on some more time-series API improvements.
  • Jian worked on documenting ActiveMQ tuning, plus some other documentation improvements.
  • Marcel added diffutils to the Horizon Docker image.
  • Ronny updated the docs for tuning Kafka.
  • Mark continued his work on improving Provisiond documentation, plus some other doc updates.
  • I worked on a number of bugfixes related to running OpenNMS as root.
  • Stefan worked on improvements to Nephron's handling of late and out-of-order data.
  • Bonnie has been working on making table layouts in the new documentation better.
  • Chandra worked on some fixes to the Kafka producer to split large collection sets into chunks.
  • Chandra also added some additional useful fields to the CollectionSet protobuf.
  • Ronny moved some dependencies to the base deployment Docker image so that updates download fewer changes.
  • Stefan worked on improvements to the Catheter test harness for Nephron.

Web, ReST, UI, and Helm

  • Jerry worked on a basic ReST server for the config API.
  • Jane made some improvements to the health check ReST API.
  • Mike worked on some more UI plumbing for the new Vue3 UI mockup, including sidebar changes and search.
  • I worked on fixing IP interface querying by SNMP primary type in the ReST interface.

Contributors

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

  • Benjamin Reed
  • Bonnie Robinson
  • Chandra Gorantla
  • Jane Hou
  • Jerry Beuree
  • Jesse White
  • Jian Yet Lee
  • Marcel Fuhrmann
  • Mark Mahacek
  • Mike Rose
  • Patrick Schweizer
  • Ronny Trommer
  • Stefan Wachter

Release Roadmap

Reminder: New Release Schedule

(Reposting from last OOH, in case you missed it.)

As this month shows, it turns out to be kind of a pain to come back from a holiday and immediately try to put out releases.

After looking at the calendar, where holidays lie, and what works best for fitting into sprints, we have decided to move the release day forward.

The new release schedule is: second Wednesday of the month.

This means the July releases move foward to Wednesday, July 14th.

July Releases

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

The next OpenNMS release day is July 14th, 2021.

We currently expect a Horizon 28.0.1 release, plus updates for all supported Meridian releases.

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
  • start the groundwork for replacing the topology UI with a pure-javascript version

Next Meridian: 2022 (Q? 2022)

With Meridian 2021 recently out, we do not yet have a specific timeline for Meridian 2022.

Expect it to include -- at the very least -- the JDK11 requirement and flow aggregation improvements from Horizon 28.

Ideally it will contain work going into Horizons 29 (and probably 30) if our timeline holds. 😅

Disclaimer

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-13191: Improve usability and self-contained features of the Kafka Producer payload for metrics
  • NMS-13407: Limit CollectionSet size in Kafka Producer to less than 1MB.
  • NMS-13412: The PageSequenceMonitor keys host and virtual-host are confusing
  • NMS-13415: Installation with non-root user failes on CentOS 8
  • NMS-13417: Starting opennms with systemd as non-root fails with access denied for pid
  • NMS-13425: Docs: Add configuration example in tuning activemq
  • NMS-13426: Misc documentation fixes
  • NMS-13432: Remove remote repository dependencies during Minion OCI build
  • NMS-13433: Only publish Docker images when system tests are green

28