Planet OpenNMS

September 26, 2022

OpenNMS On the Horizon – September 26th, 2022

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

Since last time, we worked on pyroscope profiling, CircleCI improvements, documentation (Grafana dashboard, Quick Start guide, Trapd, graphQL notification query, requisition REST), Horizon Stream (Minion gateway and heartbeat, operator improvements, JMX, Helm charts, PagerDuty, discovery), Sonar bug fixes, OPA (Poller Config and time-series offheap persistence), SNMPv3 traps, Enlinkd, Graphite time-series, smoke tests, flow classification, Provisiond config validation, SNMP metadata provisioning, Helm improvements, ALEC UI, startup progress bar, and web form fixes.

Github Project Updates

Internals, APIs, and Documentation
  • DJ worked on adding support for Pyroscope profiling
  • Morteza tested out reducing build container sizes for RPM/Debian builds
  • Morteza worked on cleaning up some output in the dynamic config scripts
  • Mark Mahacek worked on the grafana dashboard docs
  • Bonnie and Emily did more work on the quick start guide including performance data, system baseline, and thresholding info
  • Morteza fixed some issues in experimental build triggering in dynamic config
  • Mark Frazier did some more work on the Minion gateway in Horizon Stream
  • Yang Li worked on bringing some JMX code over to Stream
  • Gerald did some more work on Helm charts in Stream
  • I worked on cleaning up some leftover Sonar stuff from DevJam
  • Łukasz continued his work on twin/RPC for the Minion gateway
  • Arthur worked on some SNMP utility and testing code in Stream
  • Emily cleaned up the JDK references and some other formatting in the deployment guide
  • Jeffrey-David Kapp worked on some namespace code for the Keycloak operator in Stream
  • I fixed the ActiveMQ initialization to happen lazily so it doesn't yell if not configured
  • James updated the Stream PagerDuty integration to attach alarm details to the payload
  • Chandra continued his work on discovery in Stream
  • Dmitri worked on poller config support in OPA
  • Freddy continued to work on OPA time-series persistence
  • Arthur and Mark Frazier added Minion heartbeat processing in Stream
  • Alex implemented no-op message processors for ignoring spurious chunks in SNMPv3 traps
  • Bonnie added Trapd to the daemon reference
  • I did a bunch of optimization work in our CircleCI pipeline to reduce network usage
  • Antonio refactored the NetworkBuilder used in Enlinkd tests
  • Antonio worked on Enlinkd per-protocol scheduling intervals
  • Alexander worked on fixing the flapping BSM admin integration test
  • Thomas worked on usage statistics in Stream
  • Dustin did more work on flow classification improvements
  • Dmitri added some validation to Provisiond config loading
  • Scott improved the Graphite time-series adapter to support setting the node in groovy scripts
  • Antonio updated our InetAddress tools to include some Netmask-related utility functions
  • Gerald refactored a bunch of configs related to startup in Stream
  • Sean added support for keeping some metadata when the SNMP provisioning adapter runs
  • Jason Berry worked on a bunch of Horizon Stream CI/CD improvements
  • Morteza worked on security scanning our Docker images when we build them
  • DJ implemented a startup progress bar
  • Antonio worked on an improved bridge topology algorithm in Enlinkd
Web, REST, UI, and Helm
  • I cleaned up some branch merge and other CircleCI stuff in Helm
  • Chinh Le worked on the Horizon Stream events table
  • I worked on updating some dependencies in our JavaScript build
  • Anya worked on filtering in the ALEC UI, as well as some bug cleanup
  • Mike Rose fixed up some UI dynamic import code in Stream
  • Christian added CSRF tokens to a bunch of web forms
  • James added graphQL support for notification queries in Stream
  • Emily updated the requisition REST documentation
Contributors

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

  • Antonio Russo
  • DJ Gregor
  • Emily Marsh
  • Arthur Naseef
  • Benjamin Reed
  • Bonnie Robinson
  • Jason Berry
  • Morteza Ershad-Manesh
  • Yang Li
  • Łukasz Dywicki
  • Mark Frazier
  • Freddy Chu
  • Benjamin Janssens
  • Dmitri Herdt
  • James Hutchinson
  • Christian Pape
  • Chinh Le
  • Sean Torres
  • Dustin Frisch
  • Gerald Humphries
  • Chandra Gorantla
  • Scott Theleman
  • Anya Rybalova
  • Mark Mahacek
  • Mike Rose
  • Alexander Chadfield
  • Jeffrey-David Kapp
  • Thomas Bigger
  • Alex May
  • Rob Ellis
  • Patrick Schweizer

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming September Releases

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

The next OpenNMS release day is October 12th, 2022.

We currently expect updates to Horizon 30.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
  • a bunch of improved analytics in our datasources plugin
  • support for Hashicorp Vault in SCV
  • promoting a number of the "UI preview" enhancements to become part of the main UI
  • improvements to the requisitions REST API
  • a new Quick Start Guide in the documentation
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • HELM-346: Docs for 8.0.1 did not publish
  • HS-249: Grafana support in the Operator
  • HS-252: Stabilize local-sample/ & Sync It with Skaffold Build
  • HS-318: GeoMap and Topology Contextual Actionable Intelligence LF Wireframes
  • HS-337: Stats: Create platform module for data choices
  • HS-338: Stats: Make REST call to post data choices to UsageStatsHandler
  • HS-362: FE - Add events and metric to device page
  • HS-363: FE - Use widget to display device event table
  • HS-364: Auto update config to subscribed modules
  • HS-366: Single Keycloak operator instance
  • HS-369: Once opennms/horizon-stream-notification repo has been added to Dockerhub, create a github actions pipeline to publish it
  • HS-379: Add Event Driven Discovery for Trapd
  • HS-394: Notifications: Add alarm to custom details
  • HS-396: Migrate and save JMX config in Json config store.
  • NMS-12629: Trapd is missing in the docs
  • NMS-14158: provide documentation for DCB feature
  • NMS-14220: Leaflet geo-map bug roundup
  • NMS-14221: H30 upgrades should not hurt
  • NMS-14222: Things that need updating to work well with Grafana 8.x
  • NMS-14223: Dependencies that need upgrading in H30
  • NMS-14241: Enable authorized web users to edit config files in OPENNMS_HOME/etc
  • NMS-14251: Make sure the DCB config files are in working order
  • NMS-14647: Cortex TSS release prep
  • NMS-14659: MOS CDR Processor: Tie to node
  • NMS-14670: DCB fails on newly provisioned nodes
  • NMS-14672: Velocloud API v1 / v2 support
  • NMS-14711: Release Work (September)
  • NMS-14718: Duplicate V3 trap security names causing spurious errors on non V3 traps
  • NMS-14752: On saving of the provisiond configuration must be ensured, that all requsition-def's have unique names
  • NMS-14756: Update QS based on ONMSU feedback
  • NMS-14762: Refactor Enlinkd Test NetworkBuilder Class
  • NMS-14764: Set Up Enlinkd schedule time interval based on protocols
  • NMS-14770: MOS CDR Processor: Send to multiple OpenNMS instances
  • NMS-14774: Add network/netmask tools to InetAddressUtils
  • NMS-14775: Ability to Assign Device Configuration Backup to Foreign Source

by RangerRick at September 26, 2022 10:18 PM

September 21, 2022

OpenNMS.js v2.5.1

2.5.1 is a small release with just dependency updates, most notably moment.js and moment-timezone, plus minor bumps to Grafana dependencies.

What's Changed

  • build(deps-dev): bump typescript from 4.8.2 to 4.8.3 by @dependabot in #402
  • build(deps-dev): bump eslint from 8.23.0 to 8.23.1 by @dependabot in #403
  • build(deps-dev): bump @babel/preset-env from 7.19.0 to 7.19.1 by @dependabot in #404
  • build(deps): bump core-js from 3.25.0 to 3.25.2 by @dependabot in #406
  • build(deps-dev): bump @babel/plugin-transform-runtime from 7.18.10 to 7.19.1 by @dependabot in #407
  • build(deps): bump @babel/runtime-corejs3 from 7.19.0 to 7.19.1 by @dependabot in #408
  • build(deps-dev): bump typedoc from 0.23.14 to 0.23.15 by @dependabot in #409
  • build(deps-dev): bump @babel/core from 7.19.0 to 7.19.1 by @dependabot in #410
  • build(deps-dev): bump @antora/cli from 3.1.0 to 3.1.1 by @dependabot in #411
  • build(deps-dev): bump @antora/site-generator-default from 3.1.0 to 3.1.1 by @dependabot in #412

Full Changelog: v2.5.0...v2.5.1

by RangerRick at September 21, 2022 02:51 PM

September 19, 2022

OpenNMS On the Horizon – September 19th, 2022

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

Last week was DevJam, so keep that in mind when you get excited about some of the projects you see. ;)
Plenty of these are proof-of-concept work that may or may not make it into a release.

Anayway, since last time, we worked on Horizon Stream (Minion RPC and gateway, operator improvements, hashicorp vault support, device UI and events), documentation (quick start guide, grafana, flows), OpenTelemetry, VNC integration, Sonar (CI workflow, bug fixes), Enlinkd scheduling and OSPF area support, and hashicorp vault SCV integration (including REST).

Github Project Updates

Internals, APIs, and Documentation
  • DJ continued his work on moving from OpenTracing to OpenTelemetry
  • Łukasz did more work on Minion RPC in Horizon Stream
  • Arthur, Łukasz, and Mark continued the work on the Minion gateway in Stream
  • Thomas worked on a proof-of-concept VNC integration
  • Dmitri started to add support to OPA for adding poller config
  • Dustin did more work on twin API filter improvements
  • I worked on cleaning up our Sonar CI workflows(s)
  • Maxim, Benjamin Janssens, Ivan, Kim, and I worked on fixing issues detected by Sonar
  • Antonio continued his work on improving Enlinkd collection scheduling
  • Dustin and Freddy worked on adding support for flow processing to the Minion
  • Gerald did more work on operator workflow with Skaffold/Tilt in Stream
  • Jerry switched a bunch of Stream's configs to use hashicorp vault storage
  • Chandra worked on hashicorp vault support in SCV
  • I fixed a bug in our CircleCI integration test "changed project" detection that could cause it to build more than it needed to
  • Bonnie continued to work on improving the Quick Start Guide
  • Mark Mahacek worked on updated Grafana documentation
  • Alberto worked on adding OSPF area support to Enlinkd
  • Dino updated flow documentation
Web, REST, UI, and Helm
  • Chinh Le continued his work on the device UI and event display in Horizon Stream
  • Alex worked on a REST endpoint for SCV and vault config
Contributors

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

  • Dustin Frisch
  • Antonio Russo
  • Łukasz Dywicki
  • Mark Frazier
  • Benjamin Reed
  • Chinh Le
  • Freddy Chu
  • Chandra Gorantla
  • Arthur Naseef
  • Alberto Ramos
  • Maxim Brener
  • DJ Gregor
  • Christian Pape
  • Benjamin Janssens
  • Alex May
  • Dmitri Herdt
  • Ivan Trechekas
  • Thomas Bigger
  • Jerry Beuree
  • Dino Yancey
  • Mark Mahacek
  • Bonnie Robinson
  • Gerald Humphries
  • Emily Marsh

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

September 2022 Releases - Horizon 30.0.3, Meridians 2022.1.7, 2021.1.19, 2020.1.27, 2019.1.38

In September, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.3.

Meridian Stable Updates

Meridians 2019.1.38, 2020.1.27 , 2021.1.19 , and 2022.1.7 contains a couple of bug fixes.

For a list of changes, see the release notes:

Horizon 30.0.3

Release 30.0.3 contains quite a few bug fixes as well as number of small features and security fixes.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.3 is Chipmunk.

OpenNMS Helm 8.0.1

Helm 8.0.1 is primarily a bugfix release.

It contains a number of small fixes and enhancements to improve querying of nodes and interfaces.

It also contains a large number of node dependency updates.

Please note that Helm is still targeted to Grafana 8.
Work is underway to update to support Grafana 9.

Upcoming September Releases

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

The next OpenNMS release day is October 12th, 2022.

We currently expect updates to Horizon 30.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
  • more stuff, which I haven't had a chance to go back and enumerate yet, watch this space :D
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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-12449: Remote Poller with Minion
  • NMS-13880: Deprecate Blackberry templates
  • NMS-14747: Error using javax.mail.* packages in plugins

by RangerRick at September 19, 2022 03:58 PM

September 14, 2022

September 2022 Releases – Horizon 30.0.3, Meridians 2022.1.7, 2021.1.19, 2020.1.27, 2019.1.38

In September, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.3.

Meridian Stable Updates

Meridians 2019.1.38, 2020.1.27 , 2021.1.19 , and 2022.1.7 contains a couple of bug fixes.

For a list of changes, see the release notes:

Horizon 30.0.3

Release 30.0.3 contains quite a few bug fixes as well as number of small features and security fixes.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.3 is Chipmunk.

by Morteza Ershad-Manesh at September 14, 2022 02:58 PM

September 12, 2022

OpenNMS On the Horizon – September 12th, 2022

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

Since last time, we worked on documentation (quick start guide, ALEC, partial config updates, cortex time-series), Horizon Stream (notifications, unit/integration test, ignite detector client, operator, Minion gRPC, Grafana, Keycloak, map UI, widgets, trap processing), SNMP metadata provisioning, ALEC (release work and UI), dynamic CI config, datachoices (notifications and outages, poller fixes), Enlinkd collection scheduling, Docker, offheap storage, dependabot updates, filter rules, Sonar, OpenTelemetry, and Helm.

Github Project Updates

Internals, APIs, and Documentation
  • Sean updated the SNMP metadata provisioning adapter to support incremental changes in addition to replacing all metadata
  • Bonnie and Emily did more work on the quick start guide
  • Benjamin Janssens worked on prepping a new ALEC release, including doc build cleanups and fixing Sonar issues
  • Morteza made some tweaks to the circleci dynamic config
  • James continued his work on notifications support in Horizon Stream
  • I fixed some docker container images relating to ping capabilities
  • Pushkar worked on notifications and outages for datachoices telemetry
  • Mark worked on the ignite detector client in Stream
  • Antonio continued his work refactoring Enlinkd's collection scheduling
  • Gerald got the ignite detector integrated into Skaffold and worked on some other operator fixes in Stream
  • Łukasz refactored some service code for spring injection in Stream
  • Jeffrey-David Kapp did more work on operator startup config for Stream
  • I did some other tuning of docker images
  • Thomas added some asset fields to the database in Stream
  • Freddy did more work on offheap storage improvements
  • Dmitri worked on updating the documentation related to partial config updates
  • Bonnie wrapped up doc changes for the cortex time-series plugin
  • Mark Frazier worked on Minion gRPC routing in Stream
  • Dustin worked on support for generics in the twin API
  • Alexander worked on a fix for accessing the poller config in the device config service
  • Jason worked on enabling github action test runs in Stream
  • I cleaned up the default changes in a jsoup dependabot update
  • Jason tuned memory consumption in the default Stream setup to be less hungry
  • Jeffrey-David Kapp added Grafana and Keycloak to the Kubernetes CRD in Stream
  • I did more work on backporting circle and docker changes to H30 and Meridian 2022
  • Dustin refactored some of the code for how filter rules are tracked
  • I fixed some issues triggered by Sonar as I prepped to make sure sonar submissions are working properly
  • DJ continued his work on OpenTelemetry integration
Web, REST, UI, and Helm
  • Chinh Le continued his work on the map in Horizon Stream
  • Chinh Le started on a device status UI for Stream
  • Mike Rose did more work on improving widgets in the Stream UI
  • Alberto wrapped up a bunch of Helm improvements
  • Chandra worked on REST APIs for event-driven discovery from traps in Stream
  • Anya worked on tests and coverage in the ALEC UI
Contributors

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

  • DJ Gregor
  • Jason Berry
  • Mark Frazier
  • Chinh Le
  • Dustin Frisch
  • Łukasz Dywicki
  • Alexander Chadfield
  • Benjamin Reed
  • Bonnie Robinson
  • Morteza Ershad-Manesh
  • Chandra Gorantla
  • Antonio Russo
  • Jesse White
  • Thomas Bigger
  • Jeffrey-David Kapp
  • Benjamin Janssens
  • Emily Marsh
  • James Hutchinson
  • Dmitri Herdt
  • Gerald Humphries
  • Anya Rybalova
  • Pushkar Suthar
  • Freddy Chu
  • Sean Torres
  • Yang Li
  • Alberto Ramos
  • Rob Ellis
  • Mike Rose

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

OpenNMS.js 2.5.0 Released

OpenNMS.js 2.5.0 contains a bunch of dependency updates including a move to core-js v3 for compatibility, as well as a few build system cleanups, fixes for querying SNMP interfaces by node ID and a query fix for 0-indexed enums.

Upcoming September Releases

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

The next OpenNMS release day is September 14th, 2022.

We currently expect updates to Horizon 30 and all supported Meridian releases.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
  • more stuff, which I haven't had a chance to go back and enumerate yet, watch this space :D
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Open Source Summit Europe - Dublin, Ireland - September 13th through 16th

We are a silver sponsor this year for Open Source Summit, and will be hosting a booth in the exhibition area.

Craig Gallen and some of the crew from Belfast will be there, so pop on by and say hello.

Open Source Day 2022 - September 16th

The OpenNMS Group is proud to support Grace Hopper Conference's Open Source Day (OSD) 2022, and our very own Sandy Skipper is serving on the OSD Steering Committee.

OSD is an all-day hackathon in which participants of all skill levels learn about open source while contributing to projects designed to solve real world problems.
The goal is to celebrate and encourage women in open source.

OSD will take place as a pre-event on Friday, September 16 from 8am - 3pm PDT. Participation is open to anyone who has a GHC registration ticket (in-person or virtual).

For more information, contact Sandy Skipper or see the OSD site.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-179: Tests on Situation Detail and situation metrics
  • HELM-334: Entity Datasource does not provide node information
  • HELM-345: Alarm Details missing TroubleTicketState if state is 0
  • HS-201: Backend: New Notification Service
  • HS-203: DevOps: New Notification service
  • HS-241: Add Cucumber IT for validating minion end point
  • HS-286: Add Trapd support in Stream
  • HS-295: Integrate KeyValueStore ( PostgresJsonStore) into Horizon Stream
  • HS-296: Add Config Service
  • HS-299: Setup instructions for local-sample dir
  • HS-304: FE - Display list of devices in the geomap table
  • HS-329: Tag / Surveillance Category Membership View / Edit Panel and Add to Placeholder Device Status Page
  • HS-334: Add Grafana DB config to Devops and test default dashboard.
  • HS-335: FE - Widget component & grid layout
  • HS-336: Stats: Local Environment setup in Docker for HS Stats testing
  • HS-345: BFF: Impove the BFF performace
  • HS-346: FE - Add new device status route / container component
  • HS-347: Configure in memeory cache in BFF for backend request.
  • HS-352: Nonblock requst from BFF to platform core
  • HS-356: Propagate Skaffold --skip-tests flag into custom maven builds
  • HS-358: Use Liquibase for notification database
  • HS-360: UX competitive analysis board in Figjam on Kentik
  • HS-378: BFF migration to Webflux broke context path config
  • HS-383: Add all images we build to HS CRD
  • NMS-13864: Package description for Minion and Sentinel reference Wiki
  • NMS-14360: BmpIT flapping
  • NMS-14522: Add CAP_NET_BIND_SERVICE capability to the java binary to bind privileged ports
  • NMS-14582: Add KPI for DCB cumulative web UI entries
  • NMS-14615: Quick Start: Import inventory
  • NMS-14623: Add KPIs for open notifications and outages to datachoices telemetry
  • NMS-14624: Add KPI for application count to datachoices telemetry
  • NMS-14648: Rename OIA to OPA in git repo
  • NMS-14667: Official docs readiness for Cortex TSS plugin release
  • NMS-14728: Add Elasticsearch 7.17.6 to Drift plugin versions

by RangerRick at September 12, 2022 04:58 PM

OpenNMS.js v2.5.0

This release contains a bunch of dependency updates including a move to core-js v3 for compatibility, as well as a few build system cleanups, fixes for querying SNMP interfaces by node ID and a query fix for 0-indexed enums.

by RangerRick at September 12, 2022 02:20 PM

September 06, 2022

OpenNMS.js v2.5.0

OpenNMS.js 2.5.0 contains a bunch of dependency updates including a move
to core-js v3 for compatibility, as well as a few build system cleanups,
fixes for querying SNMP interfaces by node ID and a query fix for
0-indexed enums.

by RangerRick at September 06, 2022 08:40 PM

OpenNMS On the Horizon – September 6th, 2022

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

Since last time, we worked on ALEC (situation datasource, UI timeline), CircleCI config improvements, device config backup telemetry, Horizon Stream (Minion gRPC, Minion gateway, ICMP/SNMP polling, traps, PagerDuty integration, operator and Skaffold, Sonar code coverage, Spring Boot, maps, and UI), Documentation (style guide, doc-writing guide, quick start, events, DCB, Cortex time-series), offheap queueing for time-series, Docker image publishing and ARM improvements, Sonar CI fixes, publishing to Maven Central, Helm queries and flows, web UI fixes, DCB analytics, partial updates for config REST.

Github Project Updates

Internals, APIs, and Documentation
  • Benjamin Janssens added some additional fields to the ALEC situation data source.
  • Morteza worked on some tweaks to the dynamic CircleCI config.
  • Alex and Alexander added an integration test for device config backup telemetry.
  • Łukasz continued his work on Minion gRPC integration in Horizon Stream, including bringing over ICMP and SNMP RPC implementations.
  • Yang Li worked on caching for the device BFF backend in Stream.
  • Bonnie did more work on the quick start documentation.
  • Chandra incorporated the config API into Stream.
  • Pushkar added application count to the datasources telemetry.
  • Alex fixed an issue with device config node telemetry.
  • Patrick worked on some fixes for unique system IDs.
  • Mark Mahacek worked on documentation for writing documentation. ;)
  • James did more work on PagerDuty support in Stream.
  • Jason made some fixes to Stream local resource usage.
  • Mark Frazier and Gerald did more work on Skaffold for Stream.
  • Emily did more work on the style guide.
  • Arthur continued his work on the Kafka Minion gateway in Stream.
  • Gerald worked on Sonar integration in the Stream build.
  • Dustin updated some event-related documentation.
  • Freddy continued to work on enhancements to offheap time-series queueing.
  • I merged my enhancements to docker container generation and publishing, including normalizing support for ARM images.
  • Gerald worked on some Spring Boot changes in the Stream Minion gateway.
  • Chandra added trap consumption to Stream.
  • I worked on fixing up issues in running Sonar code coverage.
  • Bonnie updated some device config backup documentation in the operation guide.
  • I did some preliminary work backporting dynamic config and docker changes to earlier branches.
  • I worked on what needs to be done to publish full build Maven artifacts to Central.
  • Bonnie did some more work on Cortex time-series plugin documentation.
Web, REST, UI, and Helm
  • Chinh Le continued to work on tuning device support in the Horizon Stream map.
  • Anya worked on using the ALEC situation REST datasource in the UI.
  • Alberto did some additional work on improvements to Helm queries, including node handling and flows.
  • Christian fixed some escaping in a few web element spots.
  • Rob worked on fixing an issue with device lists.
  • Scott did more work on device config backup analytics in the UI.
  • Mike Rose worked on refactoring how widgets get wrapped in the Stream UI.
  • Dmitri merged his work on partial update support in the config REST API.
Contributors

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

  • Emily Marsh
  • Alberto Ramos
  • Patrick Schweizer
  • Benjamin Janssens
  • Chandra Gorantla
  • Benjamin Reed
  • Bonnie Robinson
  • Jason Berry
  • Chinh Le
  • Anya Rybalova
  • Yang Li
  • Alex May
  • Morteza Ershad-Manesh
  • Rob Ellis
  • James Hutchinson
  • Christian Pape
  • Pushkar Suthar
  • Łukasz Dywicki

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming September Releases

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

The next OpenNMS release day is September 14th, 2022.

We currently expect updates to Horizon 30 and all supported Meridian releases.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Open Source Summit Europe - Dublin, Ireland - September 13th through 16th

We are a silver sponsor this year for Open Source Summit, and will be hosting a booth in the exhibition area.

Craig Gallen and some of the crew from Belfast will be there, so pop on by and say hello.

Open Source Day 2022 - September 16th

The OpenNMS Group is proud to support Grace Hopper Conference's Open Source Day (OSD) 2022, and our very own Sandy Skipper is serving on the OSD Steering Committee.

OSD is an all-day hackathon in which participants of all skill levels learn about open source while contributing to projects designed to solve real world problems.
The goal is to celebrate and encourage women in open source.

OSD will take place as a pre-event on Friday, September 16 from 8am - 3pm PDT. Participation is open to anyone who has a GHC registration ticket (in-person or virtual).

For more information, contact Sandy Skipper or see the OSD site.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-165: Timeline alarms
  • ALEC-173: Situation endpoint with more data
  • ALEC-175: Use new situation endpoint
  • ALEC-176: Improve getSituationStatusList endpoint
  • ALEC-177: Fixes situation metrics
  • HELM-336: Flow DS query interfacesOnExporterWithFlows() does not accept FS:FID as argument
  • HELM-337: exporterNodesWithFlows() query handles criteria differently than other queries
  • HS-315: Remove unnecessary step from main README
  • HS-320: Production build of the Vue.js app
  • HS-327: Skaffold is always triggering builds of Jib-based images like notification and rest-server, even when nothing has changed
  • HS-341: java.lang.Double on adding multiple devices
  • HS-349: Skaffold file sync stopped working in UI project
  • HS-350: Trigger SonarCloud code scanning jobs in Horizon Stream
  • NMS-13553: docs.opennms.com directory listing beautification
  • NMS-14310: provisiond config partial update
  • NMS-14449: Rest API v2 for obtaining a list of SNMP interfaces doesn't return back node id
  • NMS-14542: Event / Alarms filtering no longer works
  • NMS-14555: Development and test environment for Velocloud SD-WAN integration
  • NMS-14579: Add KPI for DCB device count by sysObjectID
  • NMS-14580: Add KPI for DCB cumulative config count
  • NMS-14581: Add KPI for DCB cumulative backup failure count
  • NMS-14626: Publish images to Docker Hub
  • NMS-14655: Appliance: Minion fails to come up with 30.0.2 and bleeding image
  • NMS-14657: Graph page doesn't escape <> in resource labels
  • NMS-14669: Dynamic Yaml generation: Simplify and improve dynamic generation
  • NMS-14673: Implement VCO API v1 authentication
  • NMS-14674: Implement Velocloud API version abstracton layer
  • NMS-14687: UI update for DCB KPI
  • NMS-14688: REST API update for DCB KPI
  • NMS-14690: Need to get Sonar Cloud runs going again.
  • NMS-14691: Dynamic Yaml generation: handle merge-foundation branch and when build-trigger override file is detected better
  • NMS-14696: Upgrade dom4j to latest version
  • NMS-14697: Investigate the failure in integration-test job
  • NMS-14706: Dynamic Yaml Generation: Code Improvements to how we detect merge-foundation branch and changes to epoch file and documentation

by RangerRick at September 06, 2022 08:15 PM

August 30, 2022

OpenNMS is now a CNA!

The security team at The OpenNMS Group has partnered with MITRE to become a Common Vulnerability and Exposures (CVE) Numbering Authority (CNA). Through the CVE program, MITRE ensures that application vulnerabilities are uniquely identified and accurately reported.

As a numbering authority, The OpenNMS Group security team will assign numbers to vulnerabilities and exposures identified within our projects and products. Any vulnerability scanning tool can use CVE numbers to help users identify and manage vulnerabilities within their infrastructure. Using unique CVE identifiers, users and stakeholders across the information security community can remain informed of vulnerabilities and how to address them.

“In our continuing effort to enhance our cybersecurity program, I am excited to take this next step of becoming a CNA,” says Jeff Jancula, Chief Information Security Officer at The OpenNMS Group. “As a CNA, OpenNMS has an avenue to transparently share security information with our customers and the open source community. CVEs also let us publicly recognize community members and customers that help improve the security of our projects. These improvements will strengthen our community relationships and help reduce risk associated with vulnerabilities.”

OpenNMS is a scalable and highly configurable open-source network management platform with comprehensive fault, performance, and traffic monitoring. OpenNMS routinely promotes responsible disclosure of potential cybersecurity vulnerabilities. Read more at opennms.com/security.

by Gabriela Lopez at August 30, 2022 01:31 PM

August 29, 2022

OpenNMS On the Horizon – August 29th, 2022

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

Since last time, we worked on documentation (cortex time-series, quick start guide, style guide, Helm entity datasource), Horizon Stream (operator/skaffold/platform updates, Grafana integration, Minion, PagerDuty and notifications, Ignite, maps, UI widgets), datachoices telemetry, SCV, Docker, Cortex time-series plugin, datacollection/thresholding, 3rd-party license reporting, ALEC APIs, system IDs, Helm, UI event parameter handling, and DCB REST updates.

Github Project Updates

Internals, APIs, and Documentation
  • Alexander did some more work on counter support for device config backup datachoices telemetry
  • Christian worked on fixing some issues with SCV initialization
  • Mark Frazier continued to work on integrating the Minion into Horizon Stream
  • Yang Li worked on Grafana integration/initialization in Stream
  • Gerald updated Stream's Docker pipeline to BuildKit
  • Gerald set up dev/prod profile support in Stream's UI deployment
  • I updated our Docker base to use Ubuntu 22 (Jammy)
  • Emily worked on the documentation style guide
  • James implemented triggering PagerDuty on alarms in Stream
  • Bonnie worked on documentation for the Cortex time-series plugin
  • Łukasz did a bunch of work on plugin support in Stream Minion
  • Dustin fixed an issue with datacollection thread-locking during threshold config changes
  • Arthur worked on various platform/skaffold deployment issues in Stream
  • Jason continued to work on cleaning up the skaffold build and local deployment in Stream
  • Morteza and I worked on fixing the 3rd-party license list generator
  • Jeffrey-David Kapp worked on more Kubernetes operator updates in Stream
  • Benjamin Janssens updated the ALEC APIs to retrieve situations based on alarm ID
  • Arthur and Łukasz continued to work on ignite integration in Stream
  • Bonnie worked on the import section of the quick start guide
  • I continued my work refactoring our docker image builds and deployments
  • Patrick worked on updates to system UUID to make container-launched OpenNMS instances easier to identify
Web, REST, UI, and Helm
  • Chinh Le continued to work on device support in the Horizon Stream maps
  • Alberto added the associated nodeId to the supported SNMP interface model in OpenNMS.js and Helm
  • Andy and Scott worked on updating Helm to move away from deprecated Angular UI plugins
  • Mark added some documentation to the Helm entity datasource section
  • Anya continued to do UI work for alarm timelines in ALEC
  • Mike Rose started working on Stream UI widget/layout improvements
  • Alex refactored event search parameter handling
  • Scott worked on device config backup REST API and UI updates
Contributors

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

  • Patrick Schweizer
  • Chinh Le
  • Christian Pape
  • Łukasz Dywicki
  • Mark Frazier
  • Alex May
  • Scott Theleman
  • Bonnie Robinson
  • Jeffrey-David Kapp
  • Benjamin Reed
  • Anya Rybalova
  • Alberto Ramos
  • Alexander Chadfield
  • Yang Li
  • Morteza Ershad-Manesh
  • Arthur Naseef
  • Gerald Humphries
  • Thomas Bigger
  • Mark Mahacek
  • Jason Berry
  • Mike Rose
  • Benjamin Janssens
  • Dustin Frisch
  • Emily Marsh
  • AndyInCalgary
  • James Hutchinson
  • Dmitri Herdt

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming September Releases

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

The next OpenNMS release day is September 14th, 2022.

We currently expect updates to Horizon 30 and all supported Meridian releases.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Open Source Summit Europe - Dublin, Ireland - September 13th through 16th

We are a silver sponsor this year for Open Source Summit, and will be hosting a booth in the exhibition area.

Craig Gallen and some of the crew from Belfast will be there, so pop on by and say hello.

Open Source Day 2022 - September 16th

The OpenNMS Group is proud to support Grace Hopper Conference's Open Source Day (OSD) 2022, and our very own Sandy Skipper is serving on the OSD Steering Committee.

OSD is an all-day hackathon in which participants of all skill levels learn about open source while contributing to projects designed to solve real world problems.
The goal is to celebrate and encourage women in open source.

OSD will take place as a pre-event on Friday, September 16 from 8am - 3pm PDT. Participation is open to anyone who has a GHC registration ticket (in-person or virtual).

For more information, contact Sandy Skipper or see the OSD site.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Experience - Paris, France - November 8th and 9th

We will be exhibiting at Open Source Experience in Paris, this year.

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-164: Get and identify accepted and rejected situations
  • ALEC-167: Figure out how to leverage Azure (and run virtual machines there).
  • ALEC-169: Alarms endpoint only retrieve the first page
  • ALEC-170: Endpoint to retrieve situations
  • HELM-340: Entities DS documentation needs more details
  • HS-128: Ability to disable operator updating of namespace
  • HS-197: Backend: Integrate Grafana into Horizon Stream
  • HS-224: UX/UI dashboard: minion/devices
  • HS-289: Integrate local-sample/to-be-added-to-operator.yaml into Operator
  • HS-305: FE - Dark mode leaflet layers
  • HS-313: Metrics shouldn't be updated when service is Down
  • HS-326: idea folder without a dot isn't being gitignored
  • HS-330: UX Prove of Concept: landing options
  • HS-332: Wrong dark mode CSS styles for modals in prod build of UI
  • HS-333: Changes for Operator
  • HS-343: Skaffold killed when grafana failed to start due to the postgres db is not ready
  • NMS-13570: Fix flaky smoke test : testHeartbeatOutages
  • NMS-14068: Create a profile that skips building licenses
  • NMS-14365: MinionHeartbeatOutageIT flapping
  • NMS-14366: MinionHeartbeatOutageKafkaIT flapping
  • NMS-14392: Create Topology Providers for Combined Protocols
  • NMS-14573: standardize docker containers to use tarballs
  • NMS-14641: Add KPI counters for DCB successful and failed backup
  • NMS-14645: Thresholding blocks threads under load
  • NMS-14666: Update all doc repos with link to new Antora UI bundle
  • NMS-14675: Upgrade deploy base to latest Ubuntu LTS
  • NMS-14677: Create Velocloud V1 client similar to current V2

by RangerRick at August 29, 2022 06:45 PM

August 23, 2022

OpenNMS On the Horizon – August 23rd, 2022

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

Since last time, we worked on documentation (notifications, daemons, "deep dive", Helm), Horizon Stream (Skaffold/operator/gateway infrastructure, Minion, graph API, metrics, containers, device UI), ALEC (situation REST and UI), CircleCI improvements, Docker improvements, datachoices/telemetry, JICMP6, off-heap improvements, SNMP4J, location, config manager, and interface REST, and Helm (entity and flow datasource improvements).

Github Project Updates

Internals, APIs, and Documentation
  • Morteza fixed an issue with the minion schema not publishing properly
  • Lars worked on user and group counts for the datachoices telemetry
  • Morteza merged his main work on dynamic CircleCI config generation
  • Mark Frazier did more work on merging Minion gRPC code to Horizon Stream
  • I refactored how SSH keypairs are generated in our Docker containers
  • Jeffrey-David Kapp and Gerald did more work on Skaffold and operator config in Stream
  • I ported the JDK 1.8 and build improvements from JICMP to JICMP6
  • Arthur worked on the Minion gateway in Stream using Ignite
  • Alexander made some changes to support storing counter-based usage statistics for the datachoices telemetry
  • Chandra worked on decoupling RPC from the initial gRPC implementation in Stream
  • Freddy has been working on off-heap queue improvements
  • Emily worked on daemon and notifications documentation
  • Thomas started getting the graph API into Stream
  • Bonnie and Mark Mahacek worked on Deep Dive documentation
  • Chandra optimized the code path for pushing metrics on down services in Stream
  • Jason worked on keycloak and ui ingress in Stream
  • Łukasz did some refactoring on gRPC, twin, and IPC code in Stream
  • Mark Frazier started moving SNMP code from the core into the Stream Minion
  • Łukasz worked on some observability metrics in Stream
  • Christian added smoke tests for KPIs
  • I fixed our circleci pre-build to be smaller/faster
  • I continued my work on moving our Docker images to use build tarballs rather than relying on packaging infrastructure
  • Gerald refactored some Docker container image workflows in Stream
  • Sean worked on updating to the latest SNMP4J
  • Bonnie worked on updating our doc builds to use a new theme bundle
Web, REST, UI, and Helm
  • Chinh Le and Mike Rose continued their work on the device UI in Horizon Stream
  • Chandra worked on enabling a REST service for location information in Stream
  • Anya started adding timelines to the ALEC situation UI
  • Dmitri worked on partial-update support in the config manager REST interface
  • Alberto fixed an issue with using fs:fid in Helm's flow interface code
  • Alberto worked on fixing up an issue with node filtering in Helm's entity datasource
  • Benjamin Janssens worked on situation retrieval changes in the ALEC REST interface
  • Anya did some other fixes and improvements to alarm/situation handling in the ALEC UI
  • Mark Mahacek worked on some Helm documentation improvements
  • Rob worked on test cases for the location REST service
  • Alberto added support for multiple filters for nodes in Helm's flow and entity datasources, plus regex support for flow nodes
  • Alberto worked on adding nodeID to the SNMP interface model in Helm and in OpenNMS's REST interface
Contributors

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

  • Alberto Ramos
  • Mark Frazier
  • Anya Rybalova
  • Chinh Le
  • Łukasz Dywicki
  • Benjamin Reed
  • Dmitri Herdt
  • Mike Rose
  • Emily Marsh
  • Jason Berry
  • Morteza Ershad-Manesh
  • Yang Li
  • Thomas Bigger
  • Benjamin Janssens
  • Gerald Humphries
  • Bonnie Robinson
  • Sean Torres
  • Arthur Naseef
  • Freddy Chu
  • Alexander Chadfield
  • Mark Mahacek
  • Chandra Gorantla
  • Rob Ellis
  • Christian Pape
  • Jeffrey-David Kapp
  • Lars Schreiber
  • James Hutchinson

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming September Releases

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

The next OpenNMS release day is September 14th, 2022.

We currently expect updates to Horizon 30 and all supported Meridian releases.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Open Source Summit Europe - Dublin, Ireland - September 13th through 16th

We are a silver sponsor this year for Open Source Summit, and will be hosting a booth in the exhibition area.

Craig Gallen and some of the crew from Belfast will be there, so pop on by and say hello.

Open Source Day 2022 - September 16th

The OpenNMS Group is proud to support Grace Hopper Conference's Open Source Day (OSD) 2022, and our very own Sandy Skipper is serving on the OSD Steering Committee.

OSD is an all-day hackathon in which participants of all skill levels learn about open source while contributing to projects designed to solve real world problems.
The goal is to celebrate and encourage women in open source.

OSD will take place as a pre-event on Friday, September 16 from 8am - 3pm PDT. Participation is open to anyone who has a GHC registration ticket (in-person or virtual).

For more information, contact Sandy Skipper or see the OSD site.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Experience - Paris, France - November 8th and 9th

We will be exhibiting at Open Source Experience in Paris, this year.

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-126: Worflow and Visualization Design for New Situation Details-LF
  • ALEC-141: Dev | Situation Storage: Where/how to store. (M)
  • ALEC-171: Bug when accepting or rejecting situtations when alarmId != situationId
  • HELM-338: Entity nodeFilter is not working
  • HELM-341: Cleanup Helm Documentation formatting
  • HS-270: Activity Browser: UX research & sandbox
  • HS-271: Activity Browser: card sorting for card types & filters
  • HS-272: Activity Browser: design options
  • HS-273: Activity Browser: activity card anatomy & structure
  • HS-291: FE - Integrate Creation of Device/ Retrieval into UI
  • HS-292: Integrate Metrics End point with UI
  • HS-298: Investigate current topo apis and how we might bring them into Stream
  • HS-307: Minion RPC Manager should be decoupled from gRPC
  • HS-308: Add Rest/GraphQL API to list Monitoring locations
  • HS-309: Integrate locations API into UI
  • HS-312: Fix skaffold variables
  • HS-314: Derive Device Status from ICMP/SNMP Metrics
  • HS-325: Keycloak login screen is missing favicon
  • NMS-13821: [CircleCI] - remove compilation from tarball-assembly step
  • NMS-13911: Please update the copyright year on the docs page!
  • NMS-14445: Create OpenNMS style guide
  • NMS-14452: Release artifact for H30.0.0 is the same as for Java doc
  • NMS-14459: Generate main yaml file dynamically
  • NMS-14487: Add KPIs for user and group counts to datachoices telemetry
  • NMS-14575: Set up basic Java CLI app to read/process MOS CDR files
  • NMS-14591: Stored XSS
  • NMS-14603: Create a shared, non-volatile storage for system KPIs
  • NMS-14613: Quick Start: Login and create a user
  • NMS-14627: Add smoke test for new KPIs
  • NMS-14637: Remove footer content from opennms/docs
  • NMS-14643: change or remove how Docker SSH keys are generated
  • NMS-14649: OpenNMS Minion RPC echo doesn't respond within the 1.5 minute window
  • NMS-14651: Update Vue UI Packages
  • NMS-14652: Quick Start: move content into Deep Dive section
  • NMS-14662: Dynamic Yaml Generation, Enable running OCI jobs when changes are detected
  • NMS-14665: Dynamic Yaml generation: Duplicate build entry when we enable flaky test and doc jobs

by RangerRick at August 23, 2022 09:21 PM

Remaining 2022 Conferences

Today marks my three month anniversary with AWS, and I’m loving it. It has been a lot of fun returning to conferences, so I thought I’d post a list of the ones I will be attending for the rest of the year.

If you are going to any of these as well, please reach out as I miss seeing people in person and would love to catch up (or, get acquainted).

by Tarus at August 23, 2022 03:35 PM

August 15, 2022

OpenNMS On the Horizon – August 15th, 2022

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

Since last time, we worked on documentation (Plugin API, daemons, Minion, Helm), Horizon Stream (Minion, build system, Keycloak, operator/Skaffold improvements, notifications, metrics, maps, and device UI), CircleCI, Enlinkd, datachoices telemetry, SNMP provisioning policy handling, ALEC situations, the location REST service, regex node filters in Helm, web validation.

Github Project Updates

Internals, APIs, and Documentation
  • Mark Frazier worked on moving over a lot of code for the Minion into Horizon Stream.
  • Arthur worked on a proof-of-concept "parent pom" structure for Stream.
  • Bonnie worked on documentation for "getting started", polling/service assurance, the event translator, and notifications.
  • Jeffrey-David Kapp and Jason did more work on Keycloak integration and docker deployment in Stream.
  • Emily worked on plugin API, PassiveStatus daemon, Minion port binding, and Provisiond documentation.
  • Morteza wrapped up some of his CircleCI job rearranging in anticipation of completing the first phase of the new dynamic CircleCI generation code.
  • I fixed some race condition issues with feature loading in newer branches.
  • Thomas continued his work on notifications fed from Kafka in Horizon Stream.
  • Antonio did more work improving Enlinkd's collection scheduling.
  • Alex and Lars worked on tracking strategy config and user/group counts in the datachoices telemetry.
  • Alex improved the SNMP interface model to differentiate between collection configs specified by provisioning policy, or user config.
  • I worked on a bunch of improvements to how our Docker images are generated.
  • Chandra wrapped up some changes related to Minion job scheduling in Stream.
  • Chandra worked on cleaning up and separating device creation and retrieval models in Stream.
  • Gerald worked on some operator improvements in Stream.
  • Łukasz added support for providing metrics using the OpenTelemetry API in Stream.
  • Arthur worked on configuring the Minion gateway in k8s/Skaffold for Stream.
  • Chandra implementing grouping of Minion metrics in Stream.
  • Mark Mahacek worked on various Helm documentation cleanups and improvements, including expanded entity datasource info.
  • Bonnie and Mark Mahacek worked on a "quick start" section in the operation docs.
Web, REST, UI, and Helm
  • Benjamin Janssens continued his work filling out the Situation APIs in ALEC.
  • Rob fixed a bug in the location REST service where it would only return the first 10 results.
  • Mike Rose worked on geomap device integration in Horizon Stream.
  • Chinh Le worked on geomap tests in Stream.
  • Mike Rose added Minion latency and uptime to the Stream device UI.
  • Alberto worked on support for using regular expressions to filter nodes in Helm.
  • I cleaned up some Sonar complaints in Helm.
  • Dmitri added support for partial updates in the config manager REST API using JSONpath.
  • Alex fixed some validation issues in user and discovery editing in the UI.
  • Chinh Le fixed the handling of empty values on device POST in Stream.
Contributors

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

  • Antonio Russo
  • Jason Berry
  • Arthur Naseef
  • Łukasz Dywicki
  • Morteza Ershad-Manesh
  • Benjamin Reed
  • Mark Frazier
  • Chandra Gorantla
  • Bonnie Robinson
  • Mike Rose
  • Mark Mahacek
  • Alberto Ramos
  • Benjamin Janssens
  • Chinh Le
  • Thomas Bigger
  • Lars Schreiber
  • Alex May
  • Emily Marsh
  • Jeffrey-David Kapp
  • Dmitri Herdt
  • Gerald Humphries
  • Rob Ellis

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

OpenNMS Plugin API 1.1.0

OpenNMS Plugin API 1.1.0 was released last week, with a number of improvements to the features available to plugin implementers.

  • support serialization of time-series data to disk
  • support APIs for flow persistence in plugins
  • remove the dev flag from yarn for UI plugins

Please note that some plugin features will only be available in the upcoming Horizon 31 release.

Upcoming September Releases

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

The next OpenNMS release day is September 14th, 2022.

We currently expect updates to Horizon 30 and all Meridian 2022.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

It will contain a number of improvements, including:

  • a refactoring of flow APIs including support for some flow hooks in the plugin API (plugin API 1.1.0+)
  • major improvements and refactoring in Enlinkd's bridge topology mapping and collection scheduling
Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Open Source Summit Europe - Dublin, Ireland - September 13th through 16th

We are a silver sponsor this year for Open Source Summit, and will be hosting a booth in the exhibition area.

Craig Gallen and some of the crew from Belfast will be there, so pop on by and say hello.

Open Source Day 2022 - September 16th

The OpenNMS Group is proud to support Grace Hopper Conference's Open Source Day (OSD) 2022, and our very own Sandy Skipper is serving on the OSD Steering Committee.

OSD is an all-day hackathon in which participants of all skill levels learn about open source while contributing to projects designed to solve real world problems.
The goal is to celebrate and encourage women in open source.

OSD will take place as a pre-event on Friday, September 16 from 8am - 3pm PDT. Participation is open to anyone who has a GHC registration ticket (in-person or virtual).

For more information, contact Sandy Skipper or see the OSD site.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

In addition to our involvement in Open Source Day, Veena Kannan will be presenting a virtual lightning talk at the Grace Hopper Conference titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

Her talk will be Thursday the 22nd, at 11:00am.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

All Things Open is local to our headquarters, and is a truly fantastic event.
We love it so much, we will be the exclusive live stream sponsor. 😉

We'll also have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending and/or helping out in the booth, so please be sure to say hi!

Open Source Experience - Paris, France - November 8th and 9th

We will be exhibiting at Open Source Experience in Paris, this year.

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-135: Accept/Reject situations
  • ALEC-163: Add endpoint to get situations status
  • ALEC-166: Situations cannot be accepted and rejected at the same time
  • HELM-332: HELM: Regex for Grafana Template Variable does not work on labels [Performance Datasource]
  • HS-144: Tenanted ingress controllers for each ONMS instance
  • HS-191: Backend: Schedule periodic jobs for the default Minion
  • HS-212: Add keycloak client through REST API opennms realm
  • HS-218: Create a CI-CD workflow to create the grafana wrapper, need to add Dockerhub repo for it.
  • HS-227: Minion landing - writing
  • HS-265: FE - Add geomap route, render page, hide search/dropdown/filtering elements
  • HS-266: FE - Render devices on map with useDeviceQueries
  • HS-269: Separate Device DTO models for creation / querying Devices
  • HS-279: FE - Forms should not send empty strings if value entered then erased
  • HS-283: FE - Add map unit tests
  • HS-288: Notification Service Alarm Kafka Consumer
  • HS-303: Prometheus PushGateway overrides metrics with same name
  • HS-306: SNMP RPC failures while Polling
  • NMS-8566: EventTranslator Daemon Documentation
  • NMS-13057: Update PG installation documentation to use SCRAM
  • NMS-13584: Migrate Notification wiki pages into docs
  • NMS-13911: Please update the copyright year on the docs page!
  • NMS-14007: Enhance MIB imports to handle OPAQUE data type implementation
  • NMS-14124: Reduce storage taken by artifacts
  • NMS-14423: Document allowed characters in service-names
  • NMS-14431: Documentation references invalid docker version for latest horizon version release
  • NMS-14490: Add KPI for installed OIA plugins to datachoices telemetry
  • NMS-14572: simplify assembly tarballs
  • NMS-14576: snmpCollect being reset to C even if a policy sets it to N
  • NMS-14590: Reflective XSS
  • NMS-14639: Release Work (August 10)
  • NMS-14642: Improve CircleCI jobs

by RangerRick at August 15, 2022 04:19 PM

August 10, 2022

August 2022 Releases – Horizon 30.0.2, Meridians 2022.1.6, 2021.1.18, 2020.1.26, 2019.1.37

In August, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.2.

Meridian Stable Updates

Meridians 2019.1.37, 2020.1.26 , 2021.1.18 , and 2022.1.6 contain just a few small bug fixes.

For a list of changes, see the release notes:

Horizon 30.0.2

Horizon 30.0.2 contains quite a few bug fixes as well as number of small features.

We have made a number of improvements to the documentation, including reworking the section on events and adding information on configuring SNMP traps and varbinds.

OpenNMS has extended the anonymous metrics we optionally collect to help us improve the project, such as CPU and memory sizing of the platform, and statistics like number of events and flows. Click the gears icon and choose Additional Tools -> Data Choices or edit $OPENNMS_HOME/etc/org.opennms.features.datachoices.cfg to see what is included and to change your opt-in settings. Note that we continue to anonymize the data for internal use only to inform project direction. We do not share it with third parties.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.2 is Gopher.

by Morteza Ershad-Manesh at August 10, 2022 07:48 PM

August 08, 2022

OpenNMS On the Horizon – August 8th, 2022

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

Since last time, we worked on documentation (Minion, plugin API, events), Horizon Stream (monitoring, time-series storage, Kubernetes operator, notifications, PagerDuty, Skaffold/Tilt config, device/appliance UI and maps), Enlinkd scheduling, datachoices telemetry, CI dynamic config, build assembly, ALEC (situations backend and UI), JMX collection, time-series off-heap storage, and password complexity checks.

Github Project Updates

Internals, APIs, and Documentation
  • Antonio did more work on Enlinkd collection scheduling
  • Thomas and Alex added polls, metrics, events, flows, and time-series config info to the datachoices telemetry.
  • Morteza continued his work on dynamic CircleCI configuration.
  • Chandra worked on basic monitoring scheduling and time-series storage in Horizon Stream.
  • Jeffrey did more work on the Horizon Stream operator config.
  • I worked on creating a tarball assembly from the Horizon build that is suitable for creating our Docker images.
  • Benjamin Janssens refactored the backend engine in ALEC a bit, as well as creating a protobuf model for situations.
  • James worked on PagerDuty support in Stream's notification service.
  • Yang Li worked on retrieving data from Prometheus in Stream.
  • Patrick did more work on time-series off-heap storage in OIA.
  • Gerald worked on updating the Stream Skaffold setup to deploy with Helm Charts, as well as experimenting with using Tilt instead of Skaffold.
  • Thomas worked on a Stream notification engine Kafka consumer for events and alarms.
  • Dino made some fixes to G1 mbean names in JMX collection configs.
  • Mark Frazier and Łukasz worked on Minion integration in Stream.
  • Emily worked on documentation for Minion priviledged port binding, as well as changing references to OIA to call it the "OpenNMS Plugin API."
  • Mark Mahacek worked on event documentation cleanups.
Web, REST, UI, and Helm
  • Chinh Le worked on adding device coordinates and maps to the Stream UI.
  • Benjamin Janssens did some work on the ALEC REST API.
  • Mike Rose did some work on the Stream device/appliance UI.
  • Anya did more work on the ALEC situation detail UI.
  • Lars refactored the password complexity checking code a bit.
Contributors

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

  • Chandra Gorantla
  • Antonio Russo
  • Łukasz Dywicki
  • Mark Mahacek
  • Mark Frazier
  • Emily Marsh
  • Morteza Ershad-Manesh
  • Anya Rybalova
  • Jeffrey-David Kapp
  • Dino Yancey
  • Benjamin Reed
  • James Hutchinson
  • Chinh Le
  • Alex May
  • Thomas Bigger
  • Yang Li
  • Patrick Schweizer
  • Mike Rose
  • Marcel Fuhrmann
  • Freddy Chu
  • DJ Gregor
  • Gerald Humphries
  • Benjamin Janssens
  • Dustin Frisch
  • Lars Schreiber

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-98: Hellinger Distance for ALEC
  • ALEC-117: Screen to ask for permission to record ALEC data
  • ALEC-131: Configuration Page where ALEC Engine is selected
  • ALEC-157: How do we publish a production plugin (ALEC)?
  • ALEC-159: FE: Reject/Accept situations
  • ALEC-160: when no configuration is found @GET should respond with no content
  • HS-132: Megamenu navbar component: node discovery & snackbar
  • HS-192: Backend: Collect, store, and react to job results from Minions
  • HS-193: DevOps: New time-series database
  • HS-202: Dev Environment: New Notification service in Skaffold
  • HS-261: Add device latitude/longitude fields
  • HS-263: FE - Convert map module vuex stores into pinia
  • HS-264: FE - Convert topo module vuex stores to pinia
  • HS-267: FE - Fix tests that appear to have broken with update to feather v 0.17
  • HS-268: Backend: BFF : Add API to retrieve latest time series data from Prometheus on
  • HS-275: H Stream: sitemap updates
  • HS-277: Develop CI/CD is broken
  • NMS-14212: Update Events Documentation
  • NMS-14483: Add KPIs for polls, metrics, events, and flows to datachoices telemetry
  • NMS-14491: Add KPIs for Sink, RPC, and Time-series strategies to datachoices telemetry
  • NMS-14506: Implement Velocloud Orchestrator API authentication
  • NMS-14568: Spring Framework CVE-2022-22950 Remediation
  • NMS-14574: Evaluate Cortex Plugin Performance
  • NMS-14577: Archive site oci image resource is not found
  • NMS-14592: Implement Velocloud Requisition Groundwork
  • OIA-41: Support for flow persistence
  • OIA-43: Test

by RangerRick at August 08, 2022 04:14 PM

August 01, 2022

OpenNMS On the Horizon – August 1st, 2022

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

Since last time, we worked on documentation (Kafka, Karaf features, MySQL JDBC and JIRA ticketing, and SNMP varbinds), Horizon Stream (Prometheus and Grafana integration, Minion, Skaffold, notifications, and device APIs), CircleCI, Enlinkd bridge topology, ALEC Hellinger Distance, JUnit and test updates, datachoices telemetry, flow persistence in OIA, Newts Cassandra updates, Grafana database reports, cloud APIs, MySQL collection, Spring, OpenTelemetry, and password updates.

Github Project Updates

Internals, APIs, and Documentation
  • Morteza continued his work on optimizing our CircleCI pipelines.
  • Antonio did more work on reworking Enlinkd bridge topology discovery.
  • Scott fixed some bugs in the graphite telemetry adapter example scripts.
  • Benjamin Janssens did more work on implementing Hellinger Distance calculations in ALEC.
  • Alexander did more work on auditing flaky smoke tests.
  • Mark Mahacek continued his work on Minion Kafka tuning documentation.
  • Alex and Thomas worked on database, event, flow, metric, OIA, and polling stats for the datachoices telemetry.
  • Dustin did some work on flow persistence support in the OIA plugin API.
  • Dino updated a number of places in the documentation to suggest using the featuresBoot.d folder rather than editing Karaf .cfg files directly.
  • Jesse did more work on modernizing the Cassandra driver used in Newts.
  • I fixed a bug in the Grafana report backend that didn't handle some Grafana 8+ dashboards properly.
  • Yang Li worked on integrating Prometheus and Grafana into the Horizon Stream dev environment.
  • Freddy started adding support for accessing some cloud-related OpenNMS APIs.
  • Emily added documentation for the MySQL JDBC driver and JIRA ticketing plugin.
  • Chandra did more work on Minion support in Horizon Stream.
  • Gerald did more work on Skaffold config in Stream.
  • Dino updated the default MySQL collection config to actually work. 😅
  • Bonnie did more work on SNMP varbinds documentation.
  • James worked on implementing notifications in Stream.
  • Alexander did more work on moving unit tests to JUnit 5.
  • I worked on backporting some Spring fixes.
  • Antonio made some changes to collection priority scheduling in Enlinkd.
  • DJ continued his work to move to OpenTelemetry for tracing.
Web, REST, UI, and Helm
  • Mike Rose worked on device GraphQL and display in Horizon Stream.
  • Chinh Le did more work on the device UI in Stream.
  • Lars did some final refactoring on his password complexity changes.
  • Thomas made some fixes to query parameter escaping related to recent advanced search changes.
  • Anya worked on the front page, situation details, and situation feedback in the ALEC UI.
  • Mike Rose worked on some fixes to alarm filters in the ALEC UI.
Contributors

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

  • DJ Gregor
  • Benjamin Reed
  • Antonio Russo
  • Morteza Ershad-Manesh
  • Chandra Gorantla
  • Yang Li
  • Alexander Chadfield
  • Mike Rose
  • Emily Marsh
  • Anya Rybalova
  • Chinh Le
  • Thomas Bigger
  • Benjamin Janssens
  • James Hutchinson
  • Dino Yancey
  • Mark Mahacek
  • Bonnie Robinson
  • Jesse White
  • Dustin Frisch
  • Gerald Humphries
  • Freddy Chu
  • Lars Schreiber
  • Alex May
  • Scott Theleman

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-122: Hellinger Distance for ALEC: Implementation for DBSCAN
  • ALEC-140: Situation storage: POC to file.
  • HS-182: Keycloak support in the Operator
  • HS-198: Dev Enviroment: Add Grafana to Skaffold
  • HS-208: Backend: Add "community string" to nodes
  • HS-242: Add device GQL mutation once service is available
  • HS-243: FE - Ongoing mods based on new UI design updates
  • HS-248: Dev Environment: Add the TSDB to Skaffold
  • HS-254: FE - Add bg color coded tests (minion/device)
  • HS-255: FE - Mod to ongoing UI changes
  • HS-262: FE - Bring over map/topo components form core
  • NMS-13770: Flow Thresholds: Split processing and persistence
  • NMS-13958: "vault" docs are missing main HTML documentation
  • NMS-14209: Update guava dependency to 25.1
  • NMS-14323: Migrate Trap configuration wiki to docs
  • NMS-14346: Document SNMP oid varbind pattern matching and varbind expansion to create unique events
  • NMS-14360: BmpIT flapping
  • NMS-14456: Implement Cortex TSS plugin persistance for External Tags
  • NMS-14490: Add KPI for installed OIA plugins to datachoices telemetry
  • NMS-14492: Add KPI item for RDBMS type and version to datachoices telemetry
  • NMS-14511: Velocloud API interaction baselines API v2
  • NMS-14530: write a script to dump release note issues from JIRA
  • NMS-14541: Bridge Topology Discovery, Move BridgeTopologyException
  • NMS-14542: Event / Alarms filtering no longer works
  • NMS-14544: Grafana dashboard reports do not run
  • NMS-14549: Clicking on the Count # in the Alarm does not bring up the associated Events
  • NMS-14554: Add datacollection definition for Eventd processing times
  • NMS-14558: Learning: Understand Graphite support in OpenNMS
  • NMS-14564: Fix stock graphite-telemetry-interface.groovy script file
  • OIA-42: Remove dev mode flag for sample plugin

by RangerRick at August 01, 2022 08:17 PM

2022 SCaLE 19x – Day Four

The last day of SCaLE was bittersweet, as I didn’t want it to be over but I was also ready to head home.

After stopping by the booth I was eager to visit a session on OpenNMS presented by my friend Jeff Gehlbach.

Jeff Gehlbach presenting on network flow data

Jeff has stepped up in the the presenter role I used to have, and he did a very good job of covering what network flows are, the different types and why they are important.

Back in the Exhibit Hall I was happy to learn that the AWS booth had won the “Most Memorable” award.

Most Memorable Booth Certificate

Hats off to Spot and Ashley for coming up with such a cool concept and creating a great space for people to hang out.

At 1:30pm we held a raffle for a pretty nice 3D printer. You had to be present to win and there was a lot of interest.

Spot surrounded by a crowd as the raffle winner is chosen

Then it was time to tear down the booth as the Exhibit Hall closed at 2pm.

This gave us time to get to the closing keynote by Internet pioneer Vint Cerf.

Vint Cerf in front of a podium

For someone who recently turned 79 he was a dynamic and entertaining speaker, and it was fun to listen to his stories on creating ARPANET, and how it grew into the public Internet we use today.

He also mentioned Jon Postel several times. I had an e-mail correspondence with Jon in the mid-1990s when I was trying to wrap my brain around the process for getting an “enterprise number” from IANA. I didn’t realize until after his untimely death who he was, and I’m still impressed at how much time he was willing to give a newbie like me.

While I enjoyed the presentation, I did regret that we ran out of time for details on his last slide, which concerned “unfinished business”.

Slide Listing Unfinished Business for the Internet

I mean, I get it. Each of the six topics on the slide could be a talk on its own, but I was very curious to hear his thoughts on fixing things such as disinformation. I love living in a world with almost instant access to information and the ability to connect with others, but there are problems, too, and I’m not sure we have the solutions.

All in all I am extremely happy to have been able to attend SCaLE. I’m still not comfortable in crowds and I was a little put out that not everyone in attendance decided to honor the mask policy. I talked with the SCaLE staff and they told me they were doing all they could, but even when people were reminded to mask up they tended to remove them as soon as the staff member walked away.

I was especially unhappy when I saw sponsors going maskless. On the one hand I am happy for their support of SCaLE, but on the other when you are standing in front of your company logo showing a disregard for the safety of your potential customers, it sends a bad message.

I’m not bringing this up to start a debate on the efficacy of masks, as I realize that they provide varying degrees of protection depending on type and use, but if your staff isn’t willing to abide by the conference rules, perhaps you just shouldn’t be there.

Note that I did refrain from posting the pictures I took of specific sponsors since it really wouldn’t change anything. I must be getting soft in my old age.

In any case I hope this is a non-issue for SCaLE 20x in Pasadena next March. I’m not optimistic that the pandemic will be over but for me the risk was worth the benefit, and I can’t wait to return.

by Tarus at August 01, 2022 01:34 PM

July 31, 2022

2022 SCaLE 19x – Day Three

Day Three of SCaLE kicked off the start of the main conference, which meant I spent most of the day in the AWS booth.

AWS Booth Picture Showing a Television Screen Playing Frontalot Videos

Traffic was pretty good and I got to talk with a lot of interesting people. I did take a break around 2pm and noticed from Twitter that I was missing a talk by Frank Karlitschek of Nextcloud fame, so I skedaddled over to his room to catch it.

It was pretty good. It focused on how copyleft-style licenses are often better for business since they level the playing field for all contributors, versus a number of newer licenses that are more “source available” instead of “open source”.

Frank Karlitschek Presenting at SCaLE

Please note that I’m an unabashed Nextcloud fanboy so I have some biases. (grin)

The big evening event was “Game Night” where they turned the basement ballrooms into a big gaming playground. From the classics such as checkers and chess, to Vegas-style games such as roulette and blackjack, up to the most modern of games using VR, there was something for everyone.

AWS sponsored the music for the event, and I was eager to see MC Frontalot perform. He didn’t disappoint.

MC Frontalot Performing at SCaLE

He did an hour-long set spanning the classics to the newer stuff, including “Secrets From the Future” featuring a video generated using AI.

Afterward he hung out at the merch table to chat with folks, and I got to spend some time with a new friend named Silona Bonewald.

MC Frontalot and Silona Bonewald

I was introduced to Silona through Spot as she was on the same hotel shuttle bus when we arrived on Wednesday evening. She is in charge of open source at IEEE as well as being a Burner, and I always look forward to chance to talk with her.

Today is the final day of the conference, and remember if you are reading this before 1:30pm PDT there is a raffle for an awesome 3D printer at the AWS booth, so come by to get your ticket.

by Tarus at July 31, 2022 05:30 PM

July 30, 2022

2022 SCaLE 19x – Day Two

This is the first conference since joining AWS that I have booth duty, so I won’t be able to spend as much time in the sessions as I would like, but I did want to catch one of the first sessions of the day which was “Speedrunning Kubernetes”.

A slide with the session title 'Speedrunning Kubernetes'

The main reason I wanted to see this talk was to see Kat Cosgrove in action. Prior to coming to AWS I didn’t know about her but I ended up following her on Twitter and found that she has strong opinions, and I tend to like people who have strong opinions. I figured the presentation would be entertaining and that I might learn something.

I wasn’t disappointed.

Kat Cosgrove being introduced by Josh Berkus

The title alludes to a “speedrun” which is an attempt to complete a video game as quickly as possible. The goal of this talk was to bring up a working Kubernetes cluster as if you were doing a speedrun. It also included one of the more … unusual … analogies I’ve seen in a technical presentation (including my own) by using a Chihuahua as a metaphor.

A chihuahua with two cheeseburgers under each of their four feet

If the goal is to provide the “cheeseburger” application, consisting of the bun service, the patty service, the cheese service, the mustard service, etc., each instance of the application (i.e. each burger) can be considered a “pod”. There are two pods under each foot of the dog representing two-pod “nodes” and the dog forms the control plane.

Remember, now that you’ve seen it, you can’t unsee it.

That was the only session I made on Day Two, but I did get some time to wander around the Exhibit Hall. The Software Freedom Conservancy had a booth, and since they are one of my favorite organizations I stopped by to chat with Pono Takamori. I know a number of folks that work there and they serve as almost a reference implementation for trying to live using 100% free software. Pono was telling me that it was getting almost impossible to find a totally free mobile wireless solution since 3G went away, as all of the modern modems tend to use binary blobs.

Pono Takamori in the Software Freedom Conservancy Booth

Now, when these exhibit halls are being set up, the “booths” are laid out with little generic signs showing the owner of the booth, and most of the time they eventually get covered up once the booth is complete.

The MySQL booth with an Oracle sign in the background

I know the Sun acquisition was a long time ago, but I still get cognitive dissonance when I see a MySQL sign next to an Oracle one.

The AWS booth for this conference is really awesome. I bow down to the genius that is Spot Callaway, and he pitched a booth design that was to invoke a teenage geek’s basement, where one might play video games and Dungeons and Dragons (think Stranger Things). The walls of the booth are made to look like brick, and there are chairs, a couch and an SNES console emulator.

The AWS Booth showing people playing a video game

The featured AWS project for this conference is Bottlerocket, and I got to learn a bit about it and meet members of the team. Bottlerocket is a minimal operating system designed just to run containers. I compared it to LibreELEC, which is a purpose-built O/S that I use to run Kodi, and while it was explained to me that I was oversimplifying things a bit, it was otherwise a good analogy.

While it is, of course, being used withing AWS, it is a 100% open source project and you can get the code on Github, and the hope is that others will find it valuable and will get involved with the community. If this is something you’re into, stop by the booth and say “hi”.

Speaking of stopping by the booth, we do have some tasty sodas and Bottlerocket branded bottle openers, but the big giveaway is an awesome 3D printer. Get a raffle ticket and stop by the booth at 1:30pm on Sunday for the drawing (you must be present to win).

AWS employees are not eligible to participate. (sniff)

by Tarus at July 30, 2022 06:00 PM

July 29, 2022

2022 Scale 19x – Day One

I am back at the Southern California Linux Expo (SCaLE) for the first time in many years, and I was surprised at how happy this makes me. It is always a well run conference and it tends to bring a lot of people I like together in one place, which means I get to meet a lot more people to like as well.

The main SCaLE sessions occur over the weekend, but there are a lot of cool things that happen in the days before. For Thursday, AWS sponsored Cloud Native Builder Day to showcase some of the amazing open source technologies one can use to solve a number of challenges, and I was eager to learn about them.

But before that I needed to get registered. The first step was to show proof of vaccination. While I am thankful that we can have these events, COVID is still a thing and the organizers are doing all they can to mitigate the risk to the conference attendees. Since I’m an old I’ve had two shots and two boosters but the darn thing keeps mutating.

SCaLE Registration Sign

Once past that I headed upstairs where I could use the self check-in kiosks. It was pretty simple to sign in and get my badge printed, and then it was just a short trip down the hall to pick up the conference “swag bag” which included the badge holder and lanyard.

SCaLE Registration Area with People Checking In

The only change I would make to the process is that once you printed your badge, you should really hit the “close window” button on the screen, as there is a “back” button that could allow the next person who registers to see your name and e-mail. No biggie, but the security nerd in me always thinks about these things.

The conference spans two floors. The Exhibit Hall with the sponsor booths is on the ground floor behind registration (it is technically in the Plaza Ballroom so I just followed the signs for “ballrooms”) while the sessions are on the second floor along with registration. AWS is going to have a pretty cool booth this year.

As an AWS employee I guess I should say that we always have a cool booth (grin) but I especially like the idea behind this one, despite the fact that we were unable to get a mounted deer head (seriously). It’s booth numbers 300, 302 and 304 if you want to swing by, and for those of you who couldn’t make it I’ll be sure to post about it later.

Cloud Native Builder Day showcased three different open source projects, the first one being Triggermesh. This was presented by Jeff Naef who I immediately liked as he was the first to notice that my mask is made by K&N, a company known for their high-end automotive airflow products. He loves performance automobiles as well as open source (he was wearing a Snap-On tools hat) so I knew we would get along.

Jeff Naef Presenting on Triggermesh

In dealing with cloud native technologies, a lot of the workflow is event driven. Triggermesh lets you seamlessly link together sources and targets for events, normalizing and enriching them along the way. While it does support the ability to create functions using code (in a variety of languages) a lot of the implementation can be done just through configuration.

In one example the data was encoded in base64, and a person asked if Triggermesh could render that in clear text. Jeff was like, sure, and he bravely set out to implement that as we watched. He got really close, but in any case deserves kudos for the attempt, especially considering he was holding a microphone with one hand the entire time.

The next speaker was Zoe Steinkamp from InfluxDB. I first met Zoe at the Open Source Summit in Austin and she is one of my favorite new acquaintances I’ve met through my job at AWS.

Now full disclosure: I missed the first half of her presentation.

SCaLE has done something delightful with the schedule, which is allowing 30 minutes between talks. I’ve talked about this before but this lets speakers switch out without the usual urgency, allows more time for attendees to interact with the speaker after the talk, and improves the hallway track.

I thought I had enough time to grab lunch, which was In-N-Out that Spot had brought for me. We don’t have In-N-Out in North Carolina so I rarely pass up a chance to get it, and I figured I could be back in time. I was wrong. But I did slip into the back of the room which is why this picture isn’t as close as the others.

Zoe Steinkamp Presenting on InfluxDB

I used to work on an open source project that relied heavily on time series data, so I’m a bit of a time series data geek. Every time I see a presentation on InfluxDB I learn more things to like about it. This time I found out that it is possible to get started with it without being a programmer. A lot of people in the data science field aren’t coders, but they can send their data to InfluxDB pretty easily. The folks at Influx have created InfluxDB University as a free resource to get the most out of their solution, and while I haven’t gone through it yet it looks really comprehensive.

The final presenter was Matt Overstreet from Datastax. Datastax focuses on providing solutions around the Apache Cassandra project, which is a distributed “NoSQL” database.

Matt Overstreet Presenting on Apache Cassandra

When most people hear the word “database” they think of relational databases. This is a data structure usually based on “rows” of data made up of “fields” and indexed by a primary key. One then uses something like the Structured Query Language (SQL) to retrieve values from those fields. This is all well and good but it tends to be extremely monolithic, which doesn’t work well in today’s distributed cloud environment.

Think about it. In a datacenter you might have sub-millisecond latency, so a query can be returned quickly. Move that datacenter across the country, and now it your latency is, say, 100ms. Move that to the other side of the world and, well, you get the picture. Now if you only have a few queries that might be okay, but when you consider thousands and then millions of queries, the response time of your application is going to take a hit.

Cassandra allows you to distribute that data both within a datacenter (for reliability) and also regionally. You can then put your data near your customers, improving their experience.

I was already sold on Cassandra (we used it at OpenNMS) but what I learned from this presentation was the wonderfulness that is “k8ssandra” (kate-sandra). This is Cassandra but running in Kubernetes. If you have ever had to extend and expand a Cassandra cluster, you know that while it isn’t super difficult there are a number of gotchas that can cause problems. What if you could automate it? Matt showed us an example that let him spin up (and tear down) an 800 node cluster in minutes.

Cool, huh?

The first day of SCaLE 19x was a blast, and I am eager to see what the rest of the week brings.

by Tarus at July 29, 2022 03:35 PM

July 25, 2022

OpenNMS On the Horizon – July 25th, 2022

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

Since last time, we worked on documentation for Minion Kafka tuning, Enlinkd bridge topology, CircleCI optimizations, Guava, Kafka metrics, Horizon Stream (Keycloak integration, Kubernetes operator, Skaffold, Minion support, UI improvements), runtime statisticts for requisition and OIA info, time-series off-heap storage, JMX datacollection, test fixes, flows, XML datacollector, Newts + Cassandra 4, login UI, event advanced search, and ALEC.

Github Project Updates

Internals, APIs, and Documentation
  • Mark Mahacek worked on docs for Minion Kafka tuning.
  • Antonio did more work on Enlinkd bridge topology improvements.
  • Morteza continued his work on CircleCI pipeline optimization.
  • I wrapped up the first part of our work upgrading our embedded Guava.
  • Alex fixed an issue with the Kafka metrics provider persisting collections it shouldn't.
  • Jeffrey worked on wrapping up initial Keycloak integration in Horizon Stream.
  • Jason did more work with the Kubernetes operator and Skaffold for self-hosted runtimes.
  • Alex added requisition info and installed OIA plugins to the datachoices stats.
  • Patrick did more work on off-heap serialization of time-series data in OIA.
  • Mark Mahacek added a JMX datacollection config for Eventd statistics.
  • Dino added ActiveMQ queue size to the JMX datacollection config.
  • Chandra continued his work on integrating the Minion into Horizon Stream.
  • I worked on potential timing fixes for some sink API tests.
  • Alexander fixed a timing issue in the BMP smoke test.
  • Christian did more work on handling flow applications that don't have traffic.
  • I fixed an issue with a backport of duplicate event config handling.
  • Christian fixed the XML datacollector to handle mappings when using JSON in addition to the existing XML support.
  • Jesse did some initial work on upgrading Newts to use the Cassandra 4 Java driver.
Web, REST, UI, and Helm
  • Chinh Le worked on the device/minion UI in Horizon Stream.
  • Lars did a little cleanup in the login page relating to autocomplete.
  • Yang Li did more work on the device REST API in Stream.
  • Mike Rose did more work on the Stream login page, as well as default UI routes.
  • Mike Rose made some device UI layout improvements in Stream.
  • Thomas wrapped up his changes for supporting inverting some search terms in event advanced search.
  • Anya added alarm count to the ALEC UI.
Contributors

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

  • Jesse White
  • Benjamin Janssens
  • Christian Pape
  • Morteza Ershad-Manesh
  • Yang Li
  • Benjamin Reed
  • Antonio Russo
  • Alexander Chadfield
  • Jason Berry
  • Alex May
  • Scott Theleman
  • Jeffrey-David Kapp
  • Chinh Le
  • Anya Rybalova
  • Thomas Bigger
  • Chandra Gorantla
  • Mark Mahacek
  • Dino Yancey
  • Pushkar Suthar
  • Mike Rose
  • Patrick Schweizer
  • DJ Gregor
  • Gerald Humphries
  • Lars Schreiber

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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-137: Document development guidelines
  • HS-145: Integrate Operator with User Self-host non-dev local env
  • HS-148: Replicator unable to make changes at cluster level
  • HS-179: Keycloak with Custom Image
  • HS-188: Dev Environment: Add the default Minion to Skaffold
  • HS-190: Backend: Provide endpoints for retrieving device nodes and Minion nodes
  • HS-195: Backend: Create an "Add Device" endpoint
  • HS-206: Frontend: Minions table endpoint integration
  • HS-211: Add grafana to local-samples/ build.
  • HS-215: Put all services under one domain name separated by paths
  • HS-216: Put ssl self-signed cert for all services
  • HS-228: activity browser redesign
  • HS-235: Create REST API endpoints in Platform for devices
  • HS-236: Fix the external IT test error due to the SSL certificate
  • HS-238: Debugging and fixing pipeline
  • HS-240: FE - Adapt UI to new provided wireframe (Device/Minions table)
  • HS-244: Add dynamic device list on minion selection
  • HS-245: Add Metrics to Minion RPC
  • HS-247: Debug Operator Build in CI-CD Pipeline
  • HS-250: FE - Mods UI to GT acceptance
  • NMS-13981: [Web] - Weak Password Policy
  • NMS-13983: [Web] - Password field with autocomplete enabled on Login page
  • NMS-14287: DCB: Add Rest End point for deletion of Device Configs
  • NMS-14429: Flow Thresholding: persist zero traffic rate
  • NMS-14470: Kafka metrics producer persists unpersisted collectionsets
  • NMS-14476: Negate search terms in event advanced search
  • NMS-14485: Add KPIs for business service count to datachoices telemetry
  • NMS-14486: Add KPIs for count of total requisition and requisitions with custom FSD to datachoices telemetry
  • NMS-14523: New UI: Link to license points to gnu.org/licenses instead of a specific license
  • NMS-14529: Create and Initialize project repository
  • NMS-14536: Initial CI pipeline
  • NMS-14547: Upgrade to Feather 0.10.15
  • NMS-14559: Mappings are not correctly handled in the JSON Collection Handler

by RangerRick at July 25, 2022 03:57 PM

OpenNMS On the Horizon – July 25th, 2022

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

Since last time, we worked on documentation for Minion Kafka tuning, Enlinkd bridge topology, CircleCI optimizations, Guava, Kafka metrics, Horizon Stream (Keycloak integration, Kubernetes operator, Skaffold, Minion support, UI improvements), runtime statisticts for requisition and OIA info, time-series off-heap storage, JMX datacollection, test fixes, flows, XML datacollector, Newts + Cassandra 4, login UI, event advanced search, and ALEC.

Github Project Updates

Internals, APIs, and Documentation
  • Mark Mahacek worked on docs for Minion Kafka tuning.
  • Antonio did more work on Enlinkd bridge topology improvements.
  • Morteza continued his work on CircleCI pipeline optimization.
  • I wrapped up the first part of our work upgrading our embedded Guava.
  • Alex fixed an issue with the Kafka metrics provider persisting collections it shouldn't.
  • Jeffrey worked on wrapping up initial Keycloak integration in Horizon Stream.
  • Jason did more work with the Kubernetes operator and Skaffold for self-hosted runtimes.
  • Alex added requisition info and installed OIA plugins to the datachoices stats.
  • Patrick did more work on off-heap serialization of time-series data in OIA.
  • Mark Mahacek added a JMX datacollection config for Eventd statistics.
  • Dino added ActiveMQ queue size to the JMX datacollection config.
  • Chandra continued his work on integrating the Minion into Horizon Stream.
  • I worked on potential timing fixes for some sink API tests.
  • Alexander fixed a timing issue in the BMP smoke test.
  • Christian did more work on handling flow applications that don't have traffic.
  • I fixed an issue with a backport of duplicate event config handling.
  • Christian fixed the XML datacollector to handle mappings when using JSON in addition to the existing XML support.
  • Jesse did some initial work on upgrading Newts to use the Cassandra 4 Java driver.
Web, REST, UI, and Helm
  • Chinh Le worked on the device/minion UI in Horizon Stream.
  • Lars did a little cleanup in the login page relating to autocomplete.
  • Yang Li did more work on the device REST API in Stream.
  • Mike Rose did more work on the Stream login page, as well as default UI routes.
  • Mike Rose made some device UI layout improvements in Stream.
  • Thomas wrapped up his changes for supporting inverting some search terms in event advanced search.
  • Anya added alarm count to the ALEC UI.
Contributors

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

  • Jesse White
  • Benjamin Janssens
  • Christian Pape
  • Morteza Ershad-Manesh
  • Yang Li
  • Benjamin Reed
  • Antonio Russo
  • Alexander Chadfield
  • Jason Berry
  • Alex May
  • Scott Theleman
  • Jeffrey-David Kapp
  • Chinh Le
  • Anya Rybalova
  • Thomas Bigger
  • Chandra Gorantla
  • Mark Mahacek
  • Dino Yancey
  • Pushkar Suthar
  • Mike Rose
  • Patrick Schweizer
  • DJ Gregor
  • Gerald Humphries
  • Lars Schreiber

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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-137: Document development guidelines
  • HS-145: Integrate Operator with User Self-host non-dev local env
  • HS-148: Replicator unable to make changes at cluster level
  • HS-179: Keycloak with Custom Image
  • HS-188: Dev Environment: Add the default Minion to Skaffold
  • HS-190: Backend: Provide endpoints for retrieving device nodes and Minion nodes
  • HS-195: Backend: Create an "Add Device" endpoint
  • HS-206: Frontend: Minions table endpoint integration
  • HS-211: Add grafana to local-samples/ build.
  • HS-215: Put all services under one domain name separated by paths
  • HS-216: Put ssl self-signed cert for all services
  • HS-228: activity browser redesign
  • HS-235: Create REST API endpoints in Platform for devices
  • HS-236: Fix the external IT test error due to the SSL certificate
  • HS-238: Debugging and fixing pipeline
  • HS-240: FE - Adapt UI to new provided wireframe (Device/Minions table)
  • HS-244: Add dynamic device list on minion selection
  • HS-245: Add Metrics to Minion RPC
  • HS-247: Debug Operator Build in CI-CD Pipeline
  • HS-250: FE - Mods UI to GT acceptance
  • NMS-13981: [Web] - Weak Password Policy
  • NMS-13983: [Web] - Password field with autocomplete enabled on Login page
  • NMS-14287: DCB: Add Rest End point for deletion of Device Configs
  • NMS-14429: Flow Thresholding: persist zero traffic rate
  • NMS-14470: Kafka metrics producer persists unpersisted collectionsets
  • NMS-14476: Negate search terms in event advanced search
  • NMS-14485: Add KPIs for business service count to datachoices telemetry
  • NMS-14486: Add KPIs for count of total requisition and requisitions with custom FSD to datachoices telemetry
  • NMS-14523: New UI: Link to license points to gnu.org/licenses instead of a specific license
  • NMS-14529: Create and Initialize project repository
  • NMS-14536: Initial CI pipeline
  • NMS-14547: Upgrade to Feather 0.10.15
  • NMS-14559: Mappings are not correctly handled in the JSON Collection Handler

by RangerRick at July 25, 2022 03:57 PM

July 18, 2022

OpenNMS On the Horizon – July 18th, 2022

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

Since last time, we worked on documentation (backup/restore, events, provisioning, traps, surveillance categories, detectors), CI optimizations, Horizon Stream (Kubernetes, provisioning and detectors, alarm and queries, Keycloak integration, shared APIs, CI, Minion, GraphQL), device config backup logging, OpenTelemetry tracing, JUnit 5, telemetry replay, non-root, parallel time-series writes, ALEC algorithms and UI, the Elasticsearch Drift Plugin, flow processing refactoring, the Twin API, Kafka handling of zero values, Pollerd optimization, datachoices metric collection, Prometheus collector error handling, WebMonitor response times, time-series API off-heap storage, REST (alarms, device config, provisioning config), bridge topology classifying, alarm advanced search, (deep breath) aaaaand... password complexity validation.

Really gotta make sure I don't miss a week, we've got a lot more people working on the code now. :D

Github Project Updates

Internals, APIs, and Documentation
  • Mark Mahacek did more documentation work on backup/restore, events, and provisioning policies.
  • Morteza continued his work on making optimized CircleCI pipelines.
  • Jeffrey Kapp merged the Kubernetes operator into the Horizon Stream codebase.
  • Alex worked on making device config backup output logging more configurable.
  • Arthur did more work porting detectors to Horizon Stream.
  • DJ worked on moving from OpenTracing to OpenTelemetry.
  • Chandra fixed an issue with querying alarms in stream.
  • Alexander worked on updating our test infrastructure to JUnit 5.
  • Jesse worked on Telemetryd packet capture replay support.
  • Alex worked on some improvements to the non-root support in scripts.
  • Jason and Yang Li did more work on Keycloak integration in Horizon Stream.
  • Bonnie worked on migrating Trapd configs from the wiki to the docs.
  • Yang Li worked on some shared API code for Horizon Stream.
  • Chandra did more work on parallel time-series writes to multiple backends.
  • Yang Li fixed an issue with event DTO queries in stream.
  • Benjamin Janssens worked on Hellinger Distance support in ALEC.
  • Emily worked on modernizing some terminology relating to surveillance categories throughout the docs, plus detector documentation.
  • I worked on updating the Elasticsearch Drift Plugin CI to auto-build release tags.
  • Dustin worked on refactoring some of the flow processing code to split up processing and persistence.
  • Jason started on automation for integrating the operator environment in stream.
  • Łukasz worked on the GRPC twin subscriber.
  • Chandra worked on integrating the Minion in stream.
  • Alex fixed an issue with the handling of zero values in Kafka.
  • Jesse continued his work on optimization of Pollerd startup.
  • Scott did more work on provisioning in stream.
  • Thomas, Christian, and Alex added collected datachoices metrics for CPU count, memory, configured services, provisioning config, notifications, and business services.
  • Gerald added a PR template and default editor config to stream.
  • Dino made some improvements to the PrometheusCollector's error output.
  • Dino fixed a bug where the WebMonitor wouldn't report response times.
  • Jason worked on support for debugging over ssh in stream.
  • Morteza and I worked on automating portions of the release process.
  • Patrick worked on some changes to the time-series API for off-heap storage.
  • Antonio did some refactoring to simplify bridge connection classifying in Enlinkd.
Web, REST, UI, and Helm
  • Alberto fixed an NPE in the alarm REST service when an alarm's associated event(s) have been deleted.
  • Christian worked on a bug in deleting a graphml entry through the REST interface.
  • Pushkar worked on a REST interface for deleting device config backups.
  • Yang Li worked on a device REST API.
  • Chinh Le did more work on device listing in the new UI.
  • Christian fixed a bug in query url escaping.
  • Anya did more work on an ALEC web UI.
  • Mike Rose did more fixes to new UI code, including support for better graphql error handling.
  • Dmitri worked on improvements to the provisiond-config REST API.
  • Scott worked on an HQL alarm query bug.
  • James worked on supporting negating some terms in the alarm advanced search.
  • Christian added some error handling to panel refresh in the topology UI.
  • James and Chandra worked on a Minion REST API to stream.
  • Chinh Le added a mock GraphQL server to stream.
  • Lars worked on enforcing password complexity in the new password dialog.
Contributors

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

  • Chandra Gorantla
  • Patrick Schweizer
  • Antonio Russo
  • Yang Li
  • Jason Berry
  • Morteza Ershad-Manesh
  • Alex May
  • Bonnie Robinson
  • Benjamin Janssens
  • Emily Marsh
  • Chinh Le
  • DJ Gregor
  • Mike Rose
  • Benjamin Reed
  • Anya Rybalova
  • Lars Schreiber
  • Christian Pape
  • Pushkar Suthar
  • Dustin Frisch
  • Mark Mahacek
  • Alberto Ramos
  • Gerald Humphries
  • Scott Theleman
  • Jeffrey-David Kapp
  • Sean Torres
  • Dino Yancey
  • Alexander Chadfield
  • Thomas Bigger
  • Jesse White
  • Łukasz Dywicki
  • James Hutchinson
  • Mark Frazier
  • Dmitri Herdt
  • Arthur Naseef

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

July 2022 Releases - Horizon 30.0.1, Meridians 2022.1.5, 2021.1.17, 2020.1.25, 2019.1.36

In July, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.1.

Meridian Stable Updates

Meridians 2019.1.36, 2020.1.25 , and 2021.1.17 contain just a few small bug fixes and enhancements.

Additionally, Meridian 2022.1.5 contains all of the changes from the previous Meridian releases, as well as additional changes relating to elasticsearch, running as non-root, web authentication, and more.

For a list of changes, see the release notes:

Horizon 30.0.1

Horizon 30.0.1 contains all of the changes included in Meridian 2022, as well as a number of additional enhancements and bug fixes, including added support for encrypting credentials.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.1 is Chinchilla.

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-113: Temporarily Present Old Situations List
  • ALEC-114: Temporarily Present Old Situations Details
  • ALEC-115: Define a list of items to collect from the user. (Alarms / Nodes)
  • ALEC-125: Workflow to Secure Permission to Collect Data
  • HELM-272: Filter panel does not work for affectedNodeCount
  • HS-46: Skaffold + Karaf: investigate use of Skaffold with Karaf for fast iteration of development
  • HS-75: Periodic drools issue, "query did not return a unique result"
  • HS-79: Initial load test for the POC
  • HS-84: POC demonstrate Kafka vs AMQ continuous flow disk limitation
  • HS-115: Merge Operator Repo into Horizon Stream
  • HS-136: Formalize code standards, guidelines, and documentation requirements
  • HS-147: Update checker failing to get pods correctly
  • HS-172: Migrate the SIMPLE detectors for provisioning
  • HS-173: Add ForeignSource CRUD and REST service
  • HS-174: App Header: Design + Iteration
  • HS-175: Convert REST API server to BFF component
  • HS-183: HttpClient connection to keycloak not closed correctly
  • HS-186: FE - Shared method of mock endpoints
  • HS-187: Backend: Onboard the default Minion
  • HS-189: DevOps: Default Minion deployment
  • HS-194: Frontend: Add a device button and modal
  • HS-200: Frontend: Button and modal to configure PagerDuty API Key
  • HS-204: Dev Environment: Add secrets management / credentials for keycloak mail sever
  • HS-205: DevOps: Add secrets management / credentials for keycloak mail sever
  • HS-207: Frontend: Device table endpoint integration
  • HS-209: Add GQL to Vue App, Test with Alarms
  • HS-210: BFF use the platform core DTO library
  • HS-221: shared-lib/ build and version management
  • HS-222: Add Rest API/GraphQL API to query Minion nodes
  • HS-225: Minion landing - UX wireframes and design options
  • HS-233: FE - mock local GraphQL server
  • HS-237: FE: GQL error plugin fix for 200 responses with separate status in error msg
  • HS-239: Enable and port forward debug ports in Skaffold dev
  • HS-241: Add Cucumber IT for validating minion end point
  • NMS-10634: event nodeCategoryMembershipChanged should be more verbose
  • NMS-12981: Clearing an alarm brings alarm not found message
  • NMS-13953: Upgrade Kafka components to 3.2.0
  • NMS-14043: Negate search terms in alarms advanced search
  • NMS-14096: Ensure OpenNMS docker images work with Macs with M1 chip
  • NMS-14108: figure out automating/deploying release versions of the elasticsearch drift plugin
  • NMS-14120: Debugging DCB scripts is a pain
  • NMS-14197: Support writing to multiple TSDB in parallel
  • NMS-14233: Add KPIs to datachoices telemetry for Provisiond config items
  • NMS-14279: Tag Netflow v9 packets as Ingress on the INPUT_SNMP ifindex and Egress on the OUTPUT_SNMP ifindex
  • NMS-14302: Upgrade JUnit from version 4 to 5
  • NMS-14331: Grafana Panel Internal Server Error when lasteventid is Null for an Alarm when Using HELM
  • NMS-14379: Topology UI Error when deleting a graphml
  • NMS-14383: Update Releases for elasticsearch-drift-plugin to allow compatible versions for M1
  • NMS-14403: Notification with Destination Path and Group, Interval Delay doesnt show
  • NMS-14410: Scripts invoke sudo even if running as root
  • NMS-14412: SNMP Interface Poller doc updates
  • NMS-14437: Add documentation to describe negate search terms in alarms advanced search
  • NMS-14438: Moving JUnit4 to JUnit5
  • NMS-14457: Mock/Practice release work
  • NMS-14458: Release work (July 13)
  • NMS-14462: Rename integration tests that are currently running as unit tests
  • NMS-14465: Add support for replaying packet captures to telemetryd
  • NMS-14467: Prefer ingressPhysicalInterface over INPUT_SNMP when processing flows
  • NMS-14468: Add script to manipulate flows
  • NMS-14469: Kafka metrics producer considers zero values optional
  • NMS-14478: External Requisition UI: foreignSource not set for VMware requisition
  • NMS-14479: Simplify BridgeSimpleConnection Class
  • NMS-14482: Add KPIs for CPU count and memory size to datachoices telemetry
  • NMS-14488: Add KPIs for notification entities to datachoices telemetry
  • NMS-14489: Add KPI for list of enabled service daemons to datachoices telemetry
  • NMS-14524: Pollerd take a long time to start on systems with large inventories
  • NMS-14528: Update documentation for policy matching
  • NMS-14537: Add option to not store DCB script output
  • NMS-14540: Move BridgeDiscovery to new project Enlinkd Adapters Discovers Bridge

by RangerRick at July 18, 2022 09:50 PM

OpenNMS On the Horizon – July 18th, 2022

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

Since last time, we worked on documentation (backup/restore, events, provisioning, traps, surveillance categories, detectors), CI optimizations, Horizon Stream (Kubernetes, provisioning and detectors, alarm and queries, Keycloak integration, shared APIs, CI, Minion, GraphQL), device config backup logging, OpenTelemetry tracing, JUnit 5, telemetry replay, non-root, parallel time-series writes, ALEC algorithms and UI, the Elasticsearch Drift Plugin, flow processing refactoring, the Twin API, Kafka handling of zero values, Pollerd optimization, datachoices metric collection, Prometheus collector error handling, WebMonitor response times, time-series API off-heap storage, REST (alarms, device config, provisioning config), bridge topology classifying, alarm advanced search, (deep breath) aaaaand... password complexity validation.

Really gotta make sure I don't miss a week, we've got a lot more people working on the code now. :D

Github Project Updates

Internals, APIs, and Documentation
  • Mark Mahacek did more documentation work on backup/restore, events, and provisioning policies.
  • Morteza continued his work on making optimized CircleCI pipelines.
  • Jeffrey Kapp merged the Kubernetes operator into the Horizon Stream codebase.
  • Alex worked on making device config backup output logging more configurable.
  • Arthur did more work porting detectors to Horizon Stream.
  • DJ worked on moving from OpenTracing to OpenTelemetry.
  • Chandra fixed an issue with querying alarms in stream.
  • Alexander worked on updating our test infrastructure to JUnit 5.
  • Jesse worked on Telemetryd packet capture replay support.
  • Alex worked on some improvements to the non-root support in scripts.
  • Jason and Yang Li did more work on Keycloak integration in Horizon Stream.
  • Bonnie worked on migrating Trapd configs from the wiki to the docs.
  • Yang Li worked on some shared API code for Horizon Stream.
  • Chandra did more work on parallel time-series writes to multiple backends.
  • Yang Li fixed an issue with event DTO queries in stream.
  • Benjamin Janssens worked on Hellinger Distance support in ALEC.
  • Emily worked on modernizing some terminology relating to surveillance categories throughout the docs, plus detector documentation.
  • I worked on updating the Elasticsearch Drift Plugin CI to auto-build release tags.
  • Dustin worked on refactoring some of the flow processing code to split up processing and persistence.
  • Jason started on automation for integrating the operator environment in stream.
  • Łukasz worked on the GRPC twin subscriber.
  • Chandra worked on integrating the Minion in stream.
  • Alex fixed an issue with the handling of zero values in Kafka.
  • Jesse continued his work on optimization of Pollerd startup.
  • Scott did more work on provisioning in stream.
  • Thomas, Christian, and Alex added collected datachoices metrics for CPU count, memory, configured services, provisioning config, notifications, and business services.
  • Gerald added a PR template and default editor config to stream.
  • Dino made some improvements to the PrometheusCollector's error output.
  • Dino fixed a bug where the WebMonitor wouldn't report response times.
  • Jason worked on support for debugging over ssh in stream.
  • Morteza and I worked on automating portions of the release process.
  • Patrick worked on some changes to the time-series API for off-heap storage.
  • Antonio did some refactoring to simplify bridge connection classifying in Enlinkd.
Web, REST, UI, and Helm
  • Alberto fixed an NPE in the alarm REST service when an alarm's associated event(s) have been deleted.
  • Christian worked on a bug in deleting a graphml entry through the REST interface.
  • Pushkar worked on a REST interface for deleting device config backups.
  • Yang Li worked on a device REST API.
  • Chinh Le did more work on device listing in the new UI.
  • Christian fixed a bug in query url escaping.
  • Anya did more work on an ALEC web UI.
  • Mike Rose did more fixes to new UI code, including support for better graphql error handling.
  • Dmitri worked on improvements to the provisiond-config REST API.
  • Scott worked on an HQL alarm query bug.
  • James worked on supporting negating some terms in the alarm advanced search.
  • Christian added some error handling to panel refresh in the topology UI.
  • James and Chandra worked on a Minion REST API to stream.
  • Chinh Le added a mock GraphQL server to stream.
  • Lars worked on enforcing password complexity in the new password dialog.
Contributors

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

  • Chandra Gorantla
  • Patrick Schweizer
  • Antonio Russo
  • Yang Li
  • Jason Berry
  • Morteza Ershad-Manesh
  • Alex May
  • Bonnie Robinson
  • Benjamin Janssens
  • Emily Marsh
  • Chinh Le
  • DJ Gregor
  • Mike Rose
  • Benjamin Reed
  • Anya Rybalova
  • Lars Schreiber
  • Christian Pape
  • Pushkar Suthar
  • Dustin Frisch
  • Mark Mahacek
  • Alberto Ramos
  • Gerald Humphries
  • Scott Theleman
  • Jeffrey-David Kapp
  • Sean Torres
  • Dino Yancey
  • Alexander Chadfield
  • Thomas Bigger
  • Jesse White
  • Łukasz Dywicki
  • James Hutchinson
  • Mark Frazier
  • Dmitri Herdt
  • Arthur Naseef

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

July 2022 Releases - Horizon 30.0.1, Meridians 2022.1.5, 2021.1.17, 2020.1.25, 2019.1.36

In July, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.1.

Meridian Stable Updates

Meridians 2019.1.36, 2020.1.25 , and 2021.1.17 contain just a few small bug fixes and enhancements.

Additionally, Meridian 2022.1.5 contains all of the changes from the previous Meridian releases, as well as additional changes relating to elasticsearch, running as non-root, web authentication, and more.

For a list of changes, see the release notes:

Horizon 30.0.1

Horizon 30.0.1 contains all of the changes included in Meridian 2022, as well as a number of additional enhancements and bug fixes, including added support for encrypting credentials.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.1 is Chinchilla.

Upcoming August Releases

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

The next OpenNMS release day is August 10th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was only recently released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

Next Meridian: 2023 (Q1 2023)

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

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will have a booth in the exhibition hall.
A bunch of OpenNMS folks will be attending or helping out in the booth, so be sure to say hi!

Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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

  • ALEC-113: Temporarily Present Old Situations List
  • ALEC-114: Temporarily Present Old Situations Details
  • ALEC-115: Define a list of items to collect from the user. (Alarms / Nodes)
  • ALEC-125: Workflow to Secure Permission to Collect Data
  • HELM-272: Filter panel does not work for affectedNodeCount
  • HS-46: Skaffold + Karaf: investigate use of Skaffold with Karaf for fast iteration of development
  • HS-75: Periodic drools issue, "query did not return a unique result"
  • HS-79: Initial load test for the POC
  • HS-84: POC demonstrate Kafka vs AMQ continuous flow disk limitation
  • HS-115: Merge Operator Repo into Horizon Stream
  • HS-136: Formalize code standards, guidelines, and documentation requirements
  • HS-147: Update checker failing to get pods correctly
  • HS-172: Migrate the SIMPLE detectors for provisioning
  • HS-173: Add ForeignSource CRUD and REST service
  • HS-174: App Header: Design + Iteration
  • HS-175: Convert REST API server to BFF component
  • HS-183: HttpClient connection to keycloak not closed correctly
  • HS-186: FE - Shared method of mock endpoints
  • HS-187: Backend: Onboard the default Minion
  • HS-189: DevOps: Default Minion deployment
  • HS-194: Frontend: Add a device button and modal
  • HS-200: Frontend: Button and modal to configure PagerDuty API Key
  • HS-204: Dev Environment: Add secrets management / credentials for keycloak mail sever
  • HS-205: DevOps: Add secrets management / credentials for keycloak mail sever
  • HS-207: Frontend: Device table endpoint integration
  • HS-209: Add GQL to Vue App, Test with Alarms
  • HS-210: BFF use the platform core DTO library
  • HS-221: shared-lib/ build and version management
  • HS-222: Add Rest API/GraphQL API to query Minion nodes
  • HS-225: Minion landing - UX wireframes and design options
  • HS-233: FE - mock local GraphQL server
  • HS-237: FE: GQL error plugin fix for 200 responses with separate status in error msg
  • HS-239: Enable and port forward debug ports in Skaffold dev
  • HS-241: Add Cucumber IT for validating minion end point
  • NMS-10634: event nodeCategoryMembershipChanged should be more verbose
  • NMS-12981: Clearing an alarm brings alarm not found message
  • NMS-13953: Upgrade Kafka components to 3.2.0
  • NMS-14043: Negate search terms in alarms advanced search
  • NMS-14096: Ensure OpenNMS docker images work with Macs with M1 chip
  • NMS-14108: figure out automating/deploying release versions of the elasticsearch drift plugin
  • NMS-14120: Debugging DCB scripts is a pain
  • NMS-14197: Support writing to multiple TSDB in parallel
  • NMS-14233: Add KPIs to datachoices telemetry for Provisiond config items
  • NMS-14279: Tag Netflow v9 packets as Ingress on the INPUT_SNMP ifindex and Egress on the OUTPUT_SNMP ifindex
  • NMS-14302: Upgrade JUnit from version 4 to 5
  • NMS-14331: Grafana Panel Internal Server Error when lasteventid is Null for an Alarm when Using HELM
  • NMS-14379: Topology UI Error when deleting a graphml
  • NMS-14383: Update Releases for elasticsearch-drift-plugin to allow compatible versions for M1
  • NMS-14403: Notification with Destination Path and Group, Interval Delay doesnt show
  • NMS-14410: Scripts invoke sudo even if running as root
  • NMS-14412: SNMP Interface Poller doc updates
  • NMS-14437: Add documentation to describe negate search terms in alarms advanced search
  • NMS-14438: Moving JUnit4 to JUnit5
  • NMS-14457: Mock/Practice release work
  • NMS-14458: Release work (July 13)
  • NMS-14462: Rename integration tests that are currently running as unit tests
  • NMS-14465: Add support for replaying packet captures to telemetryd
  • NMS-14467: Prefer ingressPhysicalInterface over INPUT_SNMP when processing flows
  • NMS-14468: Add script to manipulate flows
  • NMS-14469: Kafka metrics producer considers zero values optional
  • NMS-14478: External Requisition UI: foreignSource not set for VMware requisition
  • NMS-14479: Simplify BridgeSimpleConnection Class
  • NMS-14482: Add KPIs for CPU count and memory size to datachoices telemetry
  • NMS-14488: Add KPIs for notification entities to datachoices telemetry
  • NMS-14489: Add KPI for list of enabled service daemons to datachoices telemetry
  • NMS-14524: Pollerd take a long time to start on systems with large inventories
  • NMS-14528: Update documentation for policy matching
  • NMS-14537: Add option to not store DCB script output
  • NMS-14540: Move BridgeDiscovery to new project Enlinkd Adapters Discovers Bridge

by RangerRick at July 18, 2022 09:50 PM

July 2022 Releases – Horizon 30.0.1, Meridians 2022.1.5, 2021.1.17, 2020.1.25, 2019.1.36

In July, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.1.

Meridian Stable Updates

Meridians 2019.1.36, 2020.1.25 , and 2021.1.17 contain just a few small bug fixes and enhancements.

Additionally, Meridian 2022.1.5 contains all of the changes from the previous Meridian releases, as well as additional changes relating to elasticsearch, running as non-root, web authentication, and more.

For a list of changes, see the release notes:

Horizon 30.0.1

Horizon 30.0.1 contains all of the changes included in Meridian 2022, as well as a number of additional enhancements and bug fixes, including added support for encrypting credentials.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.1 is Chinchilla.

by RangerRick at July 18, 2022 06:15 PM

July 2022 Releases – Horizon 30.0.1, Meridians 2022.1.5, 2021.1.17, 2020.1.25, 2019.1.36

In July, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 30.0.1.

Meridian Stable Updates

Meridians 2019.1.36, 2020.1.25 , and 2021.1.17 contain just a few small bug fixes and enhancements.

Additionally, Meridian 2022.1.5 contains all of the changes from the previous Meridian releases, as well as additional changes relating to elasticsearch, running as non-root, web authentication, and more.

For a list of changes, see the release notes:

Horizon 30.0.1

Horizon 30.0.1 contains all of the changes included in Meridian 2022, as well as a number of additional enhancements and bug fixes, including added support for encrypting credentials.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.1 is Chinchilla.

by RangerRick at July 18, 2022 06:15 PM

July 13, 2022

Why You Should Attend SCaLE 19x

The 19th iteration of the Southern California Linux Expo (SCaLE) is around two weeks away, and I wanted to suggest some reasons why you should attend, assuming you are into free and open source software. AWS, where I work, is a platinum sponsor. The conference runs for four days starting on July 28th and is located at the Los Angeles Airport Hilton.

Note: Everything expressed here represents my own thoughts and opinions and I am not speaking for my employer Amazon Web Services.

I’ve been to a number of SCaLE conferences and I’m always impressed at how well they are run. This is a grass-roots, volunteer-led conference yet it is always at par with the more commercial trade shows I attend and sometimes exceeds them. This year looks exceptionally good.

The first reason you should go is the content. The conference has quite a number of tracks including one focused on containers and orchestration (‘natch) and also infrastructure, security and observability. There are tracks on using open source in the medical field as well as government. Big Data gets its own track as well as embedded systems, and there are several more tracks guaranteed to touch on almost every interest within free and open source software.

The conference spans four days, with the first two days focused more on workshops. Co-located with SCaLE is a two day, two track technical conference focused on PostgreSQL, and on Friday is the tenth DevOps Day LA. AWS is hosting a half-day workshop focused on Cloud Native builders with presentations on Kubernetes, InfluxDB and Apache Cassandra.

The second reason you should go is networking, or what is often called the “hallway track”.

For the last several years I’ve worked remote (i.e. not in an office outside of the home) and I will probably continue to do so for the rest of my career. Remote work has become almost a standard within technical jobs.

But I have to say I miss being able to see people face to face. When I was with OpenNMS we had this product where you could buy a year of support coupled with a week of on-site professional services and training. I used to love doing those, but even before COVID those trips became less frequent as companies adopted a distributed work force. There was really no “on-site” place to go when your team was across four time zones.

Technical conferences, such as SCaLE, provide a great opportunity to get together in person, and it can be wonderful to talk in an informal setting to people you may only know through e-mails, video calls and social media. A number of my coworkers will be at SCaLE and I am looking forward to spending some “in real life” time with them.

If you look through the list of speakers at this year’s conference, it is a “who’s who” of open source leaders and contributors, and you’ll have to the chance to meet them as well as other like-minded people. I love the fact that the organizers have built in a 30 minute cushion between talks. Not only does this avoid the rush that usually happens as one speaker finishes and another sets up, it gives people time to socialize before heading off to the next talk. Of course, it goes without saying that you should be courteous to speakers and other attendees, and SCaLE has published a Code of Conduct to formalize what that means, but also don’t let that stop you from asking tough or difficult questions of the speakers (just be nice about it). I always loved it when I was a speaker and someone asked me something I had never thought about.

The third reason you should go is the Exhibition Hall. There are a ton of sponsors who will have booths at the show (including AWS) and this is a great chance to talk with those projects you love, find new ones to love, and often there is some great swag to be had. The hall will be open on Friday through Sunday.

Finally, on Saturday night there is the famous “Game Night” reception and party. I’m excited that the original nerdcore rapper, MC Frontalot, will be performing. Frontalot combines musicianship with nerdy topics like video games, cosplay, fairy tales and technology into an incredibly entertaining show. If you are new to his work check out his YouTube channel. One of my favorite songs is “Stoop Sale” (kids especially like that one, so I guess I’m a kid at heart), and he recently had a fan take his song “Secrets from the Future” (about how all of our encrypted secrets will one day be an open book) and run the lyrics through the Midjourney AI image generator. The result is pretty amazing.

A full SCaLE pass runs $85, and I can’t think of a better value. In-person technical instruction runs $500+ a day, and even if you went to one of those on-line class sites you’re still going to pay $15-$50 a class, and here you can attend 15 or so sessions for around $5 per, and that doesn’t include all the extra stuff outside of the presentations. Even with travel it is still a deal.

I am very eager to attend and I hope to see you there, too.

Just one more note, this one on COVID. I am pretty rigorous when it comes to avoiding this disease which is one reason I haven’t traveled much in the last 2+ years. The first conference I attended since the pandemic started was the Open Source Summit in Austin, and while some people did test positive it was a small fraction of total attendees. One reason was that they had a mask requirement (except when eating or drinking) and you had to show proof of vaccination or a negative test. SCaLE has adopted a similar policy, and while this won’t mean it is impossible to get sick the evidence suggests that this will greatly limit exposure among the attendees. If you have health issues you may still want to stay home and if you come and don’t feel well use your best judgement. I will be taking along some rapid tests that I got for free from covid.gov as well as frequently taking my temperature just to be sure.

by Tarus at July 13, 2022 02:01 PM

July 05, 2022

OpenNMS On the Horizon – July 5th, 2022

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

Since last time, we worked on time-series deduplication, Enlinkd, Horizon startup scripts, CircleCI optimizations, documentation (detectors, trap config, git config management, and device config backup types), Flows, Keycloak, Grafana, OSGi, SCV, Karaf, Telemetryd, Horizon Stream (HTTP client, GraphQL support, UI), events, SNMP config encryption, Newts, alarm UI, ALEC UI, Helm REST queries, and appliance UI.

Github Project Updates

Internals, APIs, and Documentation
  • Patrick continued his work on deduplicating metrics in OIA time-series queries.
  • Antonio did more refactoring/cleanup of Enlinkd code.
  • Alex fixed a bug where the Horizon Docker container would write RUNAS= on each startup.
  • Alex worked on the rerun-as-$RUNAS behavior.
  • Morteza merged his initial work templatizing the CircleCI build.
  • Emily worked on documentation for the JdbcDetector.
  • Bonnie did more work on trap configuration documentation.
  • Jesse did more work on flow ingress/egress handling.
  • Christian fixed some outdated doc links in various places.
  • Chandra fixed some issues with time-series API loading in Karaf.
  • Jason did more work on Keycloak and Grafana integration.
  • Christian fixed some issues with OSGi exports in the core DB project.
  • Christian added an scv-list command to view SCV aliases in the Karaf shell.
  • Jesse worked on a utility to replay pcap files in Karaf for Telemetryd testing.
  • Yang Li worked on an HTTP client connection leak in Horizon Stream.
  • Emily worked on documentation for managing configs with Git.
  • Chandra fixed some dependency issues in the collection API.
  • Scott updated some documentation for device config backup config types.
  • Morteza did more work on CircleCI optimizations, including merging jobs and allowing keywords for triggering types of builds.
  • Lars made some more changes relating to node category events.
  • Chandra worked on enabling encryption of the SNMP config.
  • Chandra did some cleanups to Newts/time-series features in Karaf.
  • Chandra added support for publishing to Newts in addition to the default time-series strategy in parallel.
  • Patrick fixed an issue with importing credentials to SCV.
  • Dustin updated flow thresholding to handle unknown flow direction.
Web, ReST, UI, and Helm
  • Thomas updated the "alarm not found" page to note that alarm clears can cause the error to show.
  • Anya did more work on a web UI for ALEC.
  • Mike Rose worked on some UI login template fixes.
  • Yang Li worked on GraphQL support in Stream.
  • Scott fixed a REST issue with affectedNodeCount and situationAlarmCount queries from Helm.
  • Mike Rose and Chinh Le worked on a Vue UI for Minions/appliances.
Contributors

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

  • Chinh Le
  • Dustin Frisch
  • Mike Rose
  • Morteza Ershad-Manesh
  • Anya Rybalova
  • Yang Li
  • Benjamin Janssens
  • Jesse White
  • Thomas Bigger
  • Patrick Schweizer
  • Christian Pape
  • Chandra Gorantla
  • Alex May
  • Antonio Russo
  • Bonnie Robinson
  • DJ Gregor
  • Jason Berry
  • Emily Marsh
  • Lars Schreiber
  • Scott Theleman
  • Mark Frazier
  • Pushkar Suthar
  • Benjamin Reed

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will be exhibiting as well.
A bunch of OpenNMS folks will be attending or helping out in the exhibition hall, so be sure to say hi!

**Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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-27: Have OpenNMS Operator Implement Horizon Stream through CRDs
  • HS-170: App Header: Research & Discovery
  • HS-171: OLM support
  • HS-176: Research GraphQL library for Spring boot
  • HS-180: KC Flow - Test new user unique link flow with opennms mail server, modify template if needed
  • HS-181: FE - Add scaffolding for page/routing/components for minion and device tables
  • NMS-9591: IcmpDetectorTest and PollableServiceConfigTest require JNI/JNA to run and should be moved to integration tests
  • NMS-14215: Encrypt SNMP Credentials
  • NMS-14311: Update documentation for changes to types of configs
  • NMS-14384: Cortex TSS plugin investigation
  • NMS-14385: Karaf scv-list command to see what entries exist
  • NMS-14396: runas=root entry in opennms.conf gets duplicated
  • NMS-14420: Improve config and main yml files
  • NMS-14432: Enlinkd tests clean compile warnings
  • NMS-14434: Enlinkd Clean Persistence Classes
  • NMS-14435: Enlinkd Clean Service Classes
  • NMS-14436: Enlinkd Clean Adapters Classes
  • NMS-14441: Appliance: Minion fails to come up with 30.x and bleeding image
  • NMS-14460: Update all Vue UI packages to latest
  • OIA-40: Add .env.development file to ui extension sample app

by RangerRick at July 05, 2022 07:05 PM

OpenNMS On the Horizon – July 5th, 2022

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

Since last time, we worked on time-series deduplication, Enlinkd, Horizon startup scripts, CircleCI optimizations, documentation (detectors, trap config, git config management, and device config backup types), Flows, Keycloak, Grafana, OSGi, SCV, Karaf, Telemetryd, Horizon Stream (HTTP client, GraphQL support, UI), events, SNMP config encryption, Newts, alarm UI, ALEC UI, Helm REST queries, and appliance UI.

Github Project Updates

Internals, APIs, and Documentation
  • Patrick continued his work on deduplicating metrics in OIA time-series queries.
  • Antonio did more refactoring/cleanup of Enlinkd code.
  • Alex fixed a bug where the Horizon Docker container would write RUNAS= on each startup.
  • Alex worked on the rerun-as-$RUNAS behavior.
  • Morteza merged his initial work templatizing the CircleCI build.
  • Emily worked on documentation for the JdbcDetector.
  • Bonnie did more work on trap configuration documentation.
  • Jesse did more work on flow ingress/egress handling.
  • Christian fixed some outdated doc links in various places.
  • Chandra fixed some issues with time-series API loading in Karaf.
  • Jason did more work on Keycloak and Grafana integration.
  • Christian fixed some issues with OSGi exports in the core DB project.
  • Christian added an scv-list command to view SCV aliases in the Karaf shell.
  • Jesse worked on a utility to replay pcap files in Karaf for Telemetryd testing.
  • Yang Li worked on an HTTP client connection leak in Horizon Stream.
  • Emily worked on documentation for managing configs with Git.
  • Chandra fixed some dependency issues in the collection API.
  • Scott updated some documentation for device config backup config types.
  • Morteza did more work on CircleCI optimizations, including merging jobs and allowing keywords for triggering types of builds.
  • Lars made some more changes relating to node category events.
  • Chandra worked on enabling encryption of the SNMP config.
  • Chandra did some cleanups to Newts/time-series features in Karaf.
  • Chandra added support for publishing to Newts in addition to the default time-series strategy in parallel.
  • Patrick fixed an issue with importing credentials to SCV.
  • Dustin updated flow thresholding to handle unknown flow direction.
Web, ReST, UI, and Helm
  • Thomas updated the "alarm not found" page to note that alarm clears can cause the error to show.
  • Anya did more work on a web UI for ALEC.
  • Mike Rose worked on some UI login template fixes.
  • Yang Li worked on GraphQL support in Stream.
  • Scott fixed a REST issue with affectedNodeCount and situationAlarmCount queries from Helm.
  • Mike Rose and Chinh Le worked on a Vue UI for Minions/appliances.
Contributors

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

  • Chinh Le
  • Dustin Frisch
  • Mike Rose
  • Morteza Ershad-Manesh
  • Anya Rybalova
  • Yang Li
  • Benjamin Janssens
  • Jesse White
  • Thomas Bigger
  • Patrick Schweizer
  • Christian Pape
  • Chandra Gorantla
  • Alex May
  • Antonio Russo
  • Bonnie Robinson
  • DJ Gregor
  • Jason Berry
  • Emily Marsh
  • Lars Schreiber
  • Scott Theleman
  • Mark Frazier
  • Pushkar Suthar
  • Benjamin Reed

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

Grace Hopper Celebration - Orlando, FL - September 20th through 23rd

Veena Kannan will be presenting a virtual lightning talk titled "Open Source 101 – Myth Buster Edition" at the Grace Hopper Celebration.

We don't know the day nor time of the presentation yet, more details to come.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will be exhibiting as well.
A bunch of OpenNMS folks will be attending or helping out in the exhibition hall, so be sure to say hi!

**Open Source Monitoring Conference - Nuremberg, Germany - November 14th through 16th

The OpenNMS Group is a gold sponsor of OSMC this year, and will have a booth as well.
Stop by and say hello!

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-27: Have OpenNMS Operator Implement Horizon Stream through CRDs
  • HS-170: App Header: Research & Discovery
  • HS-171: OLM support
  • HS-176: Research GraphQL library for Spring boot
  • HS-180: KC Flow - Test new user unique link flow with opennms mail server, modify template if needed
  • HS-181: FE - Add scaffolding for page/routing/components for minion and device tables
  • NMS-9591: IcmpDetectorTest and PollableServiceConfigTest require JNI/JNA to run and should be moved to integration tests
  • NMS-14215: Encrypt SNMP Credentials
  • NMS-14311: Update documentation for changes to types of configs
  • NMS-14384: Cortex TSS plugin investigation
  • NMS-14385: Karaf scv-list command to see what entries exist
  • NMS-14396: runas=root entry in opennms.conf gets duplicated
  • NMS-14420: Improve config and main yml files
  • NMS-14432: Enlinkd tests clean compile warnings
  • NMS-14434: Enlinkd Clean Persistence Classes
  • NMS-14435: Enlinkd Clean Service Classes
  • NMS-14436: Enlinkd Clean Adapters Classes
  • NMS-14441: Appliance: Minion fails to come up with 30.x and bleeding image
  • NMS-14460: Update all Vue UI packages to latest
  • OIA-40: Add .env.development file to ui extension sample app

by RangerRick at July 05, 2022 07:05 PM

June 27, 2022

OpenNMS On the Horizon – June 27th, 2022

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

Since last time, we worked on documentation (SNMP OPAQUE data types, backups, flow classification, trap configuration, graph API), as well as time-series cache optimizations, flaky tests, Horizon Stream (Keycloak integration, detectors, provisioning, login screen), maven fixes, Enlinkd cleanup, time-series deduplication, Kafka, SNMP config encryption, flow ingress and egress, circleci, device config backup, the MIB compiler, OSGi exports, topology UI, event/alarm advanced search, SCV admin UI, ALEC UI, and UI plugin route support.

Github Project Updates

Internals, APIs, and Documentation
  • Freddy worked on optimizations to time-series cache handling.
  • Alexander continued his work on reproducing/fixing flaky tests.
  • Gerald and Jason worked on Keycloak improvements in Horizon Stream.
  • Dmitri worked on documentation for SNMP OPAQUE data type support.
  • I fixed up some duplicate dependency warnings in Maven.
  • Alex worked on an issue with event-sending in Kafka.
  • Christian did more work on encrypting PostgreSQL credentials.
  • Patrick did more work on deduplicating time-series query results.
  • Antonio worked on a bunch of cleanup in Enlinkd code in advance of doing more future work.
  • Arthur did more work on porting detectors over to Horizon Stream.
  • Jesse continued to play with alternate ways to deal with ingress/egress calculation on flow ingestion.
  • Chandra worked on encryption and decryption of SNMP config.
  • Alex wrapped up his packaging changes to back up some webapp configs as pristine.
  • Mark Mahacek updated the backup instructions for RHEL in the documentation.
  • Mark Frazier continued his work on provisioning in Stream.
  • Morteza did more work on optimizng CircleCI dynamic configs.
  • I fixed up some broken CircleCI configs related to running flaky tests.
  • Alex updated the device config backup poll status to include script output.
  • Alberto worked on fixing a bug in the datacollection configs generated by the MIB compiler.
  • Emily made some improvements to the flow classification documentation.
  • Christian fixed an issue with aggressive OSGi exports in the core DB code that could cause Karaf loading issues.
  • Christian updated outdated docs links in a bunch of places in the source tree.
  • Christian fixed some classpath issues in the Newts repository converter script.
  • Mark Mahacek worked on updates to the graph API docs.
  • Emily did some refactoring of the backup/restore docs.
  • Bonnie added and updated some trap configuration docs that previously lived in the old wiki.
Web, ReST, UI, and Helm
  • Chinh Le did more work on a Vue-based topology UI.
  • Dustin added a link to SCV editing in the Admin UI.
  • Mike Rose worked on email/login templates in Stream.
  • James worked on support for negated search terms in the event/alarm advanced search.
  • Pushkar did more updates to the REST API for device config backup.
  • Anya continued to work on an ALEC UI.
  • Mike Rose did more work on sharing vue routes with UI plugins.
  • Thomas updated the "alarm ID not found" error page on the webapp to clarify the case where the alarm might have been cleared and reaped.
Contributors

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

  • Anya Rybalova
  • Mark Mahacek
  • Bonnie Robinson
  • Emily Marsh
  • Alex May
  • Thomas Bigger
  • Christian Pape
  • Antonio Russo
  • Pushkar Suthar
  • Alexander Chadfield
  • Benjamin Janssens
  • Jason Berry
  • Mike Rose
  • Morteza Ershad-Manesh
  • Benjamin Reed
  • Patrick Schweizer
  • Dmitri Herdt
  • Alberto Ramos
  • Chandra Gorantla
  • Freddy Chu
  • Mark Frazier
  • Jesse White
  • Arthur Naseef
  • Chinh Le
  • James Hutchinson
  • Gerald Humphries

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will be exhibiting as well.
A bunch of OpenNMS folks will be attending or helping out in the exhibition hall, so be sure to say hi!

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

  • ALEC-105: Vision and Ideas deck for Key Customer - Use to schedule a Key Customer feedback session.
  • ALEC-106: Competitive Analysis - Continuous - One Vendor a Week
  • ALEC-107: Hellinger Distance for ALEC: Using Key Customer Data and Compare results to Basic DBSCAN
  • ALEC-116: Mechanism to Store Permission to Collect Data - write to db or file, versioning of the agreement
  • ALEC-118: Setup an environment
  • ALEC-119: Define what is ALEC and how it works
  • ALEC-124: Basic Page Describing ALEC
  • HS-61: Development | 1st Time Login
  • HS-89: UI - Password Reset Flow
  • HS-104: Migrate the BSF detector for provisiong
  • HS-157: Theme and test email templates once mail server available
  • HS-160: PPT - summary of findings and UX solutions
  • HS-162: Research API Gateway
  • NMS-13043: Check ticketing plugins against current versions
  • NMS-13834: Authentication related WEB-INF files should also exist in etc-pristine
  • NMS-13943: Set always ifindex for enlinkd links
  • NMS-13956: Link in ERROR log doesn't exist
  • NMS-14056: Aruba AOS-CX datacollection config
  • NMS-14079: RRD file parsing failed with newts-repository-converter
  • NMS-14216: Encrypt Postgres credentials
  • NMS-14314: MIB compiler creates datacollections that fail to validate
  • NMS-14393: Link to SCV UI is missing from OG UI admin landing page
  • NMS-14415: Kafka Consumer stops commits when overloaded
  • NMS-14425: Let vue plugins change routes
  • NMS-14427: Remove XMP protocol support
  • NMS-14433: Enlinkd Clean Config Classes
  • NMS-14439: Branch named -flaky is not running flaky tests
  • OIA-39: Update UI example plugin / test app with changes for router

by RangerRick at June 27, 2022 04:44 PM

OpenNMS On the Horizon – June 27th, 2022

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

Since last time, we worked on documentation (SNMP OPAQUE data types, backups, flow classification, trap configuration, graph API), as well as time-series cache optimizations, flaky tests, Horizon Stream (Keycloak integration, detectors, provisioning, login screen), maven fixes, Enlinkd cleanup, time-series deduplication, Kafka, SNMP config encryption, flow ingress and egress, circleci, device config backup, the MIB compiler, OSGi exports, topology UI, event/alarm advanced search, SCV admin UI, ALEC UI, and UI plugin route support.

Github Project Updates

Internals, APIs, and Documentation
  • Freddy worked on optimizations to time-series cache handling.
  • Alexander continued his work on reproducing/fixing flaky tests.
  • Gerald and Jason worked on Keycloak improvements in Horizon Stream.
  • Dmitri worked on documentation for SNMP OPAQUE data type support.
  • I fixed up some duplicate dependency warnings in Maven.
  • Alex worked on an issue with event-sending in Kafka.
  • Christian did more work on encrypting PostgreSQL credentials.
  • Patrick did more work on deduplicating time-series query results.
  • Antonio worked on a bunch of cleanup in Enlinkd code in advance of doing more future work.
  • Arthur did more work on porting detectors over to Horizon Stream.
  • Jesse continued to play with alternate ways to deal with ingress/egress calculation on flow ingestion.
  • Chandra worked on encryption and decryption of SNMP config.
  • Alex wrapped up his packaging changes to back up some webapp configs as pristine.
  • Mark Mahacek updated the backup instructions for RHEL in the documentation.
  • Mark Frazier continued his work on provisioning in Stream.
  • Morteza did more work on optimizng CircleCI dynamic configs.
  • I fixed up some broken CircleCI configs related to running flaky tests.
  • Alex updated the device config backup poll status to include script output.
  • Alberto worked on fixing a bug in the datacollection configs generated by the MIB compiler.
  • Emily made some improvements to the flow classification documentation.
  • Christian fixed an issue with aggressive OSGi exports in the core DB code that could cause Karaf loading issues.
  • Christian updated outdated docs links in a bunch of places in the source tree.
  • Christian fixed some classpath issues in the Newts repository converter script.
  • Mark Mahacek worked on updates to the graph API docs.
  • Emily did some refactoring of the backup/restore docs.
  • Bonnie added and updated some trap configuration docs that previously lived in the old wiki.
Web, ReST, UI, and Helm
  • Chinh Le did more work on a Vue-based topology UI.
  • Dustin added a link to SCV editing in the Admin UI.
  • Mike Rose worked on email/login templates in Stream.
  • James worked on support for negated search terms in the event/alarm advanced search.
  • Pushkar did more updates to the REST API for device config backup.
  • Anya continued to work on an ALEC UI.
  • Mike Rose did more work on sharing vue routes with UI plugins.
  • Thomas updated the "alarm ID not found" error page on the webapp to clarify the case where the alarm might have been cleared and reaped.
Contributors

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

  • Anya Rybalova
  • Mark Mahacek
  • Bonnie Robinson
  • Emily Marsh
  • Alex May
  • Thomas Bigger
  • Christian Pape
  • Antonio Russo
  • Pushkar Suthar
  • Alexander Chadfield
  • Benjamin Janssens
  • Jason Berry
  • Mike Rose
  • Morteza Ershad-Manesh
  • Benjamin Reed
  • Patrick Schweizer
  • Dmitri Herdt
  • Alberto Ramos
  • Chandra Gorantla
  • Freddy Chu
  • Mark Frazier
  • Jesse White
  • Arthur Naseef
  • Chinh Le
  • James Hutchinson
  • Gerald Humphries

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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.

Calendar of Events

SCaLE - Los Angeles, California - July 28th through 31st, 2022

The OpenNMS Group will be an exhibitor and Gold Sponsor at the Southern California Linux Expo in Los Angeles, California, from July 28th through 31st.
Stop by our booth and say hi, and don't miss Jeff Gehlbach's presentation on Sunday, titled Network Visibility: The Heart of Modern Monitoring.

All Things Open - Raleigh, NC - October 30th through November 2nd, 2022

The OpenNMS Group will be a live stream sponsor for All Things Open, and will be exhibiting as well.
A bunch of OpenNMS folks will be attending or helping out in the exhibition hall, so be sure to say hi!

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

  • ALEC-105: Vision and Ideas deck for Key Customer - Use to schedule a Key Customer feedback session.
  • ALEC-106: Competitive Analysis - Continuous - One Vendor a Week
  • ALEC-107: Hellinger Distance for ALEC: Using Key Customer Data and Compare results to Basic DBSCAN
  • ALEC-116: Mechanism to Store Permission to Collect Data - write to db or file, versioning of the agreement
  • ALEC-118: Setup an environment
  • ALEC-119: Define what is ALEC and how it works
  • ALEC-124: Basic Page Describing ALEC
  • HS-61: Development | 1st Time Login
  • HS-89: UI - Password Reset Flow
  • HS-104: Migrate the BSF detector for provisiong
  • HS-157: Theme and test email templates once mail server available
  • HS-160: PPT - summary of findings and UX solutions
  • HS-162: Research API Gateway
  • NMS-13043: Check ticketing plugins against current versions
  • NMS-13834: Authentication related WEB-INF files should also exist in etc-pristine
  • NMS-13943: Set always ifindex for enlinkd links
  • NMS-13956: Link in ERROR log doesn't exist
  • NMS-14056: Aruba AOS-CX datacollection config
  • NMS-14079: RRD file parsing failed with newts-repository-converter
  • NMS-14216: Encrypt Postgres credentials
  • NMS-14314: MIB compiler creates datacollections that fail to validate
  • NMS-14393: Link to SCV UI is missing from OG UI admin landing page
  • NMS-14415: Kafka Consumer stops commits when overloaded
  • NMS-14425: Let vue plugins change routes
  • NMS-14427: Remove XMP protocol support
  • NMS-14433: Enlinkd Clean Config Classes
  • NMS-14439: Branch named -flaky is not running flaky tests
  • OIA-39: Update UI example plugin / test app with changes for router

by RangerRick at June 27, 2022 04:44 PM

June 25, 2022

2022 Open Source Summit – Day 4

I always feel a little sad on the last day of any conference, and Open Source Summit was no different. It seems like the week went by too fast.

With the Sponsor Showcase closing on Thursday, attendance at the Friday keynotes was light, but those of us that showed up got to hear some pretty cool presentations.

Picture of Rachel Rose on stage

The first one was from Rachel Rose, who supervises R&D at Industrial Light and Magic. As a fanboy of ILM I was very eager to hear what she had to say, and she didn’t disappoint. (sorry about the unflattering picture but I took three and they were all bad)

In the past a lot of special effects that combine computer generated imagery (CGI) and live action are created separately. The live action actors perform in front of a green screen and the CGI backgrounds are added later. Technology has advanced to the point that the cutting edge now involves live action sets that are surrounded by an enormous, curved LED screens, and the backgrounds are projected as the actors perform.

This presents a number of challenges as the backgrounds may need to change as the camera moves, but it provides a much better experience for the actors and the audience.

The tie-in to open source is that a lot of the libraries used the creation of these effects are now open. In fact, the Academy of Motion Picture Arts and Sciences (the people responsible for the Oscars) along with the Linux Foundation have sponsored the Academy Software Foundation (ASWF) to act as a steward for the “content creation industry’s open source software base”. The projects under the ASWF fall into one of two tiers: Adopted and Incubation. Currently there are four projects that are mature enough to be adopted and several more in the incubation stage.

A lot of this was so specific to the industry that it went over my head, but I could understand the OpenEXR project, which provides a reference implementation of the EXR file format for storing high quality images.

A slide showing the ILM Stagecraft volume setup

She then went on to talk about Stagecraft, which is the name of the ILM platform for producing content. I would love to be able to visit one day. It would be so cool to see a feature being made with the CGI, sets and actors all integrated.

Picture of Vini Jaiswal on stage

The next speaker was Vini Jaiswal, Developer Advocate for Databricks. I had seen a cool Databricks presentation back on Day 2 and the first part was similar, but Jaiswal skipped the in-depth technical details and focused more on features and adoption. A rather large number of companies are using the Delta Lake technology as a way to apply business intelligence to data lakes, and as the need to analyze normally unstructured data becomes more important, I expect to see even more organizations adopt it.

The third presentation was a video by Dmitry Vinnik of Meta on measuring open source project health.

Begin rant.

To be honest I was a little unhappy to see a video as a keynote. It was the only one for the entire week and I have to admit I kind of tuned it out. It wasn’t even novel, as he has given it at least twice before. The video we were shown is available on Youtube from a conference earlier in the month and he posted another one dated June 24th from the Python Web Conference (while it has a different splash screen it looks to be the same presentation).

A still picture of a part of the video sent in by Demetri Vinnik

Look, I’ve given the same talk multiple times at different conferences, so I get it. But to me keynotes are special and should be unique. I was insulted that I bothered to show up in person, wear a mask, get my temperature checked each day, and I expected something better than a video I could have watched at home.

Note: Rachel Rose played a video as part of her presentation and that’s totally cool, as she didn’t “phone in” the rest of it.

Okay, end rant.

The next two presenters were very inspiring young people, and it was nice to have them included as part of the program.

Picture of Alena Analeigh on stage

The first speaker was Alena Analeigh, an amazing young woman who, among other achievements, has been accepted to medical school at age 13 (note that in trying to find a reference for that I came up blank, except for her twitter bio, so if you have one please let me know and I can update this post).

Med school is just one of her achievements. She also founded The Brown STEM Girls as an organization to get more women of color interested in science, technology, engineering and math. She stated that while men make up 52% of the workforce, they represent 76% of people employed in STEM fields.

My love of such things was fostered at an early age, and programs like hers are a great step to encourage young women of color to get interested in and eventually pursue careers in STEM.

While she seemed a little nervous and tentative while presenting, the final speaker of the morning was the exact opposite. At 11 years old, I could listen to Orion Jean speak for hours.

Picture of Orion Jean on stage

Orion also has a number of accolades, including Time Magazine’s “Kid of the Year“. He got his start as the winner of a speech contest sponsored by Think Kindness, and since then has started the Race to Kindness (“a race where everybody wins”) to spread kindness around the world.

To help inspire acts of kindness he uses the acronym K.I.N.D.:

  • Keep Your Eyes Open: Look for opportunities to be kind to others. One example he used is one I actually practice. If you are in line to check out at the store, and you see a person with a lot less items than you, while not offer to let them check out first?
  • Include Others: No one can effect change alone. Get others involved.
  • Nothing Is Too Small: One thing that keeps us from spreading kindness is that we can try to think too big. Even small acts of kindness can have a huge impact.
  • Do Something About It: Take action. Nothing can change if we do nothing.

After the keynotes I had to focus on some work stuff that I had let languish for the week, so I didn’t make it to any of the presentations, but overall I was happy with my first conference in three years.

There were a few people that attended who tested positive for COVID, so I plan to take some precautions when I get home and hope that the steps the Linux Foundation took to mitigate infection worked. So far I’ve tested negative twice, and I’ll probably take another test on Monday.

My next conference will be SCaLE in Los Angeles at the end of July, and I plan to be in Dublin, Ireland for Open Source Summit – Europe. If you are comfortable getting out and about I hope to see you there.

by Tarus at June 25, 2022 07:04 PM

June 24, 2022

2022 Open Source Summit – Day 3

Thursday at the Open Source Summit started as usual at the keynotes.

Picture of Robin Bender Ginn on stage

Robin Bender Ginn opened today’s session with a brief introduction and then we jumped into the first session by Matt Butcher of Fermyon.

Picture of Matt Butcher on stage

I’ve enjoyed these keynotes so far, but to be honest nothing has made me go “wow!” as much as this presentation by Fermyon. I felt like I was witnessing a paradigm shift in the way we provide services over the network.

To digress quite a bit, I’ve never been happy with the term “cloud”. An anecdotal story is that the cloud got its name from the fact that the Visio icon for the Internet was a cloud (it’s not true) but I’ve always preferred the term “utility computing”. To me cloud services should be similar to other utilities such as electricity and water where you are billed based on how much you use.

Up until this point, however, instead of buying just electricity it has been more like you are borrowing someone else’s generator. You still have to pay for infrastructure.

Enter “serverless“. While there are many definitions of serverless, the idea is that when you are not using a resource your cost should be zero. I like this definition because, of course, there have to be servers somewhere, but under the utility model you shouldn’t be paying for them if you aren’t using them. This is even better than normal utilities because, for example, my electricity bill includes fees for things such as the meter and even if I don’t use a single watt I still have to pay for something.

Getting back to the topic at hand, the main challenge with serverless is how do you spin up a resource fast enough to be responsive to a request without having to expend resources when it is quiescent? Containers can take seconds to initialize and VMs much longer.

Fermyon hopes to address this by applying Webassembly to microservices. Webassembly (Wasm) was created to allow high performance applications, written in languages other than Javascript, to be served via web pages, although as Fermyon went on to demonstrate this is not its only use.

The presentation used a game called Finicky Whiskers to demonstrate the potential. Slats the cat is a very finicky eater. Sometimes she wants beef, sometimes chicken, sometimes fish and sometimes vegetables. When the game starts Slats will show you an icon representing the food they want, and you have to tap or click on the right icon in order to feed it. After a short time, Slats will change her choice and you have to switch icons. You have 30 seconds to feed as many correct treats as possible.

Slide showing infrastructure for Frisky Kittens: 7 microservices, Redis in a container, Nomad cluster on AWS, Fermyon

Okay, so I doubt it will have the same impact on game culture as Doom, but they were able to implement it using only seven microservices, all in Wasm. There is a detailed description on their blog, but I liked that fact that it was language agnostic. For example, the microservice that controls the session was written in Ruby, but the one that keeps track of the tally was written in Rust. The cool part is that these services can be spun up on the order of a millisecond or less and the whole demo runs on three t2.small AWS instances.

This is the first implementation I’ve seen that really delivers on the promise of serverless, and I’m excited to see where it will go. But don’t let me put words into their mouth, as they have a blog post on Fermyon and serverless that explains it better than I could.

Picture of Carl Meadows on stage

The next presentation was on OpenSearch by Carl Meadows, a Director at AWS.

Note: Full disclosure, I am an AWS employee and this post is a personal account that has not been endorsed or reviewed by my employer.

OpenSearch is an open source (Apache 2.0 licensed) set of technologies for storing large amounts of text that can then be searched and visualized in near real time. Its main use case is for making sense of streaming data that you might get from, say, log files or other types of telemetry. It uses the Apache Lucene search engine and latest version is based on Lucene 9.1.

One of the best ways to encourage adoption of an open source solution is by having it integrate with other applications. With OpenSearch this has traditionally been done using plugins, but there is a initiative underway to create an “extension” framework.

Plugins have a number of shortcomings, especially in that they tend to be tightly coupled to a particular version of OpenSearch, so if a new version comes out your existing plugins may not be compatible until they, too, are upgraded. I run into this with a number of applications I use such as Grafana and it can be annoying.

The idea behind extensions is to provide an SDK and API that are much more resistant to changes in OpenSearch so that important integrations are decoupled from the main OpenSearch application. This also provides an extra layer of security as these extensions will be more isolated from the main code.

I found this encouraging. It takes time to build a community around an open source project but one of the best ways to do it is to provide easy methods to get involved and extensions are a step in the right direction. In addition, OpenSearch has decided not to require a Contributor License Agreement (CLA) for contributions. While I have strong opinions on CLAs this should make contributing more welcome for developers who don’t like them.

Picture of Taylor Dolezal on stage

The next speaker was Taylor Dolezal from the Cloud Native Computing Foundation (CNCF). I liked him from the start, mainly because he posted a picture of his dog:

Slide of a white background with the head and sad eyes of a cute black dog

and it looks a lot like one of my dogs:

Picture of the head of my black Doberman named Kali

Outside of having a cool dog, Dolezal has a cool job and talked about building community within the CNCF. Just saying “hey, here’s some open source code” doesn’t mean that qualified people will give up nights and weekends to work on your project, and his experiences can be applied to other projects as well.

The final keynote was from Chris Wright of Red Hat and talked about open source in automobiles.

Picture of Chris Wright on stage

Awhile ago I actually applied for a job with Red Hat to build a community around their automotive vertical (I didn’t get it). I really like cars and I thought that combining that with open source would just be a dream job (plus I wanted the access). We are on the cusp of a sea change with automobiles as the internal combustion engine gives way to electric motors. Almost all manufacturers have announced the end of production for ICEs and electric cars are much more focused on software. Wright showed a quote predicting that automobile companies will need four times the amount of software-focused talent that the need now.

A slide with a quote stating that automobile companies will need more than four times of the software talent they have now

I think this is going to be a challenge, as the automobile industry is locked into 100+ years of “this is the way we’ve always done it”. For example, in many states it is still illegal to sell cars outside of a dealership. When it comes to technology, these companies have recently been focused on locking their customers into high-margin proprietary features (think navigation) and only recently have they realized that they need to be more open, such as supporting Android Auto or CarPlay. As open source has disrupted most other areas of technology, I expect it to do the same for the automobile industry. It is just going to take some time.

I actually found some time to explore a bit of Austin outside the conference venue. Well, to be honest, I went looking for a place to grab lunch and all the restaurants near the hotel were packed, so I decided to walk further out.

Picture of the wide Brazos river from under the Congress Avenue bridge

The Brazos River flows through Austin, and so I decided to take a walk on the paths beside it. The river plays a role in the latest Neal Stephenson novel called Termination Shock. I really enjoyed reading it and, spoiler alert, it does actually have an ending (fans of Stephenson’s work will know what I’m talking about).

I walked under the Congress Avenue bridge, which I learned was home to the largest urban bat colony in the world. I heard mention at the conference of “going to watch the bats” and now I had context.

A sign stating that drones were not permitted to fly near the bat colony under the Congress Avenue bridge

Back at the Sponsor Showcase I made my way over to the Fermyon booth where I spent a lot of time talking with Mikkel Mørk Hegnhøj. When I asked if they had any referenceable customers he laughed, as they have only been around for a very short amount of time. He did tell me that in addition to the cat game they had a project called Bartholomew that is a CMS built on Fermyon and Wasm, and that was what they were using for their own website.

Picture the Fermyon booth with people clustered around

If you think about it, it makes sense, as a web server is, at its heart, a fileserver, and those already run well as a microservice.

They had a couple of devices up so that people could play Finicky Whiskers, and if you got a score of 100 or more you could get a T-shirt. I am trying to simplify my life which includes minimizing the amount of stuff I have, but their T-shirts were so cool I just had to take one when Mikkel offered.

Note that when I got back to my room and actually played the game, I came up short.

A screenshot of my Finicky Whiskers score of 99

The Showcase closed around 4pm and a lot of the sponsors were eager to head out, but air travel disruptions affected a lot of them. I’m staying around until Saturday and so far so good on my flights. I’m happy to be traveling again but I can’t say I’m enjoying this travel anxiety.

[Note: I overcame by habit of sitting toward the back and off to the side so the quality of the speaker pictures has improved greatly.]

by Tarus at June 24, 2022 08:01 PM

June 23, 2022

2022 Open Source Summit – Day 2

The word for Day 2 of the Open Source Summit is SBOM.

When I first heard the term my thought was that someone had spoken a particular profanity at an inappropriate time, but SBOM in this context means “Software Bill of Materials”. Open source is so prevalent these days that it is probably included in a lot of the software you use and you may not be aware of it, so when an issue is discovered such as Log4shell it can be hard to determine what software is affected. The idea of asking all vendors (both software-only and software running on devices) to provide an SBOM is a first step to being able to audit this software.

It isn’t as easy as you might think. The OpenNMS project I was involved with used over a hundred different open source libraries. I know because I once did a license audit to make sure everything being used had compatible licenses. I also have used Black Duck Software (now Synopsys) to generate a list of included software, and it looks like they now offer SBOM support as well, but I get ahead of myself.

Note that Synopsys is here in the Sponsor Showcase but when I stopped by the booth no one was there.

Getting back to the conference, the second morning keynotes were more sparsely attended than yesterday, but the room was far from empty. The opening remarks were given by Mike Dolan, SVP and GM of Projects at the Linux Foundation, and he was a last minute replacement for Jim Zemlin, who was not feeling well.

Picture of Mike Dolan on stage

Included in the usual housekeeping announcements was a short “in memoriam” for Shubhra Kar, the Linux Foundation CTO who passed away unexpectedly this year.

Dolan also mentioned that the Software Package Data eXchange (SPDX) open standard used for creating SBOMs had turned 10 years old (and it looks like it will hit 11 in August). This was relevant because with applications of any complexity including hundreds if not thousands of open source software projects, there had to be some formal way of listing them for analysis in an SBOM, and most default to SPDX.

The next speaker was Hilary Carter who is in charge of research for the Linux Foundation.

Picture of Mike Dolan and Hilary Carter on stage

She spoke on the work the Linux Foundation is doing to measure the worldwide impact of open source. As part of that she mentioned that there is a huge demand for open source talent in the market place, but there are also policy barriers for employees of many companies to contribute to open source. She also brought up SBOMs as a way to determine how widespread open source use is in modern applications.

Stylized Mercator Map Projection

Since diversity has been a theme at this conference I wanted to address a pet peeve of mine. This is a slide from Carter’s presentation and it uses a stylized Mercator projection to show the world. I just think it is about time we stop using this projection, as the continent highlighted, Africa, is actually much, much larger in proportion to the other continents than is shown on this map. As an alternative I would suggest the Gall-Peters projection.

Gall-Peters projection of the world yoinked from Wikipedia

To further digress, I asked my friend Ben to run “stylized Gall-Peters projection” through Midjourney but I didn’t feel comfortable posting any of the results (grin).

Anyway, enough of that. The next presenter was Kevin Jakel, who founded Unified Patents.

Picture of Kevin Jakel on stage

The goal of Unified Patents is to protect open source from patent trolls. Patent trolls are usually “non-practicing entities” who own a lot of patents but exist to extract revenue from companies they believe are infringing upon them versus building products. Quite frequently it is cheaper to settle than pursue legal action against these entities and this just encourages more actions on the part of the trolls.

The strategy to combat this is described as “Detect, Disrupt and Deter”. For a troll, the most desired patents are ones that are broad, as this means more companies can be pursued. However, overly broad patents are also subject to review, and if the Patent and Trademark Office is convinced a patent isn’t specific enough it can invalidate it, destroying the revenue stream for the patent troll.

I’m on the fence over software patents in general. I mean, let’s say a company could create a piece of software that exactly modeled the human body and how a particular drug would interact with it, I think that deserves some protection. But I don’t think that anyone owns the idea of, say, “swipe left to unlock”. Also it seems like software rights could be protected by copyright, but then again IANAL (one source for more information on this is Patent Absurdity)

Picture of Amir Montezary on stage

The next person on stage was Amir Montazery, of the Open Source Technology Improvement Fund. The mission of the OSTIF is to help secure open source software. They do this through both audits and fundraising to provide the resources to open source projects to make sure their software is secure as possible.

Jennings Aske, of New York-Presbyterian Hospital spoke next. I have worked a bit with technology in healthcare and as he pointed out there are a lot of network connected devices used in medicine today, from the devices that dispense drugs to the hospital beds themselves. Many of those do not have robust security (and note that these are proprietary devices). Since a hack or other breach could literally be a life and death situation, steps are being taken to mitigate this.

Picture of Jennings Aske on stage

I enjoyed this talk mainly because it was from the point of view of a consumer of software. As customers are what drive software revenues, they stand the best chance in getting vendors to provide SBOMs, along with government entities such as the National Telecommunications and Information Administration (NTIA). The NTIA has launched an effort called Software Component Transparency to help with this, and Jennings introduced a project his organization sponsors called DaggerBoard that is designed to scan SBOMs to look for vulnerabilities.

Picture of Arun Gupta on stage

The next keynote was from Arun Gupta of Intel. His talk focused on building stronger communities and how Intel was working to build healthy, open ecosystems. He pointed out that open source is based largely on trust, which is an idea I’ve promoted since I got involved in FOSS. Trust is something that can’t be bought and must be earned, and it is cool to see large companies like Intel working toward it.

Picture of Melissa Smolensky on stage

The final presenter was Melissa Smolensky from Gitlab who based her presentation around a “love letter to open source”. It was cute. I too have a strong emotional connection to my involvement in free and open source software that I don’t get anywhere else in my professional life, at least to the same degree.

I did get to spend some time near the AWS booth today, and after chatting at length with the FreeRTOS folks I happened to be nearby when Chris Short did a presentation on GitOps.

Chris Short presenting GitOps

In much the same way that Apple inspired a whole generation of Internet-focused products to put an “i” in front of their name, DevOps has spawned all kinds of “Ops” such as AIOps and MLOps and now GitOps. The idea of DevOps was built around creating processes to more closely tie software development to software operation and deployment, and key to this was configuration management software such as Puppet and Ansible. Instead of having to manage configuration files per instance, one could store them centrally and use agents to deploy them into the environment. This central repository allows for a high degree of control and versioning.

It is hard to think of a better tool for versioning than git, and thus GitOps was born. Software developed using GitOps is controlled by configuration files (usually in YAML) and using git to make changes.

While I am not an expert on GitOps by any means, suppose your application used a configuration file to determine the various clusters to create. To generate a new cluster you would just edit the file in your local copy of the repo, git commit and git push.

You application would then use something like Flux (not to be confused with the Flux query language from InfluxData) to note that a change has occurred and then do a git pull which would then cause the change to be applied.

Pretty cool, huh? A lot of people are familiar with git so it makes the DevOps learning curve a lot less steep. It also allows for the configuration of multiple repositories so you can control, say, access to secrets differently than the main application configuration.

Spot Callaway and Brian Proffitt

Also while I was in the booth I got this picture of two Titans of Open Source, Spot Callaway and Brian Proffitt. Oh yeah.

My final session of the day was given by Kelly O’Malley of Databricks on Delta Lake.

Kelly O'Malley presenting on Delta Lake

Now as someone who has given a lot of talks, I try to be respectful of the presenter and with the exception of the occasional picture and taking notes I try to stay off my phone. I apologized to her afterward as I was spending a lot of time looking up terms with which I was unfamiliar, such as “ACID” and “parquet“.

Delta Lake is an open source project to create a “Lakehouse”. The term is derived from a combination of “Data Warehouse” and “Data Lake“.

Data warehouses have been around for a very long time (in one of my first jobs I worked for a VAR that built hardware solutions for storing large data warehouses) and the idea was to bring together large amounts of operational data into one place so that “business intelligence” (BI) could be applied to help make decisions concerning the particular organization. Typically this data has been very structured, such as numeric or text data.

But people started figuring out that a lot of data, such as images, needed to be stored in more of a raw format. This form of raw data didn’t lend itself well to the usual BI analysis techniques.

Enter Delta Lake. Based on Apache Spark, it attempts to make data lakes more manageable and to make them as useful as data warehouses. I’m eager to find the time to learn more about this. When I was at OpenNMS we did a proof of concept about using Apache Spark to perform anomaly detection and it worked really well, so I think it is perfectly matched to make data lakes more useful.

My day ended at an internal event sponsored by Nithya Ruff, who in addition to being the chairperson of the Linux Foundation is also the head of the AWS OSPO. I made a number of new friends (and also got to meet Amir Montazery from the morning keynotes in person) but ended up calling it an early night because I was just beat. Eager to be fresh for the next day of the conference.

by Tarus at June 23, 2022 05:48 PM

June 22, 2022

2022 Open Source Summit – Day 1

The main activities for the Open Source Summit kicked off on Tuesday with several keynote sessions. The common theme was community and security, including the Open Source Security Foundation (OpenSSF).

The focus on security doesn’t surprise me. I was reminded of this xkcd comic when the Log4shell exploit hit.

An xkcd comic showing how complex digital architecture depends on little known, small projects

At the time I was consulting for a bank and I called the SVP and said “hey, we really need to get ahead of this” and he was like “oh, yeah, I was invited to a security video call a short while ago” and I was like “take the call”.

I managed to squeeze into the ballroom just before the talks started, and I was happy to see the room was packed, and would end up with a number of people standing in the back and around the edges.

People in the hotel ballroom watching the keynote presentations

The conference was opened by Robin Bender Ginn, Executive Director of the OpenJS Foundation.

Picture of Robin Bender Ginn on stage

After going over the schedule and other housekeeping topics, she mentioned that in recognition of Pride Month the conference was matching donations to the Transgender Education Network of Texas (TENT) as well as Equality Texas, up to $10,000.

In that vein the first person to speak was Aeva Black, and they talked about how diversity can increase productivity in communities, specifically open source communities, by bringing in different viewpoints and experiences. It was very well received, with many people giving a standing ovation at its conclusion.

Picture of Aeva Black on stage

The next speaker was Eric Brewer from Google (a platinum sponsor) and his talk focused on how to improve the robustness and security of open source (and he joked about having to follow Black with such a change of topic). Free software is exactly that, free and “as is”. So when something like Log4shell happens that impacts a huge amount of infrastructure, there is really no one who has an implicit obligation to rectify the issue. That doesn’t prevent people from trying to force someone to fix things, as this infamous letter to Daniel Stenberg demonstrates.

Picture of Eric Brewer on stage

Brewer suggests that we work on creating open source “curators” who can provide commercial support for open source projects. In some cases they could be the maintainer, but it is not necessary. When I was at OpenNMS our support offerings provided some of this indemnification along with service levels for fixing issues, but of course that came at a cost. I think it is going to take some time for people to realize that free software does not mean a free solution, but this idea of curators is a good start.

I got the feeling that the next presentation was one reason the hall was so packed as Linus Torvalds and Dirk Hohndel took the stage. Linus will be the first to admit that he doesn’t like public speaking, but I found that this format, where Dirk asked him questions and he responded, worked well. Linus, who is, well, not known for suffering fools gladly, admitted and apologized for his penchant for being rather sharp in his criticism, and when Dirk asked if he was going to be nicer in the future Linus said, no, he probably wouldn’t so he wanted to proactively apologize. That made me chuckle.

Picture of Linus Torvalds and Dirk Hohndel on stage

This was followed by a security-focused presentation by Todd Moore from IBM, another platinum sponsor. He also addressed trying to improve open source security but took an angle more aimed at government involvement. Digital infrastructure is infrastructure, much like bridges, roads, clean water, etc., and there should be some way for governments to fund and sponsor open source development.

Picture of Todd Moore on stage

The final keynote for today was a discussion with Amy Gilliland who is the President of General Dynamics Information Technology (GDIT). In a past life I worked quite a bit with GDIT (and you have to admit, that can be a pretty appropriate acronym at times) and it is nice to see a company that is so associated with more secretive aspects of government contracting focusing on open source solutions.

Picture of Amy Gilliland on stage

After the keynotes I visited the Sponsor Hall to see the AWS booth. It was pretty cool. As a diamond sponsor it is right in front as you enter.

AWS Booth in the Sponsor Hall

There were people from a number of the open source teams at AWS available to do presentations, including FreeRTOS and OpenSearch.

People in the Sponsor Hall

I don’t have booth duty this conference so I decided to wander around. I thought it was laid out well and it was interesting to see the variety of companies with booths. I did take some time to chat with the folks at Mattermost.

Mattermost Booth in the Sponsor Hall

While I’m a user of both Discord and Slack, I really, really like Mattermost. It is open source and provides a lot of the same functionality as Slack, and you can also host it yourself which is what the OpenNMS Project does. If you don’t want to go to the trouble of installing and maintaining your own instance, you can get the cloud version from Mattermost, and I learned that as of version 7 there is a free tier available so there is nothing preventing you from checking it out.

A selfie featuring me and whurley

I did take a short break from the conference to grab lunch with my friend William Hurley (whurley). It had been at least three years since we’d seen each other face to face and, thinking back, I was surprised at the number of topics we managed to cover in our short time together. He is an amazing technologist currently working to disrupt, and in many ways found, commercial quantum computing through his company StrangeWorks. He also made me aware of Amazon Braket, which lets those of us who aren’t whurley to access quantum computing services. I’m eager to check it out as it is an area that really interests me.

After lunch I was eager to see a presentation on InfluxDB by Zoe Steinkamp.

A picture of Zoe Steinkamp presenting on InfluxDB

Time series data collection and storage was a focus of mine when I was involved in monitoring, and Influx is working to make flexible solutions using open source. Steinkamp’s presentation was on combining data collection at the edge with backend storage and processing in the cloud. Influx had a working example of a device that would monitor the conditions of a plant (she’s an avid gardener) such as temperature and moisture, and this data was collected locally and then forwarded to the cloud. They have a new technology called Edge Data Replication designed to make the whole process much more robust.

I was excited to learn about their query language. Many time series solutions focus so much on obtaining and storing the data and not enough on making that data useful, which to me seems to be the whole point. I’m eager to play with it as soon as I can.

One thing that bothered me was that the hotel decided to have the windows washed in the middle of the presentation.

A picture a window washer

Steinkamp did a great job of soldiering through the noise and not letting it phase her.

The evening event was held at Stubbs restaurant, which is also a music venue.

The Stubbs Restaurant sign feature a billboard welcoming the Open Source Summit

I’ve been a fan of Stubbs barbecue sauce for years so it was cool to go to the restaurant that bears his name, even though the Austin location was opened in 1996, a year after Christopher B. Stubblefield died.

It was a nice end to a busy day, and I look forward to Day 2.

by Tarus at June 22, 2022 06:08 PM

June 21, 2022

OpenNMS On the Horizon – June 21st, 2022

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

Since last time, we worked on documentation (Enlinkd topology layer, glossary, database reports, SNMP interface poller, OPAQUE data types), as well as encrypting PostgreSQL credentials, CircleCI refactoring, dependency updates, time-series updates (metric deduplication, cache generation), node scanning and detector support in Horizon Stream, node category events, blocked pom dependencies, JNA, LLDP, pristine configs, ALEC REST and UI, topology UI, state management for UI extensions, event/alarm search, outdated report logos, heatmap, device config backup UI and deletion, password/login screen, and other REST work in Horizon Stream.

Github Project Updates

Internals, APIs, and Documentation
  • Antonio worked on updated Enlinkd documentation for the new topology layer code.
  • Christian did more work on encrypting PostgreSQL credentials.
  • Morteza continued to rework the Horizon CircleCI code.
  • I updated a bunch of dependencies to newer versions.
  • Emily did more documentation work on the glossary.
  • Morteza and I worked on some optimizations to do less work during CircleCI builds.
  • Patrick did more work on deduplicating time-series metrics.
  • Mark Frazier worked on scheduling node scans in Horizon Stream.
  • Arthur did more work on supporting detectors in Stream.
  • Mark Mahacek worked on documentation for database reports and the SNMP Interface Poller.
  • Lars Schreiber contributed an enhancement to change the description of nodeCategoryMembershipChanged
  • I fixed up a number of our pom versions using 99.99.* for blocking bad dependencies to use the enforcer plugin instead.
  • I updated JNA to the latest version.
  • Freddy made an improvement to cache generation in the time-series API.
  • Jesse worked on an alternate way to handle/calculate ingress and egress with flows.
  • Dmitri worked on documentation for OPAQUE data type support.
  • Antonio worked on an issue relating to ifIndex storage when querying LLDP.
Web, ReST, UI, and Helm
  • Alex worked on creating a "pristine" dir for some files in WEB-INF like we do for etc.
  • Benjamin Janssens did more work on an ALEC REST endpoint for storing permissions for training data.
  • Yang Li worked on REST API docs and deployment in Horizon Stream.
  • Chinh Le continued their work on implementing topology in the new UI code.
  • Mike Rose refactored the UI extension code to have access to state management.
  • I fixed some old logos that never got cleaned out in reports and some other UI places.
  • Pushkar worked on wrapping up his event/alarm search fixes.
  • Christian merged his fixes for the heatmap.
  • Mike Rose fixed the backup config UI to disable manual backup trigger if a selected config doesn't have an associated service name.
  • Mike Rose did more work on password screen code.
  • Anya did more work on an ALEC UI.
  • Chandra updated the file editor to support DCB files.
  • Pushkar added support for deleting device config backups through REST.
  • Mark Frazier worked on the REST API for foreign sources in Stream.
Contributors

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

  • Benjamin Reed
  • Mark Frazier
  • Antonio Russo
  • Mike Rose
  • Yang Li
  • Arthur Naseef
  • Alexander Chadfield
  • Dmitri Herdt
  • Chinh Le
  • Benjamin Janssens
  • Jeffrey-David Kapp
  • Bonnie Robinson
  • Morteza Ershad-Manesh
  • Emily Marsh
  • Jesse White
  • Freddy Chu
  • Pushkar Suthar
  • Anya Rybalova
  • Alex May
  • Chandra Gorantla
  • Mark Mahacek
  • Lars Schreiber
  • James Hutchinson
  • Patrick Schweizer
  • Christian Pape
  • Dustin Frisch

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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

  • HS-52: Document interview results for the activity board
  • HS-53: Provide Summary of Findings
  • HS-101: Migrate the WEB detector for provisiong
  • HS-102: Migrate the JMS detector for provisioning
  • HS-103: Migrate the DATAGRAM detector for provisiong
  • HS-105: Migrate the DHCP detector for provisiong
  • HS-106: Migrate the JDBC detector for provisiong
  • HS-108: Migrate the SSH detector for provisioning
  • HS-130: Add swagger to REST API server
  • HS-139: Tag & Release Workflow
  • HS-141: Trigger the develop.yml workflow before merging feature into develop
  • HS-151: Migrate Scopes for provisioning detectors
  • HS-152: Refactor detectors: improve modularity of the OpenNMS GRPC Server
  • HS-155: Password Requirements
  • HS-156: Handle inventory management in provision service
  • HS-158: Generic non-Helm dependency support
  • NMS-11787: Provide CDP BRIDGE, LLDP, ISIS, OSPF topologies in REST
  • NMS-11793: Guide to monitor essential Microsoft Active Directory Services
  • NMS-11810: There should be documentation for the reports
  • NMS-11860: Enlinkd and Topology Refactoring
  • NMS-12355: Correct Grammar in Notices Box
  • NMS-14106: TEST: Provisiond configuration upgrade from release-29 to release-30
  • NMS-14119: Support for SSH Key Authentication
  • NMS-14161: Event/Alarm advanced search not passing search terms
  • NMS-14226: Test Environment preparation
  • NMS-14243: Heatmap drill down does not show any alarms/outages
  • NMS-14265: Test DCB UI
  • NMS-14300: DCB: UI : Configs without service name shouldn't have option for Backup
  • NMS-14325: Enlinkd Topology Map Layers Documentation
  • NMS-14335: Remove flaky tests from every merge and leave it for release only
  • NMS-14372: Replace old logo references in some files/reports with the new logo
  • NMS-14382: Add documentation for OPAQUE data type support
  • NMS-14388: UI Extensions should be able to tap into state management (Vuex, Pinia)
  • NMS-14411: DCB: Script files are not shown in File Editor UI
  • NMS-14417: upgrade JNA to 5

by RangerRick at June 21, 2022 08:32 PM

OpenNMS On the Horizon – June 21st, 2022

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

Since last time, we worked on documentation (Enlinkd topology layer, glossary, database reports, SNMP interface poller, OPAQUE data types), as well as encrypting PostgreSQL credentials, CircleCI refactoring, dependency updates, time-series updates (metric deduplication, cache generation), node scanning and detector support in Horizon Stream, node category events, blocked pom dependencies, JNA, LLDP, pristine configs, ALEC REST and UI, topology UI, state management for UI extensions, event/alarm search, outdated report logos, heatmap, device config backup UI and deletion, password/login screen, and other REST work in Horizon Stream.

Github Project Updates

Internals, APIs, and Documentation
  • Antonio worked on updated Enlinkd documentation for the new topology layer code.
  • Christian did more work on encrypting PostgreSQL credentials.
  • Morteza continued to rework the Horizon CircleCI code.
  • I updated a bunch of dependencies to newer versions.
  • Emily did more documentation work on the glossary.
  • Morteza and I worked on some optimizations to do less work during CircleCI builds.
  • Patrick did more work on deduplicating time-series metrics.
  • Mark Frazier worked on scheduling node scans in Horizon Stream.
  • Arthur did more work on supporting detectors in Stream.
  • Mark Mahacek worked on documentation for database reports and the SNMP Interface Poller.
  • Lars Schreiber contributed an enhancement to change the description of nodeCategoryMembershipChanged
  • I fixed up a number of our pom versions using 99.99.* for blocking bad dependencies to use the enforcer plugin instead.
  • I updated JNA to the latest version.
  • Freddy made an improvement to cache generation in the time-series API.
  • Jesse worked on an alternate way to handle/calculate ingress and egress with flows.
  • Dmitri worked on documentation for OPAQUE data type support.
  • Antonio worked on an issue relating to ifIndex storage when querying LLDP.
Web, ReST, UI, and Helm
  • Alex worked on creating a "pristine" dir for some files in WEB-INF like we do for etc.
  • Benjamin Janssens did more work on an ALEC REST endpoint for storing permissions for training data.
  • Yang Li worked on REST API docs and deployment in Horizon Stream.
  • Chinh Le continued their work on implementing topology in the new UI code.
  • Mike Rose refactored the UI extension code to have access to state management.
  • I fixed some old logos that never got cleaned out in reports and some other UI places.
  • Pushkar worked on wrapping up his event/alarm search fixes.
  • Christian merged his fixes for the heatmap.
  • Mike Rose fixed the backup config UI to disable manual backup trigger if a selected config doesn't have an associated service name.
  • Mike Rose did more work on password screen code.
  • Anya did more work on an ALEC UI.
  • Chandra updated the file editor to support DCB files.
  • Pushkar added support for deleting device config backups through REST.
  • Mark Frazier worked on the REST API for foreign sources in Stream.
Contributors

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

  • Benjamin Reed
  • Mark Frazier
  • Antonio Russo
  • Mike Rose
  • Yang Li
  • Arthur Naseef
  • Alexander Chadfield
  • Dmitri Herdt
  • Chinh Le
  • Benjamin Janssens
  • Jeffrey-David Kapp
  • Bonnie Robinson
  • Morteza Ershad-Manesh
  • Emily Marsh
  • Jesse White
  • Freddy Chu
  • Pushkar Suthar
  • Anya Rybalova
  • Alex May
  • Chandra Gorantla
  • Mark Mahacek
  • Lars Schreiber
  • James Hutchinson
  • Patrick Schweizer
  • Christian Pape
  • Dustin Frisch

Coming Soon: JIRA Migration

We will be migrating our JIRA issue-tracker from a self-hosted version to Atlassian's cloud version.
I don't have a timeline for this yet, but expect it in the coming months.

If you currently have an account at the OpenNMS issue tracker your account should already be migrated to JIRA Cloud, but you will need to perform a password reset with the "Can't log in?" link before you can log in.

Releases and Roadmap

Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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

  • HS-52: Document interview results for the activity board
  • HS-53: Provide Summary of Findings
  • HS-101: Migrate the WEB detector for provisiong
  • HS-102: Migrate the JMS detector for provisioning
  • HS-103: Migrate the DATAGRAM detector for provisiong
  • HS-105: Migrate the DHCP detector for provisiong
  • HS-106: Migrate the JDBC detector for provisiong
  • HS-108: Migrate the SSH detector for provisioning
  • HS-130: Add swagger to REST API server
  • HS-139: Tag & Release Workflow
  • HS-141: Trigger the develop.yml workflow before merging feature into develop
  • HS-151: Migrate Scopes for provisioning detectors
  • HS-152: Refactor detectors: improve modularity of the OpenNMS GRPC Server
  • HS-155: Password Requirements
  • HS-156: Handle inventory management in provision service
  • HS-158: Generic non-Helm dependency support
  • NMS-11787: Provide CDP BRIDGE, LLDP, ISIS, OSPF topologies in REST
  • NMS-11793: Guide to monitor essential Microsoft Active Directory Services
  • NMS-11810: There should be documentation for the reports
  • NMS-11860: Enlinkd and Topology Refactoring
  • NMS-12355: Correct Grammar in Notices Box
  • NMS-14106: TEST: Provisiond configuration upgrade from release-29 to release-30
  • NMS-14119: Support for SSH Key Authentication
  • NMS-14161: Event/Alarm advanced search not passing search terms
  • NMS-14226: Test Environment preparation
  • NMS-14243: Heatmap drill down does not show any alarms/outages
  • NMS-14265: Test DCB UI
  • NMS-14300: DCB: UI : Configs without service name shouldn't have option for Backup
  • NMS-14325: Enlinkd Topology Map Layers Documentation
  • NMS-14335: Remove flaky tests from every merge and leave it for release only
  • NMS-14372: Replace old logo references in some files/reports with the new logo
  • NMS-14382: Add documentation for OPAQUE data type support
  • NMS-14388: UI Extensions should be able to tap into state management (Vuex, Pinia)
  • NMS-14411: DCB: Script files are not shown in File Editor UI
  • NMS-14417: upgrade JNA to 5

by RangerRick at June 21, 2022 08:32 PM

2022 Open Source Summit – Day 0

Monday was a travel day, but it was notable as it was the first time I have been in an airport since August. I fly out of RDU, and the biggest change was that they now have the “Star Trek” x-ray machines to scan carry-on luggage. While I was panicked for a second when I downloaded my boarding pass and didn’t see the TSA Precheck logo, I was able to get that sorted out so going through security was pretty easy.

The restrictions on masks for air travel have been lifted, but I wore mine along with about 10% of the other travelers. Even though I’ve had four shots and a breakthrough case of COVID I do interact with a lot of older people and since I’ll be around the most people in years at the Open Source Summit I figured I’d wear mine throughout the trip.

And while it isn’t N95, being a car nut I tried out these masks from K&N Engineering, who are known for high end air filtration for performance vehicles, and you almost don’t realize you are wearing a mask.

Anyway, I made my way to the Admiral’s Club and was pleasantly surprised to see it wasn’t very crowded. It was nice to have the membership (it comes with my credit card) as my flight to Charlotte was delayed over 90 minutes. I wasn’t too worried since I had a long layover before heading to Austin, so I was a lot less stressed than many of my fellow travelers.

The flight to Austin left on time and landed early, but we got hit with the curse in that our gate wasn’t available, so we ended up on the tarmac for 45 minutes, getting in 30 minutes late.

Not that I’m complaining. Seriously, according to my handy the trip from my home to Austin by car is 19 hours. From the moment I left my home until we landed was more like 8 hours, and most of that was enjoyable. I always have to remind myself of this wonderful clip by Louis CK which kind of sums up the amazing world in which we live where every time we fly we should be saying to ourselves “I’m in a chair in the sky!”

I checked in at the hotel and then we headed back out in our rented minivan to get the last member of our team, and then we drove about 45 minutes outside of Austin to this barbecue joint called Salt Lick in Driftwood Texas. It was wonderful and I was told we owed this experience to a recommendation years ago from Mark Hinkle, so thanks Mark!

A white van in the parking lot of the Salt Lick barbecue restaurant

You can’t really tell a good barbecue restaurant by its looks, although shabbier tends to be better, but more by the smell. When you get out of your vehicle your nose is so assaulted with the most wonderful smell you might be drawn to the entrance so quickly that you miss the TARDIS.

A British Police box that looks like the TARDIS from Doctor Who in the parking lot of the Salt Lick barbecue restaurant

We sat at a big picnic table and ordered family style, which was all you could eat meat, slaw, baked beans, bread, pickles and potato salad. I was in such a food coma by the end that I forgot to take a picture of the cobbler.

A table full of food at the Salt Lick barbecue restaurant

I tried not to fall asleep on the ride back to Austin (I wasn’t driving) but it was a great start to what I hope is a wonderful week.

by Tarus at June 21, 2022 01:15 PM

June 16, 2022

2022 Open Source Summit North America

Next week I’ll be attending my first conference in nearly three years. My last one turned out to be the very last OSCON back in 2019. Soon after that I was in a bad car accident that laid me up for many months and then COVID happened.

Open Source Summit Logo Showing Member Conferences

I am both eager and anxious. Even having four vaccine shots and one breakthrough case I still feel a little exposed around large groups of people, but the precautions outlined in the “Health and Safety” section of the conference website are pretty robust and I am eager to see folks face-to-face (or mask-to-mask) once again.

The Linux Foundation’s Open Source Summit used to be known as Linuxcon and now it is an umbrella title for a number of conferences around open source, all of which look cool. My new employer, AWS, is a platinum sponsor and will also have a booth (I am not on booth duty this trip but I’ll be around). I am looking forward to getting to meet in person many of my teammates who I’ve only seen via video, old friends I haven’t seen in years, and to making a bunch of new ones.

Of course, we would have to have a conference in Austin during a heat wave. I was thinking about never leaving the conference venue but then I remembered … barbecue.

If you are going and would like to say “hi” drop me a note on Twitter or LinkedIn or send an e-mail to tarus at tarus dot io.

by Tarus at June 16, 2022 04:41 PM

June 15, 2022

In Pursuit of Quality Interactions

Recently my friend Jonathan had a birthday, and I sent him a short note with best wishes for the day and to let him know I was thinking about him.

In his reply he included the following paragraph:

[I] was reminded of your comment about a sparsely attended OUCE conference at Southampton one year. You said something along the lines of that it didn’t matter, that you would try to make it the best experience you could for everyone there. That stuck with me. It’s been one of my mantras ever since then.

I can remember talking about that, although I also remember I was very ill during most of that conference and spent a lot of time curled up in my room.

Putting on conferences can be a challenge. You don’t know how many people will show up, but you have to plan months in advance in order to secure a venue. Frequently we could use information about the previous conference to approximate the next one, but quite often there were a number of new variables that were hard to measure. In this case moving the conference from Germany, near Frankfurt, to Southampton in the UK resulted in a lot less people coming than we expected.

It is easy to get discouraged when this happens. I have given presentations in full rooms where people were standing in the back and around the edges, and I have given presentations to three people in a large, otherwise empty room. In both cases I do my best to be engaging and to meet the expectations of those people who were kind enough to give me their attention.

I think this is important to remember, especially in our open source communities. I don’t think it is easy to predict which particular people will become future leaders on first impressions, so investing a little of your attention in as many people as possible can reap large results. I can remember when I started in open source I’d sometimes get long e-mails from people touting how great they were, which was inevitably followed up with a long list of things I needed to do to make my project successful. Other times I’d get a rather timid e-mail from someone wanting to contribute, along with some well written documentation or a nice little patch or feature, and I valued those much more.

I can remember at another OUCE we ended up staying at a hotel outside of Fulda because another convention (I think involving public service vehicles like fire trucks and ambulances) was in town at the same time. There was a van that would pick us up and take us into town each morning, and on one day a man named Ian joined me for the ride. He was complaining about how his boss made him come to the conference and he was very unhappy about being there. I took that as a challenge and spent some extra time with him, and by the end of the event he had become one of the project’s biggest cheerleaders.

Or maybe it was just the Jägermeister.

In the book Zen and the Art of Motorcycle Maintenance the author Robert Persig demonstrates a correlation between “attention” and “quality”. In today’s world I often find it hard to focus my attention on any one thing at a time, and it is something I should improve. But I do manage to put a lot of attention into person-to-person interactions, and that has been very valuable over the years.

In any case I was touched that Jonathan remembered that from our conversation, and it helps to be reminded. It also motivated me to write this blog post (grin).

by Tarus at June 15, 2022 01:25 PM

June 13, 2022

OpenNMS On the Horizon – June 13th, 2022

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

Since last time, we worked on documentation (database reports, external auth, the glossary, GraphML, Helm flows, installation, logging, performance data, OIA, poller threads, provisioning, SCV, and the SnmpCollector), CI/CD for Horizon and Horizon Stream, Lombok, Kafka alarm sync, stress-metrics, inventory management in Stream, SNMP OPAQUE types, GRPC, Docker multi-arch support, Topology, Flow Elasticsearch support, Stream persistence, bridge topology, PostgreSQL credential encryption, time-series metric deduplication, Keycloak login, requisition metadata editing, ALEC web UI and training API, heatmaps.

Github Project Updates

Internals, APIs, and Documentation
  • Jason continued to flesh out Horizon Stream CI/CD workflows.
  • Morteza worked on optimizing some Horizon CircleCI builds.
  • Mark Mahacek worked on documentation for external auth, GraphML, performance data, SCV, and the SnmpCollector.
  • Chandra worked on documentation for OIA and poller thread consumption.
  • I audited the current set of flaky tests in CircleCI and updated the code to match.
  • Morteza worked on dynamically generating CircleCI configs based on branch name and other metadata.
  • Mark Frazier worked on some Lombok-related changes in Horizon Stream.
  • Bonnie did more work on improvements to installation and provisioning documentation.
  • Alex fixed a bug where outstanding alarms may not re-sync to Kafka in some situations.
  • Freddy did some work on the stress-metrics command.
  • Marcel worked on a bunch of documentation relating to logging.
  • Freddy wrapped up his fixes to graceful shutdown of Telemetryd.
  • Mark Frazier worked on inventory-handling (provisioning) in Stream.
  • Dmitri did more work on OPAQUE SNMP data type handling.
  • Arthur worked on modularizing some GRPC-related code in Stream.
  • I fixed some issues in multi-arch Docker image generation.
  • Antonio worked on some fixes to topology smoke tests.
  • James fixed an error in error reporting in the flow Elasticsearch repository code.
  • Arthur worked on DAO/persistence in Stream.
  • Emily worked on adding new stuff to the glossary in the Horizon docs.
  • Antonio fixed an issue with bridge topology discovery.
  • Andrew worked on some updates to database report documentation.
  • Christian worked on encrypting stored PostgreSQL credentials.
  • Patrick worked on metric deduplication in the OIA time-series API.
Web, ReST, UI, and Helm
  • Alberto worked on updated Helm documentation for the Flow datasource.
  • Mike worked on Keycloak login stuff for Stream.
  • Yang Li did more work on user management REST endpoints in Stream.
  • Scott added support for multi-line text entry in requisition metadata in the web UI.
  • Chinh Le did more work on the new Vue-based topology UI.
  • Pushkar did more work on a fix for event and alarm search.
  • Anya worked on a web UI plugin for ALEC.
  • Benjamin worked on a REST endpoint for storing permissions for training submission.
  • Christian fixed an issue in the heatmap code.
Contributors

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

  • Christian Pape
  • Patrick Schweizer
  • Pushkar Suthar
  • Mark Frazier
  • Jason Berry
  • Emily Marsh
  • Morteza Ershad-Manesh
  • Anya Rybalova
  • Andrew Konstantaras
  • Benjamin Janssens
  • Jeffrey-David Kapp
  • Benjamin Reed
  • Arthur Naseef
  • Jesse White
  • Dustin Frisch
  • Antonio Russo
  • Mike Rose
  • Chandra Gorantla
  • Mark Mahacek
  • Chinh Le
  • Yang Li
  • James Hutchinson
  • Dmitri Herdt
  • Lars Schreiber
  • Alberto Ramos
  • Alex May
  • Freddy Chu
  • Scott Theleman
  • Marcel Fuhrmann
  • Bonnie Robinson
  • Dino Yancey

Releases and Roadmap

Horizon 30 Released

Release 30.0.0 is the first in the Horizon 30 series, introducing a number of new features, most notably a preview of a new web UI, and the ability to back up infrastructure device configs.

The codename for Horizon 30.0.0 is Nutria.

Breaking Changes
OpenNMS Plugin/Integration API (OIA) Updated to 1.0.0

The OIA version required has been updated to 1.0.0, following its first stable release. Plugins intended to run in OpenNMS must implement version 1.0.0 (or higher).

New Configuration Management API

A new API has been introduced for accessing and manipulating configuration, including moving configuration from XML files into the database. The initial implementation proof-of-concept converts the provisiond-configuration.xml to the new API.

The OpenNMS installer will import your existing provisiond-configuration.xml file on upgrade.

This will happen automatically, but if you rely on programatically manipulating the Provisiond configuration you will need to convert your code to use the config management REST API instead.

Docker Images

The Horizon and Sentinel Docker images are now based on a minimal install of Ubuntu, rather than CentOS. Symlinks are provided to match the old paths in /opt but it’s possible you will run into subtle differences when transitioning.

Collectd Strict Interval

The org.opennms.netmgt.collectd.strictInterval setting now defaults to true.

Previously, Collectd would not reschedule collection for a device until after the previous collection completes. This means that if OpenNMS is collecting at a 5-minute interval, and it takes 1 minute to collect the data, then the next collection will start 6 minutes after the previous collection was launched.

The new default behavior is to always schedule collection as a predictable interval.

You can change to the previous behavior by creating a property file in $OPENNMS_HOME/etc/opennms.properties.d/ with the contents: org.opennms.netmgt.collectd.strictInterval=false.

New Features and Improvements
New UI (Early Access)

Work has begun on creating a new UI with an eye towards making more common workflows easier.

It uses Vue 3 and the Feather Design System. You can try it out by clicking "UI Preview" in the navigation bar of the web UI.

It is also now possible to write OIA plugins that extend the new UI.

Device Config Backup

Initial support has been added for performing configuration backups of infrastructure devices like routers and switches. Backups are performed as part of polling the device, and can be viewed (and triggered) in the web UI.

OIA Supported on Minion and Sentinel

The OpenNMS Plugin API can now be used to extend Minion and Sentinel. A subset of APIs are supported, as appropriate for each platform.

Secure Credentials Vault

You can now validate credentials stored in the SCV with the scv-validate Karaf command.

Additionally, support for encrypted credentials has been extended to more places inside OpenNMS, most notably in Metadata interpolation. Also, a REST API has been added for accessing and updating the SCV.

Flows and Nephron

It is now possible to configure thresholding on flow data.

Polling, Metadata, and Collection
  • The XML collector can now treat a collected value as an enumerated value, which lets you convert strings into integers to store as a gauge.
  • It is now possible to passively "collect" data from incoming events as time-series data, including those that come from traps or syslog. The eventconf has additional options to configure what data to collect
    from parameters including regular-expression matches.
  • The BgpSessionMonitor can now be configured to use a custom OID prefix for devices that publish peer tables in a non-standard location.

Additions or updates to graphs and collections have been made for:

  • F5 Devices
  • Flows
  • Node Exporter
  • Prometheus
  • Windows Exporter
REST API
  • Improvements have been made to the criteria querying API to support "Multi-And" and regexp restrictions, allowing for queries involving multiple event parameters, or complex string matching.
Documentation

An unspeakable amount of work has gone into documentation improvements and additions across the board.

Notable additions include:

  • Developer documentation for OSGi in OpenNMS, the OpenNMS Plugin API (OIA), the config management API, device config backup APIs, and the Health REST service.
  • Operation documentation updates relating to SNMP property extenders, performance data and collection, thresholding, the log file viewer, SCV, and the new UI preview.
  • Documentation improvements regarding "housekeeping" and other administrative tasks, alarms, Business Service Monitoring, Passive Status Monitoring, and more.
Important Internal Changes
  • Kafka components have been updated to version 3.0.0
  • Our embedded Karaf has been updated to version 4.3.6
OpenNMS Plugin API 1.0 Released

The first officially stable release of the OpenNMS Plugin API (a.k.a. OIA) came out last week.

From 1.0 forward, it will follow Semantic Versioning.

Since OIA 0.6, the following changes have occurred:

Improvements and Features
  • Guava has been updated to 30.1.1-jre
  • updated to be supported on Minion and Sentinel
  • extend the new Horizon Vue-based UI through OIA
  • key-value store support was added
  • Secure Credentials Vault support was added
  • event-sourced collection config support was added
Breaking
  • requires JDK 11 or higher
  • InterfaceToNodeCache API was changed to remove Stream<Integer> getNodeIds(String location, InetAddress ipAddr)
Helm 8 Released

Helm 8 contains updates to the core to use Grafana 8, the start of a move to
TypeScript, many optimizations, and a number of new features.

  • use an optimized bulk query when fetching string properties from OpenNMS
    versions that support it
  • convert much of the codebase to use native promises rather than angularJS
    wrappers
  • support converting NaN values to 0 when querying flow data
  • support swapping ingress and egress on flow data at query time
  • support for new filters for node, location, applications, hosts, and
    conversations
  • fixed an issue with missing flow data when ingress and egress are
    inconsistently available
  • many documentation improvements and additions
Alec 2.0 Released

ALEC (Architecture for Learning Enabled Correlation) version 2 contains a number of updates, most notably some new scoring strategies.

  • ALEC now requires JDK 11.
  • ALEC now users OIA 1.0.0, which means it requires Horizon 30 or higher, and future Meridian 2023 or higher.
  • In addition to the existing Set Intersection, Peer, and Matrix scoring strategies, ALEC now supports ARI and AMI strategies as well.
Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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

  • HELM-317: Grafana Datasource expressions - Flows
  • HELM-325: Document Grafana datasource expressions - Flows
  • HELM-327: Performnce DS Query type Attribute selector broken
  • HS-35: Add endpoints to REST API server for user management
  • HS-56: Create a service for pushing Requisition data to the provision module
  • HS-78: UX Writing - Password Reset Emails
  • HS-91: SCAN for inventory changes
  • HS-98: Tour through provisiond in Horizon
  • HS-99: Writing QA Check
  • HS-112: Interview identified users for the activity board
  • NMS-8861: Admin guide lacks a chapter on logging
  • NMS-13484: Document the Grafana Image Renderer plugin's dependencies
  • NMS-13574: Migrate External Auth into docs
  • NMS-13785: Error responses are not handled correctly when handling ElasticSearch responses
  • NMS-13918: Map Pins Missing Since Upgrade
  • NMS-14003: Telemetryd does not shut down gracefully
  • NMS-14018: SNMP MIB imports to handle OPAQUE data type implementation
  • NMS-14059: Add support for pre-authorization via HTTP header (to be used with pre-authentication)
  • NMS-14128: DCB: Error reporting needs love
  • NMS-14129: DCB: Debug script execution
  • NMS-14154: Documentation for OIA changes
  • NMS-14230: Create release notes content for H30
  • NMS-14231: Create release notes content for OIA, Alec, HELM to release along with H30
  • NMS-14255: DCB - Document impact of DCB on poller thread consumption
  • NMS-14282: Allow multi-line metadata
  • NMS-14299: DCB UI: Hover over Running Config in DCB takes longer
  • NMS-14321: Kafka-Producer Alarm Resync Failing Post Entire Kafka Cluster Outage
  • NMS-14322: Bridge Topology Discovery Mismatch
  • NMS-14326: fix smoke tests: GraphRestServiceIT
  • NMS-14343: features/topology: tooltip - PowerGrid (D3/Circle layout)
  • NMS-14359: Modify host, zone and requisition name field validation
  • NMS-14374: Fix Smoke Test for GraphMLTopologyIT
  • NMS-14377: features/topology: contextmenu - PowerGrid (D3/Circle layout)
  • NMS-14378: Snmp Link Up does not clear Snmp Link Down

by RangerRick at June 13, 2022 06:40 PM

OpenNMS On the Horizon – June 13th, 2022

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

Since last time, we worked on documentation (database reports, external auth, the glossary, GraphML, Helm flows, installation, logging, performance data, OIA, poller threads, provisioning, SCV, and the SnmpCollector), CI/CD for Horizon and Horizon Stream, Lombok, Kafka alarm sync, stress-metrics, inventory management in Stream, SNMP OPAQUE types, GRPC, Docker multi-arch support, Topology, Flow Elasticsearch support, Stream persistence, bridge topology, PostgreSQL credential encryption, time-series metric deduplication, Keycloak login, requisition metadata editing, ALEC web UI and training API, heatmaps.

Github Project Updates

Internals, APIs, and Documentation
  • Jason continued to flesh out Horizon Stream CI/CD workflows.
  • Morteza worked on optimizing some Horizon CircleCI builds.
  • Mark Mahacek worked on documentation for external auth, GraphML, performance data, SCV, and the SnmpCollector.
  • Chandra worked on documentation for OIA and poller thread consumption.
  • I audited the current set of flaky tests in CircleCI and updated the code to match.
  • Morteza worked on dynamically generating CircleCI configs based on branch name and other metadata.
  • Mark Frazier worked on some Lombok-related changes in Horizon Stream.
  • Bonnie did more work on improvements to installation and provisioning documentation.
  • Alex fixed a bug where outstanding alarms may not re-sync to Kafka in some situations.
  • Freddy did some work on the stress-metrics command.
  • Marcel worked on a bunch of documentation relating to logging.
  • Freddy wrapped up his fixes to graceful shutdown of Telemetryd.
  • Mark Frazier worked on inventory-handling (provisioning) in Stream.
  • Dmitri did more work on OPAQUE SNMP data type handling.
  • Arthur worked on modularizing some GRPC-related code in Stream.
  • I fixed some issues in multi-arch Docker image generation.
  • Antonio worked on some fixes to topology smoke tests.
  • James fixed an error in error reporting in the flow Elasticsearch repository code.
  • Arthur worked on DAO/persistence in Stream.
  • Emily worked on adding new stuff to the glossary in the Horizon docs.
  • Antonio fixed an issue with bridge topology discovery.
  • Andrew worked on some updates to database report documentation.
  • Christian worked on encrypting stored PostgreSQL credentials.
  • Patrick worked on metric deduplication in the OIA time-series API.
Web, ReST, UI, and Helm
  • Alberto worked on updated Helm documentation for the Flow datasource.
  • Mike worked on Keycloak login stuff for Stream.
  • Yang Li did more work on user management REST endpoints in Stream.
  • Scott added support for multi-line text entry in requisition metadata in the web UI.
  • Chinh Le did more work on the new Vue-based topology UI.
  • Pushkar did more work on a fix for event and alarm search.
  • Anya worked on a web UI plugin for ALEC.
  • Benjamin worked on a REST endpoint for storing permissions for training submission.
  • Christian fixed an issue in the heatmap code.
Contributors

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

  • Christian Pape
  • Patrick Schweizer
  • Pushkar Suthar
  • Mark Frazier
  • Jason Berry
  • Emily Marsh
  • Morteza Ershad-Manesh
  • Anya Rybalova
  • Andrew Konstantaras
  • Benjamin Janssens
  • Jeffrey-David Kapp
  • Benjamin Reed
  • Arthur Naseef
  • Jesse White
  • Dustin Frisch
  • Antonio Russo
  • Mike Rose
  • Chandra Gorantla
  • Mark Mahacek
  • Chinh Le
  • Yang Li
  • James Hutchinson
  • Dmitri Herdt
  • Lars Schreiber
  • Alberto Ramos
  • Alex May
  • Freddy Chu
  • Scott Theleman
  • Marcel Fuhrmann
  • Bonnie Robinson
  • Dino Yancey

Releases and Roadmap

Horizon 30 Released

Release 30.0.0 is the first in the Horizon 30 series, introducing a number of new features, most notably a preview of a new web UI, and the ability to back up infrastructure device configs.

The codename for Horizon 30.0.0 is Nutria.

Breaking Changes
OpenNMS Plugin/Integration API (OIA) Updated to 1.0.0

The OIA version required has been updated to 1.0.0, following its first stable release. Plugins intended to run in OpenNMS must implement version 1.0.0 (or higher).

New Configuration Management API

A new API has been introduced for accessing and manipulating configuration, including moving configuration from XML files into the database. The initial implementation proof-of-concept converts the provisiond-configuration.xml to the new API.

The OpenNMS installer will import your existing provisiond-configuration.xml file on upgrade.

This will happen automatically, but if you rely on programatically manipulating the Provisiond configuration you will need to convert your code to use the config management REST API instead.

Docker Images

The Horizon and Sentinel Docker images are now based on a minimal install of Ubuntu, rather than CentOS. Symlinks are provided to match the old paths in /opt but it’s possible you will run into subtle differences when transitioning.

Collectd Strict Interval

The org.opennms.netmgt.collectd.strictInterval setting now defaults to true.

Previously, Collectd would not reschedule collection for a device until after the previous collection completes. This means that if OpenNMS is collecting at a 5-minute interval, and it takes 1 minute to collect the data, then the next collection will start 6 minutes after the previous collection was launched.

The new default behavior is to always schedule collection as a predictable interval.

You can change to the previous behavior by creating a property file in $OPENNMS_HOME/etc/opennms.properties.d/ with the contents: org.opennms.netmgt.collectd.strictInterval=false.

New Features and Improvements
New UI (Early Access)

Work has begun on creating a new UI with an eye towards making more common workflows easier.

It uses Vue 3 and the Feather Design System. You can try it out by clicking "UI Preview" in the navigation bar of the web UI.

It is also now possible to write OIA plugins that extend the new UI.

Device Config Backup

Initial support has been added for performing configuration backups of infrastructure devices like routers and switches. Backups are performed as part of polling the device, and can be viewed (and triggered) in the web UI.

OIA Supported on Minion and Sentinel

The OpenNMS Plugin API can now be used to extend Minion and Sentinel. A subset of APIs are supported, as appropriate for each platform.

Secure Credentials Vault

You can now validate credentials stored in the SCV with the scv-validate Karaf command.

Additionally, support for encrypted credentials has been extended to more places inside OpenNMS, most notably in Metadata interpolation. Also, a REST API has been added for accessing and updating the SCV.

Flows and Nephron

It is now possible to configure thresholding on flow data.

Polling, Metadata, and Collection
  • The XML collector can now treat a collected value as an enumerated value, which lets you convert strings into integers to store as a gauge.
  • It is now possible to passively "collect" data from incoming events as time-series data, including those that come from traps or syslog. The eventconf has additional options to configure what data to collect
    from parameters including regular-expression matches.
  • The BgpSessionMonitor can now be configured to use a custom OID prefix for devices that publish peer tables in a non-standard location.

Additions or updates to graphs and collections have been made for:

  • F5 Devices
  • Flows
  • Node Exporter
  • Prometheus
  • Windows Exporter
REST API
  • Improvements have been made to the criteria querying API to support "Multi-And" and regexp restrictions, allowing for queries involving multiple event parameters, or complex string matching.
Documentation

An unspeakable amount of work has gone into documentation improvements and additions across the board.

Notable additions include:

  • Developer documentation for OSGi in OpenNMS, the OpenNMS Plugin API (OIA), the config management API, device config backup APIs, and the Health REST service.
  • Operation documentation updates relating to SNMP property extenders, performance data and collection, thresholding, the log file viewer, SCV, and the new UI preview.
  • Documentation improvements regarding "housekeeping" and other administrative tasks, alarms, Business Service Monitoring, Passive Status Monitoring, and more.
Important Internal Changes
  • Kafka components have been updated to version 3.0.0
  • Our embedded Karaf has been updated to version 4.3.6
OpenNMS Plugin API 1.0 Released

The first officially stable release of the OpenNMS Plugin API (a.k.a. OIA) came out last week.

From 1.0 forward, it will follow Semantic Versioning.

Since OIA 0.6, the following changes have occurred:

Improvements and Features
  • Guava has been updated to 30.1.1-jre
  • updated to be supported on Minion and Sentinel
  • extend the new Horizon Vue-based UI through OIA
  • key-value store support was added
  • Secure Credentials Vault support was added
  • event-sourced collection config support was added
Breaking
  • requires JDK 11 or higher
  • InterfaceToNodeCache API was changed to remove Stream<Integer> getNodeIds(String location, InetAddress ipAddr)
Helm 8 Released

Helm 8 contains updates to the core to use Grafana 8, the start of a move to
TypeScript, many optimizations, and a number of new features.

  • use an optimized bulk query when fetching string properties from OpenNMS
    versions that support it
  • convert much of the codebase to use native promises rather than angularJS
    wrappers
  • support converting NaN values to 0 when querying flow data
  • support swapping ingress and egress on flow data at query time
  • support for new filters for node, location, applications, hosts, and
    conversations
  • fixed an issue with missing flow data when ingress and egress are
    inconsistently available
  • many documentation improvements and additions
Alec 2.0 Released

ALEC (Architecture for Learning Enabled Correlation) version 2 contains a number of updates, most notably some new scoring strategies.

  • ALEC now requires JDK 11.
  • ALEC now users OIA 1.0.0, which means it requires Horizon 30 or higher, and future Meridian 2023 or higher.
  • In addition to the existing Set Intersection, Peer, and Matrix scoring strategies, ALEC now supports ARI and AMI strategies as well.
Upcoming 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 13th, 2022.

We currently expect updates to Horizon 30 and all supported Meridians.

Next Horizon: 31 (Q4 2022)

The next major Horizon release will be Horizon 31.

Since Horizon 30 was just released, there is nothing concrete on the roadmap for Horizon 31 yet.
Stay tuned for details when they come.

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.

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

  • HELM-317: Grafana Datasource expressions - Flows
  • HELM-325: Document Grafana datasource expressions - Flows
  • HELM-327: Performnce DS Query type Attribute selector broken
  • HS-35: Add endpoints to REST API server for user management
  • HS-56: Create a service for pushing Requisition data to the provision module
  • HS-78: UX Writing - Password Reset Emails
  • HS-91: SCAN for inventory changes
  • HS-98: Tour through provisiond in Horizon
  • HS-99: Writing QA Check
  • HS-112: Interview identified users for the activity board
  • NMS-8861: Admin guide lacks a chapter on logging
  • NMS-13484: Document the Grafana Image Renderer plugin's dependencies
  • NMS-13574: Migrate External Auth into docs
  • NMS-13785: Error responses are not handled correctly when handling ElasticSearch responses
  • NMS-13918: Map Pins Missing Since Upgrade
  • NMS-14003: Telemetryd does not shut down gracefully
  • NMS-14018: SNMP MIB imports to handle OPAQUE data type implementation
  • NMS-14059: Add support for pre-authorization via HTTP header (to be used with pre-authentication)
  • NMS-14128: DCB: Error reporting needs love
  • NMS-14129: DCB: Debug script execution
  • NMS-14154: Documentation for OIA changes
  • NMS-14230: Create release notes content for H30
  • NMS-14231: Create release notes content for OIA, Alec, HELM to release along with H30
  • NMS-14255: DCB - Document impact of DCB on poller thread consumption
  • NMS-14282: Allow multi-line metadata
  • NMS-14299: DCB UI: Hover over Running Config in DCB takes longer
  • NMS-14321: Kafka-Producer Alarm Resync Failing Post Entire Kafka Cluster Outage
  • NMS-14322: Bridge Topology Discovery Mismatch
  • NMS-14326: fix smoke tests: GraphRestServiceIT
  • NMS-14343: features/topology: tooltip - PowerGrid (D3/Circle layout)
  • NMS-14359: Modify host, zone and requisition name field validation
  • NMS-14374: Fix Smoke Test for GraphMLTopologyIT
  • NMS-14377: features/topology: contextmenu - PowerGrid (D3/Circle layout)
  • NMS-14378: Snmp Link Up does not clear Snmp Link Down

by RangerRick at June 13, 2022 06:40 PM

June 08, 2022

AWS: Impressions So Far

When I announced that I had joined AWS, at least two of my three readers reached out with questions so I thought I’d post an update on my onboarding process and impressions so far.

One change you can expect is that when I talk about my job on this blog, I’m going to add the following disclaimer:

Note: Everything expressed here represents my own thoughts and opinions and I am not speaking for my employer Amazon Web Services.

Back when I owned the company I worked for I had more control about what I could share publicly. While I am very excited to be working for AWS and may, at some time in the future, speak on their behalf, this is not one of those times.

A number of people joked about me joining the “dark side”. My friend Talal even commented on my LinkedIn post with the complete “pitch speech” Darth Vader made to Luke Skywalker in Empire. While I got the joke I’d always had a pretty positive opinion of Amazon, gained mainly through being a retail customer.

I recently went and traced what I think to be my first interaction with Amazon back to a book purchase made in December of 1997. In the nearly 25 years I’ve been shopping there I can think of only two times that I was disappointed with their customer service (both involving returns) and numerous times when my expectations were exceeded by Amazon. For example, I once spent around $70 on two kits used to clean high performance automotive air filters. In shipment one of them leaked, and I asked if I could return it. They told me to keep both and refunded the whole $70, even after I protested that I’d be happy with half that.

It was this focus on customer service that attracted me to the possibility of working with Amazon. When I was at OpenNMS I crafted a mission statement that read “Help Customers. Have Fun. Make Money”. I thought I came up with it on my own but I may have gotten inspiration from a Dilbert cartoon, although I changed the order to put the focus on customers. I always put a high value on customer satisfaction.

I have also been a staunch, and I’ll admit, opinionated, proponent of free and open source software and nearly 20 years of those opinions are available on this blog. Despite that, AWS still wanted to talk to me, and as I went through the interview process I really warmed to the idea of working on open source at AWS.

Just before I started I received a note from the onboarding specialist with links to content related to Amazon’s “peculiar” culture. When I read the e-mail I was pretty certain they meant “particular”, as “particular” implies “specific” and “peculiar” implies “strange”. Nope, peculiar is the word they meant to use and I’m starting to understand why. They are so laser-focused on customer satisfaction that their methods can seem strange to people used to working in other companies.

As you can imagine with a company that has around 1.6 million employees, they have the onboarding process down to a science. My laptop and supporting equipment showed up before my start date, and with few problems I was able to get on the network and access Amazon resources. These last two weeks have been packed with meeting people, attending virtual classes with other new hires, and going through a lot of online training. One concept they introduce early on is the idea of “working backwards”. At Amazon, everything starts from the customer and you work backwards from there. After having this drilled into my head in one of the online courses it was funny to watch a video of Jeff Bezos during an All Hands meeting where someone asks if the “working backwards” process is optional.

Based on my previous experience with large companies I was certain of the answer: no, working backwards is not optional. Period.

But that wasn’t what he said. He said it wasn’t optional unless you can come up with something better. I know it is kind of a subtle distinction but it really resonated with me, as it drove home the fact that at Amazon no process is really written in stone. Everything is open to change if it can be improved. As I learn more about Amazon I’ve found that there are many “tenets”, or core principles, and every one of them is presented in the context that these exist until something better is discovered, and there seem to be a lot of processes in place to suggest those improvements at all levels of the company.

If there is anything that isn’t open to change, it is the goal of becoming the world’s most customer-centric company. While a lot of companies can claim to be focused on their customers without many specifics, at Amazon this is defined has having low prices, large selection and a great customer experience. Everything else is secondary.

I bring this up because it is key to understanding Amazon as a company. To get back to my area of expertise, open source, quite frequently open source involvement is measured by things such as number of commits, lines of code committed, number of projects sponsored and number of contributors. That is all well and good but seen through the lens of customer satisfaction they mean nothing, so they don’t work at Amazon. Amazon approaches open source as “how can our involvement improve the experience of our customers?”

(Again, please remember that is my personal opinion based on my short tenure at AWS and doesn’t constitute any formal policy or position)

Note that with respect to open source at AWS, “customer” can refer to both end users of software who want an easy and affordable way to leverage open source solutions as well as open source projects and companies themselves. My focus will be on the latter and I’m very eager to begin working with all of these cool organizations creating wonderful open source solutions.

This focus may not greatly increase those metrics mentioned above, but it is hoped that it will greatly increase customer satisfaction.

So, overall, I’m very happy with my decision to come to AWS. I grew up in North Carolina where the State motto is Esse Quam Videri, which is Latin for “to be rather than to seem”. My personal goal is to see AWS considered both a leader and an invaluable partner for open source companies and projects. I realize that won’t happen overnight and I welcome suggestions on how to reach that goal. In any case it looks like it is going to be a lot of fun.

by Tarus at June 08, 2022 04:20 PM

June 2022 Releases – Horizon 30.0.0, Meridians 2022.1.4, 2021.1.16, 2020.1.24, 2019.1.35

In June, we released updates to all OpenNMS Meridian versions under active support, as well as the first release of the Horizon 30 series.

Meridian Stable Updates

Meridians 2019.1.35, 2020.1.24, and 2021.1.16 contain mostly a number of small bug fixes.

Additionally, Meridian 2022.1.4 contains a bunch of documentation improvements and a few other bug fixes and enhancements.

For a list of changes, see the release notes:

Horizon 30.0.0

Release 30.0.0 is the first in the Horizon 30 series, introducing a number of new features, most notably a preview of a new web UI, and the ability to back up infrastructure device configs.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.0 is Nutria.

by RangerRick at June 08, 2022 02:02 PM

June 2022 Releases – Horizon 30.0.0, Meridians 2022.1.4, 2021.1.16, 2020.1.24, 2019.1.35

In June, we released updates to all OpenNMS Meridian versions under active support, as well as the first release of the Horizon 30 series.

Meridian Stable Updates

Meridians 2019.1.35, 2020.1.24, and 2021.1.16 contain mostly a number of small bug fixes.

Additionally, Meridian 2022.1.4 contains a bunch of documentation improvements and a few other bug fixes and enhancements.

For a list of changes, see the release notes:

Horizon 30.0.0

Release 30.0.0 is the first in the Horizon 30 series, introducing a number of new features, most notably a preview of a new web UI, and the ability to back up infrastructure device configs.

For a high-level overview of what has changed in Horizon 30, see What’s New in OpenNMS Horizon 30.

For a complete list of changes, see the changelog.

The codename for Horizon 30.0.0 is Nutria.

by RangerRick at June 08, 2022 02:02 PM

June 07, 2022

The OpenNMS Group Launches Horizon 30, the Latest Major Release of its Open Source Network Monitoring Solution

Official Release of OpenNMS Plugin API 1.0 Provides a Stable Development Ecosystem to Build Integrations and Plugins

RALEIGH, N.C. – June 8, 2022The OpenNMS Group, Inc., a subsidiary of NantHealth, Inc. (NASDAQ: NH), today announced OpenNMS Horizon 30, the latest major release of OpenNMS’ popular open source network monitoring solution. With the Horizon 30 release, OpenNMS is now improving network traffic analysis by providing advanced NetFlow thresholding and centralized storage of network device configurations, among other enhanced capabilities ideal for the enterprise.

Alongside Horizon 30, OpenNMS also announced the official release of the OpenNMS Plugin API 1.0, which provides the developer community with a reliable resource for building plugins that exchange information between OpenNMS and other systems.

“Horizon 30 provides a rich set of significant improvements to our NetFlow capabilities, not just with performance, but also by adding fine-grained analysis of network conversations,” said David Hustace, CEO of The OpenNMS Group. “We’ve also officially released our plugin API that facilitates the development of plugins that natively integrate a customer’s network infrastructure with the platform. This 1.0 version ensures compatibility against future Horizon releases preserving customer contributions across future releases.”


Horizon 30: NetFlow Thresholding, Device Configuration Backup, and More

With Horizon 30, OpenNMS builds on its existing support for traffic analysis by introducing the ability to generate alarms in real time by analyzing the flow data with algorithms that support high, low, and relative change threshold computations. Users can now define fine-grained monitoring of network circuits to help detect anomalies and changes in network traffic, thus ensuring circuits stay healthy, and bandwidth-related issues are identified promptly.

New to Horizon 30, users are now able to back up network device configurations on demand and/or schedule periodic backups. Horizon provides storage of centralized device configurations for comparative analysis in the event of an unexpected configuration change and the ability to manually restore backed up configurations.

Additional features and enhancements of Horizon 30 include:

  • OpenNMS Grafana Plugin Update (Helm 8.0): Provides updates to the integration between OpenNMS and Grafana to deliver a combination of fault, performance, and NetFlow data visualization in a single solution. Grafana dashboards built using OpenNMS Helm can now incorporate filtering by monitoring location, offer swapping of ingress and egress flow metrics, and take advantage of wildcard support to display data more dynamically than ever before.
  • Improved Device Inventory Workflow: A new way to configure the monitored device inventory subsystem, bringing both a user-friendly interface and a powerful API backend.
  • OpenAPI Support: Allows users to interact with the OpenNMS REST API directly from a web browser, accelerating understanding and shortening time to value.
  • Event-sourced Data Collection: Bridges fault-management and performance-management, enabling extraction of performance metrics from the fault-management domain. Metrics contained in SNMP traps or syslog messages can now be persisted for visualizing and thresholding.
  • Architecture for Learning-Enabled Correlation (ALEC) Topology Provider: Users can now view correlated situations and their constituent alarms on the topology map, as well as in list form.

OpenNMS Plugin API 1.0: Building Sustainable Integrations

With the official release of the Plugin API 1.0, OpenNMS provides a development ecosystem that facilitates integration of network infrastructure into a generalized framework of events, metrics, flows, and topology. OpenNMS features many integration points, making it a solid platform on which to build the monitoring solution an organization needs. The Plugin API clearly identifies, documents, and provides ongoing compatibility guarantees for those integration points, developers can create plugins that target a clear set of interfaces and work with a broad range of OpenNMS releases. As the Plugin API adoption increases, the community will benefit from an ecosystem of plugins that can be built more quickly, validated more easily, and assured to be compatible with future releases of OpenNMS.

For more information on Horizon 30, please visit: https://opennms.wpengine.com/horizon/
For more information on the OpenNMS Plugin API 1.0, please visit: https://opennms.wpengine.com/opennms-plugin-api

About OpenNMS
Based in Morrisville, NC, OpenNMS provides a highly reliable, scalable and comprehensive fault, performance and traffic monitoring solution that easily integrates with business applications and workflows to monitor and visualize everything in a network. The OpenNMS platform monitors some of the largest networks in existence, covering the healthcare, technology, finance, government, education, retail and industrial sectors, many with tens of thousands of networked devices. OpenNMS users include five of the top twenty companies on the Fortune 100, as well as multiple large and multi-state health providers and one of the largest electronic medical record providers in the United States. For more information, visit https://opennms.wpengine.com/.

About NantHealth, Inc.
NantHealth, a member of the NantWorks ecosystem of companies, provides enterprise solutions that help businesses transform complex data into actionable insights. By offering efficient ways to move, interpret and visualize complex and highly sensitive information, NantHealth enables customers in healthcare, life sciences, logistics, telecommunications and other industries to automate, understand and act on data while keeping it secure and scalable. NantHealth’s product portfolio comprises the latest technology in payer/provider collaboration platforms for real-time coverage decision support (Eviti and NaviNet), and data solutions that provide multi-data analysis, reporting and professional services offerings (Quadris). The OpenNMS Group, Inc., a NantHealth subsidiary, helps businesses monitor and manage network health and performance. For more information, visit nanthealth.com, follow us on Twitter, Facebook, LinkedIn and YouTube, and subscribe to our blog.

NantHealth Forward Looking Statement

This news release contains certain statements of a forward-looking nature relating to future events or future business performance. Forward-looking statements can be identified by the words “expects," “anticipates," “believes," “intends," “estimates," “plans," “will," “outlook” and similar expressions. Forward-looking statements are based on management’s current plans, estimates, assumptions and projections, and speak only as of the date they are made. Risks and uncertainties include, but are not limited to: our ability to successfully integrate a complex learning system to address a wide range of healthcare issues; our ability to successfully amass the requisite data to achieve maximum network effects; appropriately allocating financial and human resources across a broad array of product and service offerings; raising additional capital as necessary to fund our operations; our ability to grow the market for our software and data solutions; successfully enhancing our software and data solutions to achieve market acceptance and keep pace with technological developments; customer concentration; competition; security breaches; bandwidth limitations; our ability to integrate The OpenNMS Group, Inc. into our operations; our use and distribution of open source software; our ability to obtain necessary regulatory approvals, certifications and licenses; dependence upon senior management; the need to comply with and meet applicable laws and regulations; unexpected adverse events; and anticipated cost savings. We undertake no obligation to update any forward-looking statement in light of new information or future events, except as otherwise required by law. Forward-looking statements involve inherent risks and uncertainties, most of which are difficult to predict and are generally beyond our control. Actual results or outcomes may differ materially from those implied by the forward-looking statements as a result of the impact of a number of factors, many of which are discussed in more detail in our reports filed with the Securities and Exchange Commission.

Media Contact
Erica Anderson
Offleash PR for OpenNMS
opennms@offleashpr.com

by Jess at June 07, 2022 11:59 AM

The OpenNMS Group Launches Horizon 30, the Latest Major Release of its Open Source Network Monitoring Solution

Official Release of OpenNMS Plugin API 1.0 Provides a Stable Development Ecosystem to Build Integrations and Plugins

RALEIGH, N.C. – June 8, 2022The OpenNMS Group, Inc., a subsidiary of NantHealth, Inc. (NASDAQ: NH), today announced OpenNMS Horizon 30, the latest major release of OpenNMS’ popular open source network monitoring solution. With the Horizon 30 release, OpenNMS is now improving network traffic analysis by providing advanced NetFlow thresholding and centralized storage of network device configurations, among other enhanced capabilities ideal for the enterprise.

Alongside Horizon 30, OpenNMS also announced the official release of the OpenNMS Plugin API 1.0, which provides the developer community with a reliable resource for building plugins that exchange information between OpenNMS and other systems.

“Horizon 30 provides a rich set of significant improvements to our NetFlow capabilities, not just with performance, but also by adding fine-grained analysis of network conversations,” said David Hustace, CEO of The OpenNMS Group. “We’ve also officially released our plugin API that facilitates the development of plugins that natively integrate a customer’s network infrastructure with the platform. This 1.0 version ensures compatibility against future Horizon releases preserving customer contributions across future releases.”


Horizon 30: NetFlow Thresholding, Device Configuration Backup, and More

With Horizon 30, OpenNMS builds on its existing support for traffic analysis by introducing the ability to generate alarms in real time by analyzing the flow data with algorithms that support high, low, and relative change threshold computations. Users can now define fine-grained monitoring of network circuits to help detect anomalies and changes in network traffic, thus ensuring circuits stay healthy, and bandwidth-related issues are identified promptly.

New to Horizon 30, users are now able to back up network device configurations on demand and/or schedule periodic backups. Horizon provides storage of centralized device configurations for comparative analysis in the event of an unexpected configuration change and the ability to manually restore backed up configurations.

Additional features and enhancements of Horizon 30 include:

  • OpenNMS Grafana Plugin Update (Helm 8.0): Provides updates to the integration between OpenNMS and Grafana to deliver a combination of fault, performance, and NetFlow data visualization in a single solution. Grafana dashboards built using OpenNMS Helm can now incorporate filtering by monitoring location, offer swapping of ingress and egress flow metrics, and take advantage of wildcard support to display data more dynamically than ever before.
  • Improved Device Inventory Workflow: A new way to configure the monitored device inventory subsystem, bringing both a user-friendly interface and a powerful API backend.
  • OpenAPI Support: Allows users to interact with the OpenNMS REST API directly from a web browser, accelerating understanding and shortening time to value.
  • Event-sourced Data Collection: Bridges fault-management and performance-management, enabling extraction of performance metrics from the fault-management domain. Metrics contained in SNMP traps or syslog messages can now be persisted for visualizing and thresholding.
  • Architecture for Learning-Enabled Correlation (ALEC) Topology Provider: Users can now view correlated situations and their constituent alarms on the topology map, as well as in list form.

OpenNMS Plugin API 1.0: Building Sustainable Integrations

With the official release of the Plugin API 1.0, OpenNMS provides a development ecosystem that facilitates integration of network infrastructure into a generalized framework of events, metrics, flows, and topology. OpenNMS features many integration points, making it a solid platform on which to build the monitoring solution an organization needs. The Plugin API clearly identifies, documents, and provides ongoing compatibility guarantees for those integration points, developers can create plugins that target a clear set of interfaces and work with a broad range of OpenNMS releases. As the Plugin API adoption increases, the community will benefit from an ecosystem of plugins that can be built more quickly, validated more easily, and assured to be compatible with future releases of OpenNMS.

For more information on Horizon 30, please visit: https://www.opennms.com/horizon/
For more information on the OpenNMS Plugin API 1.0, please visit: https://www.opennms.com/opennms-plugin-api

About OpenNMS
Based in Morrisville, NC, OpenNMS provides a highly reliable, scalable and comprehensive fault, performance and traffic monitoring solution that easily integrates with business applications and workflows to monitor and visualize everything in a network. The OpenNMS platform monitors some of the largest networks in existence, covering the healthcare, technology, finance, government, education, retail and industrial sectors, many with tens of thousands of networked devices. OpenNMS users include five of the top twenty companies on the Fortune 100, as well as multiple large and multi-state health providers and one of the largest electronic medical record providers in the United States. For more information, visit https://www.opennms.com/.

About NantHealth, Inc.
NantHealth, a member of the NantWorks ecosystem of companies, provides enterprise solutions that help businesses transform complex data into actionable insights. By offering efficient ways to move, interpret and visualize complex and highly sensitive information, NantHealth enables customers in healthcare, life sciences, logistics, telecommunications and other industries to automate, understand and act on data while keeping it secure and scalable. NantHealth’s product portfolio comprises the latest technology in payer/provider collaboration platforms for real-time coverage decision support (Eviti and NaviNet), and data solutions that provide multi-data analysis, reporting and professional services offerings (Quadris). The OpenNMS Group, Inc., a NantHealth subsidiary, helps businesses monitor and manage network health and performance. For more information, visit nanthealth.com, follow us on Twitter, Facebook, LinkedIn and YouTube, and subscribe to our blog.

NantHealth Forward Looking Statement

This news release contains certain statements of a forward-looking nature relating to future events or future business performance. Forward-looking statements can be identified by the words “expects," “anticipates," “believes," “intends," “estimates," “plans," “will," “outlook” and similar expressions. Forward-looking statements are based on management’s current plans, estimates, assumptions and projections, and speak only as of the date they are made. Risks and uncertainties include, but are not limited to: our ability to successfully integrate a complex learning system to address a wide range of healthcare issues; our ability to successfully amass the requisite data to achieve maximum network effects; appropriately allocating financial and human resources across a broad array of product and service offerings; raising additional capital as necessary to fund our operations; our ability to grow the market for our software and data solutions; successfully enhancing our software and data solutions to achieve market acceptance and keep pace with technological developments; customer concentration; competition; security breaches; bandwidth limitations; our ability to integrate The OpenNMS Group, Inc. into our operations; our use and distribution of open source software; our ability to obtain necessary regulatory approvals, certifications and licenses; dependence upon senior management; the need to comply with and meet applicable laws and regulations; unexpected adverse events; and anticipated cost savings. We undertake no obligation to update any forward-looking statement in light of new information or future events, except as otherwise required by law. Forward-looking statements involve inherent risks and uncertainties, most of which are difficult to predict and are generally beyond our control. Actual results or outcomes may differ materially from those implied by the forward-looking statements as a result of the impact of a number of factors, many of which are discussed in more detail in our reports filed with the Securities and Exchange Commission.

Media Contact
Erica Anderson
Offleash PR for OpenNMS
opennms@offleashpr.com

by Jess at June 07, 2022 11:59 AM

June 06, 2022

OpenNMS On the Horizon – June 6th, 2022

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.
Contributors

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.

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

  • 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

by RangerRick at June 06, 2022 09:13 PM

May 31, 2022

OpenNMS On the Horizon – May 31st, 2022

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

Apologies for missing a few, but I was out of the office.

Since last time, we worked on, well, this list is huge.
Feel free to make the most inefficient summary possible by just reading all the updates.
Which I guess isn't really a summary.
¯\_(ツ)_/¯

Github Project Updates

Internals, APIs, and Documentation
  • Mark Mahacek worked on documentation updates for Meridian 2022.
  • Freddy continued his work on OIA improvements.
  • I continued my work on updating and refactoring various dependencies in our Karaf instance(s).
  • Chandra wrapped up his changes to support deleting devices configs when the related interface is removed.
  • Gerald worked on various Kubernetes and Skaffold config in Horizon Stream.
  • Chandra fixed a bug in DAO queries by IP address + location.
  • Alex worked on some device config backup test issues.
  • Mark Mahacek worked on BSM, Geocoder, Jetty SSL, LoopDetector, and PassiveStatus documentation.
  • Mike and Arthur worked on keycloak-related config for Stream development.
  • Patrick worked on some memory/GC optimization in the time-series layer.
  • Alex added a reason response for DCB.
  • Alberto worked on some DCB and Helm filter documentation updates.
  • I refactored how/when third-party license file generation happens.
  • Alexander did more work on HTTPS smoke tests.
  • Christian worked on making BgpSessionMonitor more flexible in what OIDs can be used.
  • Yang Li worked on being able to trigger events in Stream from the UI.
  • Alberto worked on making Collectd strictInterval=true by default for Horizon 30.
  • Christian fixed a bug in asset search.
  • Alberto updated documentation for the new location template variable in Helm.
  • Jason worked on the CI pipeline for Stream.
  • Gerald worked on Camel/Kafka routing in Stream.
  • Bonnie did some more work on upgrade and DCB documentation.
  • James fixed opennms restart so debug flags are preserved.
  • Christian worked on value mapping in the XML and SNMP collectors.
  • Dino added some thresholds for pollerd and collectd threads.
  • Chandra and Morteza fixed some issues in resolving OIA dependencies.
  • Chandra fixed some issues with script-file handling in DCB.
  • Antonio worked on some enlinkd topology improvements.
  • Dustin added support for setting what shell is used in DCB commands.
  • Bonnie added documentation for the Grafana Image Plugin and the WmiMonitor.
  • Gerardo worked on some ALEC modifications using Hellinger distance for correlation.
  • Alberto worked on an enhancement to validate SCV credentials in the Karaf shell.
  • Dmitri worked on supporting the OPAQUE SNMP data type.
  • Patrick did more work on SCV support in OIA.
  • Mark Frazier worked on provisioning scanning in Stream.
  • Arthur worked on Minion support in Stream.
  • Freddy worked on some additions to the stress Karaf command.
  • Morteza worked on some cleanups to how the CircleCI pipeline is run.
  • Chandra worked on supporting TFTP binary mode in DCB scripts.
  • Alberto fixed an issue with IP address SNMP parsing.
  • Dustin worked on better handling devices that send flows with an unknown direction.
Web, ReST, UI, and Helm
  • Pushkar worked on an access issue in resource graphs and ROLE_USER.
  • Mark Frazier worked on the provisioning REST service for Horizon Stream.
  • Alberto did more work on making sure Helm and reverse proxies play nice.
  • Mike worked on some path handling in the new UI, plus some other cleanups/validation changes.
  • Christian added DCB to the RTC dashboard.
  • Mike and Chinh Le worked on some improvements to the VMware form for requisition editing.
  • Scott added a new role ROLE_FILESYSTEM_EDITOR to allow access to editing configs from the UI.
  • Arthur added ack/unack to the Stream REST service.
  • Yang Li worked on authorization/CORS issues in Stream.
  • Maxim worked on some UI navigation and search fixes.
  • Alberto fixed some query issues in Helm.
  • Scott added OpenAPI annotations to the new DCB REST service.
  • Pushkar worked on a fix to event/alarm advanced search.
  • Alberto added support for multiple selection of applications/hosts/conversations in Helm.
  • Yang Li worked on cucumber tests for GraphQL in Stream.
  • Yang Li worked on role lookup/caching in Stream.
  • Chinh Le worked on a bunch of other improvements in the new UI.
Contributors

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

  • Bonnie Robinson
  • Jason Berry
  • Gerald Humphries
  • Morteza Ershad-Manesh
  • Mark Mahacek
  • Chinh Le
  • Alberto Ramos
  • Antonio Russo
  • Dustin Frisch
  • Chandra Gorantla
  • Pushkar Suthar
  • Christian Pape
  • Alexander Chadfield
  • Freddy Chu
  • Mark Frazier
  • Arthur Naseef
  • Yang Li
  • Mike Rose
  • Marcel Fuhrmann
  • Scott Theleman
  • Dmitri Herdt
  • Alex May
  • Patrick Schweizer
  • James Hutchinson
  • Gerardo Montecon
  • Maxim Brener
  • Benjamin Reed
  • Dino Yancey

Releases and Roadmap

May Releases

In May, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 29.

NOTE: All releases this month received security updates that affect a number of core dependencies. While these dependency changes should not affect how the OpenNMS runtime works, these releases contain a larger than usual number of changes to "plumbing" to facilitate these dependency updates. We strongly recommend that you do more than the usual amount of testing before deploying this update to a production environment.

Meridian Stable Updates

Meridians 2019.1.34, 2020.1.23, and 2021.1.15 contain primarily dependency updates primarily for security improvements.

Additionally, Meridian 2022.1.3 contains a bunch of documentation improvements and a few other bug fixes.

For a list of changes, see the release notes:

Horizon 29.0.10

Release 29.0.10 contains all of the fixes included in Meridian 2022.1.3, plus a few other bug fixes and enhancements.

For a high-level overview of what has changed in Horizon 29, see What’s New in OpenNMS Horizon 29.

For a complete list of changes, see the changelog.

The codename for Horizon 29.0.10 is Duck.

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.

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

  • HELM-316: Document Grafana datasource expressions - Performance
  • HELM-326: Add documentation for location() template_variable
  • NMS-8504: Add a note to remember delete the browsers cache when upgrading OpenNMS
  • NMS-10226: Two BridgePort Node - Topology Mismatch
  • NMS-11065: WmiMonitor
  • NMS-12410: Topology Provider for CDP,LLDP,OSPF,ISIS,Bridge Topologies
  • NMS-12991: Missing datacollection file does not bring valueable error message
  • NMS-13684: Document how to set up SSL with Jetty
  • NMS-13692: Document how to upgrade OpenNMS
  • NMS-13971: Basic upgrade procedure
  • NMS-13987: [Web] - WebServer Fingerprinting
  • NMS-13991: Allow test mode flags in restart command
  • NMS-14008: Implement event sourced performance data
  • NMS-14038: DCB - Delete all device configs related to deleted interfaces / nodes
  • NMS-14084: Add the ability to define an enumeration to convert collected strings into numeric values
  • NMS-14109: Grafana box renders raw JS when Grafana behind reverse proxy with SSO
  • NMS-14148: Minions Trapd Listener Fails to Bind to udp/162 when broker is down
  • NMS-14174: DCB: Provide example scripts to download device configurations
  • NMS-14181: Audit Drift plugin and proportional_sum for accuracy
  • NMS-14185: Expose Secure Credentials Vault via Integration API
  • NMS-14193: Users with ROLE_USER face Access Denied when accessing Resource Graphs from Reports Section
  • NMS-14217: make sure license-maven-plugin is re-enabled in foundation and release branches
  • NMS-14227: SCV: Add Shell command to validate Credentials
  • NMS-14228: SCV: Cache JCEKS credentials in memory
  • NMS-14240: Exception when searching assets
  • NMS-14242: Super-admin role required to edit config files
  • NMS-14244: Add DCB services to 24-hour availability view
  • NMS-14245: Send events when a backup starts, succeds, or fails
  • NMS-14246: Requisition Web UI refers to "drop down" that doesn't exist
  • NMS-14247: Confusing web UI navigation titles
  • NMS-14248: Handle duplicate interface on a given location in DeviceConfig.
  • NMS-14249: modifiable OID prefix in BgpSessionMonitor
  • NMS-14250: Performance of time series integration layer
  • NMS-14253: Implement "latest" tag with documentation
  • NMS-14259: Make org.opennms.netmgt.collectd.strictInterval true by default
  • NMS-14260: UI: cannot configure requisition
  • NMS-14261: DCB menu items are mislabeled "Configuration Management"
  • NMS-14268: Test flow thresholding
  • NMS-14270: Disable editing of requisition:// URLs in external requisition editor
  • NMS-14271: Omit empty VMware credentials from URL in external requisition editor
  • NMS-14272: Fix requisition http/s path field and hostname validation
  • NMS-14273: Fix hostname validation
  • NMS-14275: DCB: Handle script file missing scenario better
  • NMS-14284: Incorrect validation of requisition name for DNS external requisitions
  • NMS-14285: Main requisition editor incorrectly mentions Requisition Definition
  • NMS-14286: Remove sorting of Schedule Frequency column
  • NMS-14290: Web UI search does not find External Requisitions and Thread Pools
  • NMS-14291: Circle ci caching OIA issue
  • NMS-14292: SCV entry attribute values become literal asterisks after editing in web
  • NMS-14295: OpenNMS build broken for release-30 and develop
  • NMS-14296: Query key/value added in Path input field causes duplicates in URL
  • NMS-14297: DCB: Whenever Sink pushes config, config type should be Sink instead of default
  • NMS-14298: DCB UI : Allow Config type to be more than two not just default/running
  • NMS-14304: Latest DCB UX Updates
  • NMS-14305: VMware type - username/password duplicated in URL
  • NMS-14308: Fix UI yarn.lock conflicts with latest updates
  • NMS-14309: Rename role from ROLE_CONFIG_EDITOR to ROLE_FILESYSTEM_EDITOR
  • NMS-14315: Global search box: gap between input field and dropdown result list
  • NMS-14316: Fix Feather Dialog issue on 0.10.10
  • NMS-14317: DCB Rest API: Update History to filter by config type
  • NMS-14320: External Requisition UI: Obfuscate vmware password in URL
  • NMS-14328: DCB: Unable to decompress the .gz file
  • NMS-14330: Shorten "External Requisitions and Thread Pools" item in New UI Preview
  • NMS-14333: DCB: Wrong cron expression results in no devices in DCB UI
  • NMS-14336: CircleCI : Intermittent failures in horizon-deb-build
  • NMS-14340: External Requisition UI: Advanced cron validation message of by 1
  • PRIS-157: IP Addresses are not validated before generating requisition

by RangerRick at May 31, 2022 05:59 PM

May 25, 2022

Creating Strong Passwords

For obvious reasons I’ve been creating some new passwords lately, and I wanted to share my method for creating strong passwords that are easy to remember yet hard to guess.

Of course, Randall Munroe set the bar with this comic:

xkcd Password Strength comic

It does make a lot of sense, but the method has its critics. Attackers can and do use random word generators which can break such passwords more quickly, even with, say, substituting “3” for “e”, etc.

There is also a good argument to be made that we should all be using password managers that generate long random passwords and not really creating passwords at all.

Then there is the very good idea of using two factor authentication, but that tends to augment passwords more than replace them.

In normal life you have to have at least a few passwords memorized, such as the one to get into your device and one to get into your password manager, so I thought I’d share my technique.

I like music, and I tend to listen to pretty obscure artists. What I do is to think of a random lyric from a song I like and then convert that into a password.

For example, right now I’m listening to the album Wet Tennis by Sofi Tukker. The track that gives me the biggest earworm is “Original Sin” which opens with the lyric:

So I think you’ve got
Something wrong with you
Something’s not right with me, too
It’s not right with me

If I were going to turn that into a password, I would come up with something like:

sItUgswwysnrwm,2inrwm

Looks pretty random, and contains lower case and upper case letters, a number and a special character. At 21 characters it isn’t quite as long as “correcthorsebatterystaple” but you can always add more words from the lyrics if needed.

Just thought I’d throw this out there as it works for me. The only thing I have to remember is not to hum the song while logging in.

by Tarus at May 25, 2022 01:54 PM

May 23, 2022

The Adventure Continues

Last year I wrote about parting ways with the OpenNMS Project and how I was ready for “Act III” of my professional career.

With my future being somewhat of a tabula rasa, I was a bit overwhelmed with choices, so I decided to return to my roots and dust off my consulting LLC. Soon I found myself in the financial sector helping to deploy network monitoring and observability solutions.

I was working with some pretty impressive applications and it was interesting to see the state of the art for monitoring. We’ve come a long way since SNMP. It was engaging and fun work, but all the software was proprietary and I missed the open source aspect.

Recently, Spot Callaway made me aware of an opportunity at Amazon Web Services for an open source evangelist position. Of all the things I’ve done in my career, acting as an evangelist for open source solutions was my favorite thing to do and here was a chance to do it full time. I will admit that Amazon was not the first name that popped into my head when I think “open source” but as I got to learn more about the team and AWS’s open source initiatives, the more interested I became in the position. After I made it through their rather intense interview process and met even more people with whom I’ll be working, it became a job I couldn’t refuse.

So I’m happy to announce that I’m now a Principal Evangelist at AWS, reporting to David Nalley, who, in addition to being a pretty awesome boss is also the current President of the Apache Software Foundation. OpenNMS would not have existed without software from the ASF, and it will be cool to learn, in addition, more about that organization first hand.

My main role will be to work with open source companies as an advocate for them within AWS. The solutions AWS provides can help jumpstart these companies toward profitability by providing the resources they need to be successful and to affordably grow as their needs change. While I am just getting started within the organization and it will take me some time to learn the ropes, I am hoping my own experience in running an open source business will provide a unique insight into issues faced by those companies.

Exciting times, so watch this space as my open source adventures continue.

by Tarus at May 23, 2022 03:22 PM

May 11, 2022

May 2022 Releases – Horizon 29.0.10, Meridians 2022.1.3, 2021.1.15, 2020.1.23, 2019.1.34

In May, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 29.

NOTE: All releases this month received security updates that affect a number of core dependencies. While these dependency changes should not affect how the OpenNMS runtime works, these releases contain a larger than usual number of changes to "plumbing" to facilitate these dependency updates. We strongly recommend that you do more than the usual amount of testing before deploying this update to a production environment.

Meridian Stable Updates

Meridians 2019.1.34, 2020.1.23, and 2021.1.15 contain primarily dependency updates primarily for security improvements.

Additionally, Meridian 2022.1.3 contains a bunch of documentation improvements and a few other bug fixes.

For a list of changes, see the release notes:

Horizon 29.0.10

Release 29.0.10 contains all of the fixes included in Meridian 2022.1.3, plus a few other bug fixes and enhancements.

For a high-level overview of what has changed in Horizon 29, see What’s New in OpenNMS Horizon 29.

For a complete list of changes, see the changelog.

The codename for Horizon 29.0.10 is Duck.

by RangerRick at May 11, 2022 07:07 PM

May 09, 2022

OpenNMS On the Horizon – May 9th, 2022

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

Since last time, we worked on documentation (OIA, upgrades, non-root, BGP session monitor, introductions, Alarmd, criteria API, XML collector, device config backup, event datacollection, new UI), boostrapping Horizon Stream, updating various dependencies, Trapd, OIA, SSH authentication, Cucumber integration tests, asset search, cron-based Quartz config, hardware inventory, and Helm flows.

Github Project Updates

Internals, APIs, and Documentation
  • Gerald, Arthur, and Jason continued to work on dev environment setup for Horizon Stream
  • Bonnie made updates to the OIA documentation
  • I updated our embedded Groovy to v2.5
  • Mark fixed a long-standing typo in the HttpPostMonitor config
  • I updated Vaadin to a newer version
  • Bonnie did more work on upgrade documentation
  • Marcel did some cleanup on the non-root docs
  • Alex worked on some fixes for Trapd startup when the subscriber hasn't registered yet
  • I cleaned up OIA's CircleCI build a bit and branched it for 1.0
  • Chandra updated Device Config Backup to delete old configs when the associated interface is deleted
  • Marcel and Bonnie worked on cleaning up some introduction bits in the docs
  • Mark did more doc updates for Alarmd
  • I worked on validating our Karaf features at compile time
  • Christian worked on an enhancement to the BgpSessionMonitor to allow modifying the OID prefix
  • I upgraded our outdated Jackson v1 dependency
  • I worked on upgrading our Camel and ActiveMQ dependencies
  • Alex updated DCB to send an event when backups are triggered
  • Arthur worked on the start of a cucumber integration test framework for Stream
  • Dustin did some more fixes to his SSH host key authentication work
  • Pushkar worked on documentation for the new multi-constraint feature in the criteria API
  • Mark added some more docs for the XML collector
  • Christian did some documentation updates for DCB
  • Christian worked on a fix for searching assets
  • Freddy added docs for collecting performance data from events
Web, ReST, UI, and Helm
  • Chinh Le worked on thread pool and quartz config improvements in the new UI
  • Scott worked on documentation for some of the new UI features
  • Mike Rose worked on some initial login and alarm view UI in Stream
  • Pushkar did more work on the hardware inventory REST interface
  • Yang Li worked on bringing up a core REST API in Stream
  • Alberto fixed a bug in Helm that could cause some flow data to not be shown if ingress and egress labels don't match
Contributors

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

  • Freddy Chu
  • Chandra Gorantla
  • Chinh Le
  • Mark Mahacek
  • Bonnie Robinson
  • Patrick Schweizer
  • Mike Rose
  • Scott Theleman
  • Benjamin Reed
  • Alex May
  • Christian Pape
  • Arthur Naseef
  • Gerald Humphries
  • Yang Li
  • Dmitri Herdt
  • Marcel Fuhrmann
  • Alberto Ramos
  • Pushkar Suthar
  • Dustin Frisch
  • Jason Berry

Releases and Roadmap

Upcoming May Releases

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

The next OpenNMS release day is May 11th, 2022.

We currently expect an update to Horizon 29, 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.

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

  • ALEC-103: Spike: Improve on DBSCAN + Hellinger Distance: Using Key Customer Data and Compare results to Basic DBSCAN
  • HELM-307: Grafana Location Dashboard - Performance
  • HELM-319: Grafana Location Dashboard - Entity
  • HELM-320: FlowDS's combineIngressEgress transform loses the first query response result
  • NMS-13696: Migrate geographical maps Discourse article to docs
  • NMS-13973: Document how to backup system before upgrade
  • NMS-14050: Review wording of the new Provisiond UI
  • NMS-14051: Update existing documentation related to provisiond xml file
  • NMS-14085: Provisiond Fails to Start when wrong data is successfully POSTed via REST to hardwareInventory endpoint
  • NMS-14142: Invalid node Foreign ID not checked during provisioning resulting in various RRD graphing problems
  • NMS-14159: Typo in HttpPostMonitor parameters
  • NMS-14189: Document new UI features in H30
  • NMS-14204: Add tag for UI linked help
  • NMS-14208: Upgrade groovy-all dependency
  • NMS-14214: DCB: Handle Archival of backups
  • NMS-14238: Document multi constraint parameter feature addition
  • NMS-14239: Fixing new UI list log & etc fail due to symbolic link
  • NMS-14252: Upgrade jackson-mapper-asl dependency
  • NMS-14256: Expand XmlCollector documented parameters
  • NMS-14258: Restructure Collector docs file path

by RangerRick at May 09, 2022 09:05 PM

“Run-of-the-Mill Person”

I just noticed that my Wikipedia page has been deleted (the old version is still on the Internet Archive).

I’m not sure how I feel about this. When I was first made aware of its existence oh so many years ago I was both flattered and a little embarrassed, mainly because I didn’t think I rated a page on Wikipedia. But then I got to thinking that, hey, pretty much anyone should be able to have a page on Wikipedia as long as it adheres to their format guidelines. It’s not like it takes up much space, and as long as the person is verifiable as being a real person, why not?

I am certain I would have been okay with my page being deleted soon after it was created, but once you get used to having something, earned or not, there is a strong psychological reaction to having it taken away. From what I can tell the page was created in 2010, so it had been around for nearly 12 years with no one complaining.

The most hurtful thing was a comment about the deletion from EdwardX from London:

Nothing cited in the article counts towards WP:GNG, and I can find nothing better online. Run-of-the-mill person.

Really? Was the “Run-of-the-mill person” comment really necessary? (grin)

I’m still happy about what I was able to accomplish with OpenNMS and building the community around it, even if it was run-of-the-mill, and I plan to promote open source and open source companies for the remainder of my career, even if that isn’t Wikipedia-worthy.

by Tarus at May 09, 2022 12:19 PM

May 02, 2022

OpenNMS On the Horizon – May 2nd, 2022

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

Since last time, we worked on documentation (provisiond, upgrading, HTTPS config, external auth, notification commands, OSGi development), the OpenNMS Integration API, secure credentials vault, logging, device config backup (SCV support, metadata handling, SSH auth), Horizon Stream, Keycloak auth, arm64 Docker containers for Horizon and Setinel, Trapd and the Twin API, Skaffold Kubernetes deployment, Helm node filtering, SCV web UI, and cron expression handling in the new UI.

Github Project Updates

Internals, APIs, and Documentation
  • I updated OIA and branched for OIA 1.0
  • Bonnie did more work on provisiond and upgrade documentation
  • Patrick continued his work to expose the secure credentials vault to OIA
  • Gerald worked on using Protobuf and Kafka as a proof-of-concept Eventd replacement
  • Mark worked on HTTPS, external auth, and notification commands documentation
  • Chandra cleaned up the container bridge logging to be less chatty
  • Chandra updated device config backup APIs for persistence config
  • Arthur worked on example Horizon Stream docker-compose configs
  • Yang Li worked on role-based auth using Keycloak in Stream
  • Christian added support for disabling DCB for a device in requisition metadata
  • I worked on cleaning up some of our xerces/XML dependencies
  • Freddy worked to wrap up the arm64 branch for Horizon and Sentinel
  • Chandra did more work on integrating metadata handling and SCV
  • Dustin worked on support for recursive parsing of metadata expressions
  • Dustin did more work on SSH host key authentication for DCB
  • Chandra wrote some developer documentation on OSGi and Karaf
  • Arthur added the web detector to Horizon Stream
  • Chandra improved Trapd startup to use the twin subscriber without blocking on it
  • Gerald worked on a basic Skaffold-based workflow for deploying Stream locally using Kubernetes
Web, ReST, UI, and Helm
  • Alexander worked on an HTTPS smoke test
  • Alberto worked on wrapping up some of his node filter Helm work
  • Mike worked on adding SCV support to the new UI
  • Chandra updated the SCV REST service to handle masked credentials cleanly
  • Chinh Le worked on cron expression parsing
Contributors

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

  • Gerald Humphries
  • Benjamin Reed
  • Chandra Gorantla
  • Chinh Le
  • Bonnie Robinson
  • Alberto Ramos
  • Mike Rose
  • Alexander Chadfield
  • Yang Li
  • Marcel Fuhrmann
  • Arthur Naseef
  • Dustin Frisch
  • Mark Mahacek
  • Freddy Chu
  • Alex May
  • Christian Pape
  • Patrick Schweizer

Releases and Roadmap

Upcoming May Releases

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

The next OpenNMS release day is May 11th, 2022.

We currently expect the first 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.

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

  • ALEC-102: Improve on DBSCAN + Hellinger Distance: Dummy Data Hellinger Distance Test
  • HELM-318: Grafana Location Dashboard - Flows
  • NMS-14118: Support Host Key verification
  • NMS-14143: DCB: trigger backup via REST should block
  • NMS-14145: DCB: Allow to disable scheduling
  • NMS-14155: DCB: Add support for SCV retrieval through Metadata API
  • NMS-14176: DCB: Getting the device config also persists [RFC]
  • NMS-14184: Grafana dashboard box links are no longer valid in Grafana 8.4
  • NMS-14192: Dependabot: update Vaadin to the latest 8.x
  • NMS-14205: Add UI Components for SCV
  • NMS-14206: Restrict logging on org.opennms.container.web.bridge.rest
  • NMS-14218: SCV: Masked credentials should be ignored in update
  • NMS-14234: Add OpenNMS/OSGi HowTo document
  • NMS-14236: Upgrade to feather 0.10.8 & resolve TS issues

by RangerRick at May 02, 2022 09:12 PM

April 28, 2022

International Girls in ICT Day 2022: Access and Safety

We invited OpenNMS employees to share their own experiences in ICT as women, non-binary, those identifying as female, or allies. Read their stories.

International Girls in ICT Day celebrates the importance of girls and women in the information and communications technology sector. Since 2001, the International Telecommunication Union (ITU), a United Nations agency, has sponsored this event. The theme for 2022 is "access and safety", still a significant issue for many girls, women, and non-binary folks in the technology space.

Diversity in STEM

Now, more than ever, technology organizations realize the value of diversity, and are taking steps to address under-representation of different groups, including women and girls. Despite these efforts, women hold only 16% of engineering roles and 27% of computing roles in companies in the U.S.1

Numerous factors contribute to this imbalance, but the most cited explanation is the relatively low number of girls and women studying STEM (science, technology, engineering, and mathematics). While governments, educators, and other organizations encourage girls and women to pursue STEM activities, we also need to work to make STEM education and workplaces welcoming and safe. We will know we have succeeded when girls and women are no longer seen as exceptions in these fields.

Beyond STEM

It is essential to have more girls and women engineers and developers, not just for gender equity, but to benefit from the different perspectives any under-represented group brings to the table. However, by focusing exclusively on STEM, we fail to recognize the contributions from women in ICT who bring other skills.

Technology is worthless if it doesn’t connect with people. Software is more than just writing code; hardware is more than just building a device. Whether the technology is sold or shared, someone needs to promote it, document it, package it, brand it, ship it, provide support for it, research and plan improvements to it. Marketing, graphic design, writing, sales, customer support, and user experience are just a few of the roles in ICT where women have better representation.

ICT not only needs to welcome girls, women, and non-binary folks in STEM, but also celebrate the existing contributions from those with an arts and social sciences background.

1 2019 U.S. Bureau of Labor Statistics cited in Resetting Tech Culture, a research report by Accenture and Girls Who Code.

by Bonnie Robinson at April 28, 2022 06:16 PM

April 25, 2022

OpenNMS On the Horizon – April 25th, 2022

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

Since last time, we worked on documentation (alarms, collection, device config backup, provisioning), the secure credentials vault (OIA and metadata support), Karaf dependency cleanup, wrapping up device config backup features, non-root fixes, Horizon Stream, Flows, dependency updates, Datachoices, Thresholding metadata, Helm filters, REST, and OpenNMS.js.

Github Project Updates

Internals, APIs, and Documentation
  • Bonnie worked on device config backup UI and provisioning documentation
  • Patrick did some work on exposing the secure credentials vault to OIA plugins
  • Chandra worked on changes to the JCEKS implementation of SCV
  • I continued continuing my work on improving our spring (and other) dependencies in Karaf
  • Dustin worked on DCB end-to-end tests
  • Alex made some improvements to requisition foreign-source name validation
  • Chandra did some fixes to the DCB monitor's behavior
  • I fixed a few issues with validation of non-root access during install
  • Dustin added support for SSH host keys in the DCB SSH code
  • Jesse removed the enforcer plugin from the OIA plugin archetype
  • Gerald worked on a PoC to replace Eventd's transport with Kafka streams
  • Christian added some extra service-binding validation to the DCB service
  • Christian did more work on ingressPhysicalInterface/egressPhysicalInterface support in flows
  • Chandra worked on metadata-handling for SCV data
  • I worked on upgrading Vaadin to 8.14.x
  • Christian worked on file suffix handling in DCB
  • Jason worked on figuring out a good dev environment config for horizon stream and kubernetes
  • Mark cleaned up some Alarmd, collection, and HTTPS documentation
  • Yang Li and Arthur worked on Keycloak integration in horizon stream
  • Chandra added support for blocking requests in DCB
  • Freddy did more work on arm64 image support for Horizon and Sentinel
  • Freddy worked on some changes to thresholding support for metadata
  • Jesse worked on updating the datachoices plugin to support sending additional statistics relating to situations, locations, minion, sentinel, and Karaf features
Web, ReST, UI, and Helm
  • Yang Li worked on prototyping graphql support in horizon stream
  • Mike did some more polish and improvements to the DCB vue UI
  • Alberto continued his work on wildcard support in certain types of Helm filters
  • Scott made some improvements to the DCB REST API (and the DAO serving it)
  • Pushkar did more work on validation of hardware inventory REST input
  • I cleaned up a bunch of dependencies in OpenNMS.js and Helm
Contributors

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

  • Jesse White
  • Chandra Gorantla
  • Freddy Chu
  • Pushkar Suthar
  • Mark Mahacek
  • Arthur Naseef
  • Benjamin Reed
  • Patrick Schweizer
  • Mike Rose
  • Bonnie Robinson
  • Alex May
  • Jason Berry
  • Yang Li
  • Alberto Ramos
  • Gerald Humphries
  • Scott Theleman
  • Alexander Chadfield
  • Maxim Brener
  • Christian Pape
  • Dustin Frisch

Releases and Roadmap

Upcoming May Releases

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

The next OpenNMS release day is May 11th, 2022.

We currently expect the first 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.

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

  • ALEC-100: Present Current Useful Telemetry Metrics and Gap Analysis
  • HELM-309: Grafana Datasource expressions - Performance
  • NMS-13968: Retroactively tie in the endpoints
  • NMS-14005: Multi parameter constraints in the rules engine implementation
  • NMS-14012: Add End-to-End Integration Test for Device Config Monitor
  • NMS-14032: install script fails if an OpenNMS directory contains root-owned lost+found directory
  • NMS-14121: Support new role for viewing and performing manual Device Backups
  • NMS-14127: DCB: Verify that service is actually bound
  • NMS-14131: DCB: UI Documentation
  • NMS-14134: CVE-2022-22965: Spring RCE in Data Bindings
  • NMS-14144: DCB: filename suffix should be globally unique
  • NMS-14156: DCB: Expecting dot before filename suffix
  • NMS-14163: DCB: Monitor should return poll status based on last retrieval
  • NMS-14167: DCB: List devices that never has done a backup
  • NMS-14169: IPFIX: Also support ingressPhysicalInterface and egressPhysicalInterface for input and output ifIndex
  • NMS-14170: DCB: add messages in UI to indicate the lack of the new DCB role
  • NMS-14173: Add SCV Rest API
  • NMS-14175: DCB: New UI display for Config Type
  • NMS-14182: Fix formatting in alarmd documentation
  • NMS-14190: Fix new UI back button test failure
  • NMS-14200: DCB: Configuration Management from Main menu lands on Nodes page in New UI

by RangerRick at April 25, 2022 07:37 PM

April 18, 2022

OpenNMS On the Horizon – April 18th, 2022

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

Since last time, we worked on documentation (provisioning, capabilities, device config backup UI, ticketer), a number of device config backup changes (roles, filename and suffix handling, scheduling, authentication, REST), Netflow 9 parsing, Keycloak, time-series tag matching, ID types, HTTPS smoke tests, OIA, hardware inventory, notification editing, surveillance dashboards, Helm filtering, and topology in the new UI.

Github Project Updates

Internals, APIs, and Documentation
  • Bonnie did more work on provisioning documentation
  • Mark made some improvements to the documentation on capabilities in the deployment guide
  • Christian added a role for device config backup
  • I worked on cleaning up our Spring dependency-handling in Karaf
  • Bonnie made some updates to the device config backup documentation
  • Christian added parsing of ingressPhysicalInterface and egressPhysicalInterface to the Netflow 9 parser
  • Christian made some changes to the way unique filenames and suffixes are handled in DCB
  • Mark did some cleanups to the ticketer documentation
  • Bonnie did more work on documenting the DCB UI
  • Arthur worked on Keycloak support in Stream
  • Freddy did more work on doing datacollection from events
  • Dustin fixed some issues with DCB scheduling
  • Chandra and Dustin worked on Secure Credentials Vault support for DCB authentication
  • Patrick did some more fixes to tag matching in the time-series API
  • Yang Li worked on converting IDs to be Longs in Stream
  • Alexander worked on fixes for issue with smoke tests running in HTTPS mode
  • Freddy worked on updating the handling of thresholding definitions in OIA
Web, ReST, UI, and Helm
  • Pushkar worked on fixing a bug with POSTing bad data to the hardware inventory REST API
  • Christian cleaned up some input-handling in the notification path editor
  • Christian fixed an issue with availability calculation in the surveillance dashboard
  • Alberto worked on some filtering improvements in Helm
  • Scott fixed an issue with device counts in the DCB REST interface
  • Mike did more work on topology in the new UI
  • Chinh Le fixed an issue with handling of spaces in foreign source names in the new UI
Contributors

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

  • Freddy Chu
  • Chinh Le
  • Alexander Chadfield
  • Marcel Fuhrmann
  • Patrick Schweizer
  • Chandra Gorantla
  • Bonnie Robinson
  • Mike Rose
  • Dustin Frisch
  • Benjamin Reed
  • Mark Mahacek
  • Alberto Ramos
  • Christian Pape
  • Scott Theleman
  • Pushkar Suthar

Releases and Roadmap

April 2022 Releases

In April, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 29.

Meridian Stable Updates

Meridians 2019.1.33 and 2020.1.22 contained a few targeted security fixes and enhancements.

On top of those changes, Meridian 2021.1.14 includes additional documentation updates and a few more small bug fixes.

Meridian 2022.1.2 contains more documentation updates, plus a few fixes for running as non-root, XML processing dependency cleanups, and a few other minor improvements.

For a list of changes, see the release notes:

Horizon 29.0.9

Release 29.0.9 contains all of the fixes included in Meridian 2022.1.2.

For a high-level overview of what has changed in Horizon 29, see What’s New in OpenNMS Horizon 29.

For a complete list of changes, see the changelog.

The codename for Horizon 29.0.9 is Kiwi.

Upcoming May Releases

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

The next OpenNMS release day is May 11th, 2022.

We currently expect the first 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.

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

  • HELM-311: Add a transform to swap Ingress and Egress
  • NMS-13443: Jira Cloud Support
  • NMS-13802: DCB - Document how to use the polling packages and the requisition to configure backups
  • NMS-13992: Docker usage documentation is out of date
  • NMS-14048: Node availability > 100% in the dashboard
  • NMS-14111: Destination Path Edit Button fails when Name field is empty
  • NMS-14130: Support for netflowv9 fields ingressPhysicalInterface & egressPhysicalInterface
  • NMS-14146: DCB: Backup is triggered after provisioning
  • NMS-14162: Update docs for binding ports <1024
  • NMS-14165: DCB: Display Device Count for queries
  • NMS-14166: Merge feature/device-config back to develop
  • NMS-14168: DCB: Backup is always triggered on minion
  • NMS-14172: Cleanup Ticketer docs formatting

by RangerRick at April 18, 2022 09:21 PM

April 13, 2022

April 2022 Releases – Horizon 29.0.9, Meridians 2022.1.2, 2021.1.14, 2020.1.22, 2019.1.33

In April, we released updates to all OpenNMS Meridian versions under active support, as well as Horizon 29.

Meridian Stable Updates

Meridians 2019.1.33 and 2020.1.22 contained a few targeted security fixes and enhancements.

On top of those changes, Meridian 2021.1.14 includes additional documentation updates and a few more small bug fixes.

Meridian 2022.1.2 contains more documentation updates, plus a few fixes for running as non-root, XML processing dependency cleanups, and a few other minor improvements.

For a list of changes, see the release notes:

Horizon 29.0.9

Release 29.0.9 contains all of the fixes included in Meridian 2022.1.2.

For a high-level overview of what has changed in Horizon 29, see What’s New in OpenNMS Horizon 29.

For a complete list of changes, see the changelog.

The codename for Horizon 29.0.9 is Kiwi.

by RangerRick at April 13, 2022 07:02 PM

April 12, 2022

OpenNMS On the Horizon – April 11th, 2022

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

Since last time, we did more work on documentation (upgrade/backup/restore, provisioning UI, REST), device config backup (tests, metadata, monitor status, UI), REST API improvements, arm Docker images, dependency version cleanups, criteria API, license cleanup, Spring dependencies, flow tracing, JICMP, minion/sentinel non-root improvements, datacollection from events, JIRA client updates, timeseries tag matching, JavaScript dependency updates, topology UI, wildcard resources in Helm perf-ds, and cron expression editing.

Github Project Updates

Internals, APIs, and Documentation
  • Chandra worked on support for device config backup (DCB) in OSGi
  • I fixed an issue with a circular dependency between applications and monitored services in the REST API
  • Chandra fixed up some testing issues for DCB
  • Bonnie and Marcel worked on upgrade/backup/restore documentation
  • Freddy worked on arm docker image support for Horizon and Sentinel
  • Dustin cleaned up some metadata handling in DCB
  • I worked on cleaning up a bunch of mismatched dependency versions
  • Pushkar made improvements to the criteria API to allow for multiple queries ("multiAnd") on joined many-to-many tables like event parameters
  • I moved the old "request tracker" code out of the archived opennms-lib repo and back into OpenNMS core
  • I worked on cleaning up our Spring dependencies
  • Dustin worked on adding some tracing to flow handling
  • I released JICMP 3.0.0 (now requires Java 8, re-licensed to LGPLv3, publish API docs)
  • Alex fixed Minion and Sentinel to use systemd capabilities and run as opennms by default
  • Freddy worked more on supporting collecting data from events
  • Chandra made some fixes to the jira client dependencies
  • Patrick and Jesse worked on updating the timeseries tag matchers to match node resources
  • Chandra changed the DCB monitor to return up/down status based on the last retrieval attempt
Web, ReST, UI, and Helm
  • Mike worked on a bunch of improvements and feedback for the device config backup UI
  • I fixed/updated a bunch of javascript dependencies in the OpenNMS core and OpenNMS.js
  • Mike did more topology work in the new UI
  • Chinh Le did some dependency cleanup in the new UI
  • Alberto worked on basic support for using wildcards in resources in the Helm performance datasource
  • Alberto worked on supporting swapping ingress and egress in Helm flows for weird devices
  • Scott worked on back- and frontend improvements for querying DCB configs
  • Alex fixed rendering availability percentages in the new UI
  • Chinh Le worked on cron expression validation in the new UI
  • Bonnie worked on provisioning UI wording and documentation
  • Dustin made some changes to the DCB event REST model
  • Pushkar worked on validation of hardware inventory REST data
Contributors

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

  • Benjamin Reed
  • Jesse White
  • Patrick Schweizer
  • Chandra Gorantla
  • Bonnie Robinson
  • Freddy Chu
  • Chinh Le
  • Alexander Chadfield
  • Alex May
  • Pushkar Suthar
  • Christian Pape
  • Mike Rose
  • Alberto Ramos
  • Scott Theleman
  • Dustin Frisch
  • Marcel Fuhrmann
  • Mark Mahacek
  • Stefan Wachter
  • Maxim Brener

Releases and Roadmap

Upcoming April Releases

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

The next OpenNMS release day is April 13th, 2022.

We currently expect an update to Horizon 29, 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: 2022 (Q1 2022)

Meridian 2022 binaries are ready and we are prepping for release on schedule, at the end of this month.

If you want a taste of what's coming, the documentation is available on docs.opennms.com.

Meridian 2022 is based on Horizon 29.

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

  • HELM-305: Helm's Flow datasource cannot filter "NaN" results, breaking Grafana reduce expressions
  • NMS-11747: Documentation for all pollers misses RRD config parameter
  • NMS-13833: Class not found exception in web.log for the GeocoderServiceManager
  • NMS-13946: Investigate CircleCI storage usage
  • NMS-13972: Document housekeeping tasks before upgrade
  • NMS-14013: Add introduction for Device Config Backup feature
  • NMS-14016: Can't set capabilities in Minion systemd unit
  • NMS-14046: DCB Rest API: Ensure various sorting/filtering criteria work
  • NMS-14086: Resource Graphs disfunction
  • NMS-14089: DCB: Create UI for comparing 2 backup configurations
  • NMS-14105: clean up JAXB dependencies
  • NMS-14107: DeviceConfig monitor fails to load on OpenNMS
  • NMS-14110: DCB UI Changes based on latest Rest API
  • NMS-14112: DCB Rest API Updates
  • NMS-14114: Availability percentages show too many decimals
  • NMS-14115: Broken links in docs
  • NMS-14116: Update Monitor/Collector Registry to not complete Future with timeout
  • NMS-14117: Fix for NMS-13887 did not make it to Core
  • NMS-14123: Sentinel debian package fail to install
  • NMS-14126: Upgrade FeatherDS to v0.10.2
  • NMS-14141: DCB: UI changes to align with latest Rest API
  • NMS-14147: DCB: API endpoint renaming
  • NMS-14151: DCB: Rest API and UI: Fixes to device backup
  • NMS-14153: DCB: Multiple Device Backup from UI/Rest
  • NMS-14157: Update all new UI packages to latest versions
  • NMS-14164: Fix flaky test HeartbeatConsumerIT

by RangerRick at April 12, 2022 01:43 PM