RRDtool

Many open source applications use RRDtool, which is the de-facto open standard for time series data. This section describes how to install RRDtool and how to configure your Horizon Core instance to use it.

This guide does not cover data migration from JRobin to RRDTool.

Configurations must in the etc directory relative to the Horizon Core home directory. Depending on your operating system, the home directory is /usr/share/opennms for Debian/Ubuntu or /opt/opennms for CentOS/RHEL.

  • CentOS/RHEL 8

  • CentOS/RHEL 7

  • Debian/Ubuntu

Enable the OpenNMS repository and install rrdtool and jrrd2
sudo dnf config-manager --enable opennms-repo-stable-*
sudo dnf -y install rrdtool jrrd2
Create a configuration file with the time series database settings
sudo vi etc/opennms.properties.d/timeseries.properties
org.opennms.rrd.strategyClass=org.opennms.netmgt.rrd.rrdtool.MultithreadedJniRrdStrategy(1)
org.opennms.rrd.interfaceJar=/usr/share/java/jrrd2.jar(2)
opennms.library.jrrd2=/usr/lib64/libjrrd2.so(3)
org.opennms.web.graphs.engine=rrdtool(4)
rrd.binary=/usr/bin/rrdtool(5)
1 Set JNI RRD strategy class instead of JRobin.
2 Use the internal JRRD library.
3 Use the JRRD library to interface with RRDTool.
4 This is optional; use RRDTool to render graphs. If unset, keep Backshift as default.
5 Path to the RRDTool binary file.
If your RRDTool binary is not in /usr/bin/rrdtool, adjust the path in the following files:
response-adhoc-graph.properties,
response-graph.properties,
snmp-adhoc-graph.properties,
snmp-graph.properties.
Restart the Horizon Core instance to apply the configuration
sudo systemctl restart opennms
Verify that RRD files get created instead of JRobin files
find /opt/opennms/share/rrd -iname "*.rrd"
The first data collection creates RRDTool files with extension .rrd. JRobin files with extension .jrb are not updated. JRobin files are not deleted automatically. You must delete them manually.
Enable the OpenNMS repository and install rrdtool and jrrd2
sudo yum-config-manager --enable opennms-repo-stable-*
sudo yum -y install rrdtool jrrd2
Create a configuration file with the time series database settings
sudo vi etc/opennms.properties.d/timeseries.properties
org.opennms.rrd.strategyClass=org.opennms.netmgt.rrd.rrdtool.MultithreadedJniRrdStrategy(1)
org.opennms.rrd.interfaceJar=/usr/share/java/jrrd2.jar(2)
opennms.library.jrrd2=/usr/lib64/libjrrd2.so(3)
org.opennms.web.graphs.engine=rrdtool(4)
rrd.binary=/usr/bin/rrdtool(5)
1 Set JNI RRD strategy class instead of JRobin.
2 Use the internal JRRD library.
3 Use the JRRD library to interface with RRDTool.
4 This is optional; use RRDTool to render graphs. If unset, keep Backshift as default.
5 Path to the RRDTool binary file.
If your RRDTool binary is not in /usr/bin/rrdtool, adjust the path in the following files:
response-adhoc-graph.properties,
response-graph.properties,
snmp-adhoc-graph.properties,
snmp-graph.properties.
Restart the Horizon Core instance to apply the configuration
sudo systemctl restart opennms
Verify that RRD files get created instead of JRobin files
find /opt/opennms/share/rrd -iname "*.rrd"
The first data collection creates RRDTool files with extension .rrd. JRobin files with extension .jrb are not updated. JRobin files are not deleted automatically. You must delete them manually.
Install rrdtool and jrrd2
apt -y install rrdtool jrrd2
Create a configuration file with the time series database settings
sudo vi etc/opennms.properties.d/timeseries.properties
org.opennms.rrd.strategyClass=org.opennms.netmgt.rrd.rrdtool.MultithreadedJniRrdStrategy(1)
org.opennms.rrd.interfaceJar=/usr/share/java/jrrd2.jar(2)
opennms.library.jrrd2=/usr/lib/jni/libjrrd2.so(3)
org.opennms.web.graphs.engine=rrdtool(4)
rrd.binary=/usr/bin/rrdtool(5)
1 Set JNI RRD strategy class instead of JRobin.
2 Use the internal JRRD library.
3 Use the JRRD library to interface with RRDTool.
4 This is optional; use RRDTool to render graphs. If unset, keep Backshift as default
5 Path to the RRDTool binary file.
If your RRDTool binary is not in /usr/bin/rrdtool, adjust the path in the following files:
response-adhoc-graph.properties,
response-graph.properties,
snmp-adhoc-graph.properties,
snmp-graph.properties.
Restart the Horizon Core instance to apply the configuration
sudo systemctl restart opennms
Verify RRD files get created instead of JRobin files
find /usr/share/opennms/share/rrd -iname "*.rrd"
The first data collection creates RRDTool files with extension .rrd. JRobin files with extension .jrb are not updated. JRobin files are not deleted automatically. You must delete them manually.