OpenNMS, Grafana and the Internet of Things

Things have been as busy and crazy as usual here in OpenNMS-land, so I often can’t find the time to talk about all the cool new shiny that is available. As my truck wouldn’t start this morning (it’s on the charger now) I thought I’d take some time to talk about a cool new plugin available since Horizon 16 was released.

One of the things I think will be needed in the next few years is a management platform that can scale to Internet of Things (IoT) levels. I also think that the only way to overcome the “Internet of Silos” effect will be to make that platform open source. I’d like OpenNMS to fill that role.

To that end we’re working on our “minion” project. These are lightweight remote processes that do data collection and monitoring and report up to a master OpenNMS instance, or even a cluster of OpenNMS management stations. In order to scale to the massive amounts of data generated by the IoT, we’ve created the Newts project to store time series data on top of Cassandra. Both of those projects are well under way and available for testing in various OpenNMS code branches.

Then we were faced with how to display all of this information. Jesse decided to do an integration with the Grafana project, and now this functionality is available as a plug-in (click to embiggen):


OpenNMS Graphs in Grafana

It’s pretty cool – Jesse translates the syntax used for RRDTool reports into a form that Grafana can use, and since this is hosted on the Grafana server you can integrate data points from multiple OpenNMS instances or pretty much data from any source that Grafana can access. Details available on the Wiki.

Hat’s off to the Grafana project for making such a cool application, and as usual we hope you find this new addition to OpenNMS useful.

Announcing OpenNMS 14 and Newts 1.0

It is with great pleasure that I can announce the release of OpenNMS 14. Yup, you heard right, OpenNMS *fourteen*.

It’s been more than 12 years since OpenNMS 1.0 so we’ve decided to pull a Java and drop the “1.” from the version numbers. Also, we are doing away with stable and development branches. The Master branch has been replaced with the develop branch, which will be much more stable than development releases have been in the past, and we’ll name the next major stable release 15, followed by 16, etc. Do expect bug fix point releases as the in past, but the plan is to release more major releases per year than just one.

A good overview of all the new features in 14 can be found here:

https://github.com/OpenNMS/opennms/blob/release-14.0.0/WHATSNEW.md

The development team has been working almost non-stop over the last two months to make OpenNMS 14 the best and most tested version yet. A lot of things has been added, such as new topology and geographic maps, and some big things have been made better, such as linkd. Plus, oodles of little bugs have finally been closed making the whole release seem more polished and easier to use.

Today we also released Newts 1.0, the first release in a new time series data storage library. Published under the Apache License, this technology is built on Cassandra and is aimed at meeting Big Data and Internet of Things needs by providing fast, hugely scalable and redundant data storage. You can find out more about this technology here:

http://newts.io

While not yet integrated with OpenNMS, the 1.0 release is the first step in the process. Users will have the option to replace the JRobin/RRDtool storage strategies with Newts. Since Newts stores raw data, there will be a number of options for post-processing and graphing that data that I know a number of you will find useful. Whether your data needs are simple or complex, Newts represents a way to meet them.

Feel free to check out both projects. OpenNMS 14 should be in both the yum and apt repos, and as usual I welcome feedback as to what you think about it.