Upgrade Guide: 1.10 to 1.12

From OpenNMS
Jump to: navigation, search


OpenNMS 1.12 is the latest major stable release, it has completely new topology representation and major improvements for geographical maps. This guide will help you update from 1.10 to 1.12.

Set OPENNMS_HOME

In this document, $OPENNMS_HOME refers to the root of the OpenNMS installation. Usually, this is /opt/opennms, or on Debian systems, /usr/share/opennms.

It is helpful to create this environment variable as is correct for your installation to allow for cutting-and-pasting in commands below.

# RedHat-type systems
OPENNMS_HOME=/opt/opennms

# Debian/Ubuntu systems
OPENNMS_HOME=/usr/share/opennms

# verify the path setting
echo $OPENNMS_HOME

Upgrades from Older Releases

Note that if you are upgrading from OpenNMS 1.8, it is STRONGLY recommended you upgrade to the latest 1.10 release before upgrading to 1.12. For RPM, you can do so through the "obsolete" repository, and on Debian, the "oldstable" repository.

Backup OpenNMS 1.10

You should do this before any upgrade, of course, but it's doubly important on major version upgrades, where configuration can change more significantly.

New Requirements

Java 1.7u25 or later

While we have been recommending JDK 1.6 for a while for performance reasons, OpenNMS 1.12 now requires JDK 1.7u25 or higher to avoid several critical bugs in older versions of the JDK. We have better feedback with Oracle Java 7 in production environments. We also have users running OpenJDK 7 without issues. We give our best to support both.

  • check the Java version to ensure Java 7 update 25 or later is installed
java -version

Preparing Your Configuration Files for Upgrade

Comparing Your Changes

Most recent releases of OpenNMS include a pristine copy of the configuration files that were first installed, to compare against for the purposes of upgrading. If you want to see how your configuration files compare to them, you can run:

diff -Nurdbw $OPENNMS_HOME/share/etc-pristine $OPENNMS_HOME/etc

It gives you an overview how you customized your configuration.

On Debian/Ubuntu systems, run:

diff -Nurdbw $OPENNMS_HOME/share/etc-pristine /etc/opennms

The diff option --brief can be added to just show the modified file names.

Separated graph definitions

The snmp-graph.properties with all report definitions got split out into separate graph definition packages, so they are not included in the snmp-graph.properties. If you have customized graphs, be aware to put this changes in a customized properties file and drop them in the snmp-graph.properties.d directory. If you overwrite existing graphs, you can use the suppress directive in your graph definition file. For example

report.custom.myFancyBitsReport.suppress=mib2.bits

This will prevent the default mib2.bits report to be displayed in the WebUI. So you don't have to change the default graph definition file which makes your next update easier.

Jasper Reports

If you modified any of the jasper reports introduced late in the 1.8 series, note that they got cleaned up quite a bit in 1.10, and a number of the ThisMonth/LastMonth/ThisYear reports got merged such that a single report can take date ranges as argument. Keep that in mind while merging configuration conflicts.

If you customized any of the subreport definitions that came with OpenNMS 1.8/1.10, you may need to update these *.jrxml files.

Datacollection Configuration

This is only related to SNMP datacollection. If you made any changes to the datacollection folder, you will want to make a note of them, and apply them to the relevant individual file(s) in $OPENNMS_HOME/etc/datacollection/. If you create new datacollection files, note that you'll need to add an <include-collection /> reference in datacollection-config.xml.

XML attributes in provisioning requisition

If you are running provisiond, the configuration files in 1.8 until 1.10 create XML attributes called

non-ip-snmp-primary="N"
non-ip-interface="false"

These attributes are deprecated and have to be removed from the requisition XML files.

As of OpenNMS 1.12.3, the OpenNMS installer script will remove these attributes. This procedure should be done as per below.

Use of provisiond or capsd to discover new nodes

OpenNMS 1.12 makes Provisiond the default subsystem for handling new node discovery (handling node newSuspect events). Previously, the capsd subsystem was used for this purpose (see [[1]]).

Provisiond and capsd are quite different. If you are used to having OpenNMS scan new nodes and discover services using the services defined in capsd-configuration.xml, you may want to leave capsd as the default node discovery method until more familiar with how provisiond works.

To revert to using capsd behavior, set org.opennms.provisiond.enableDiscovery=false in opennms.properties, and uncomment Capsd on service-configuration.xml.

Upgrade

Now you are ready to upgrade!

Before actually performing the upgrade, you may want to take a look at the Managing Configuration Changes with Git page for a nice way to use git to make configuration upgrades easier.

For a refresher on installation and upgrade, see the Upgrading page.

If you have problems, don't forget to ask questions on the mailing lists or IRC.

Upgrade (part 1): Upgrade binaries

The first step is to upgrade the OpenNMS binaries.

  • Debian/Ubuntu example
aptitude update
aptitude upgrade

As OpenNMS packages are installed, you will be prompted to either replace or leave alone customized configuration files. One can either accept the new version of all configuration files and then hand-merge any customizations from saved original versions into the new configuration files, or go the other direction of merging changes in new files into the existing in-place original configuration files.

Upgrade (part 2): Upgrade the OpenNMS database and modify requisition files

Before starting OpenNMS again, perform an upgrade to the OpenNMS PostgreSQL database.

/usr/share/opennms/bin/install --do-database --insert-data --stored-procedure

or the equivalent

/usr/share/opennms/bin/install -dis

The installer will also upgrade any requisition files it finds to remove old XML attributes -- see Upgrade_Tools_for_1.12.

Upgrade (part 3): Merge old and new configuration files

Before starting OpenNMS again, merge old and new versions of configuration files together.

A side-by-side diff tool is very helpful for this process.

  • For Redhat-style systems, see http://wiki.freepbx.org/display/FD/Cleaning+up+files+from+a+RPM+update
  • For Debian/Ubuntu systems, the imediff2 tool can be installed with "sudo apt-get install imediff2", then see the above link for a helper script
    • This command can be used to locate old or new versions of configuration files on Debian/Ubuntu systems that need to be addressed:
 find /etc/opennms -name "*.dpkg-*"

Start OpenNMS

Start OpenNMS.

Upgrade (part 4): Update RRD filenames

OpenNMS 1.12 stores RRD files using a different file naming convention (the interface MAC address is now included in the RRD filename). The OpenNMS installer as of 1.12.3 can merge old and new filenames to recover past statistics history.

Perform the prerequisite steps listed at Upgrade_Tools_for_1.12#What_happen_with_the_fix_for_the_MAC_Addresses_issue_.3F

After this, while OpenNMS is still running, run the upgrade command above again. This will merge old RRD database files with new ones.

/usr/share/opennms/bin/install --do-database --insert-data --stored-procedure

or the equivalent

/usr/share/opennms/bin/install -dis

There is no harm to running the installer again if desired. It will report when one-time migration tasks have been completed successfully and not re-do them.

Troubleshooting

Java environment

It is recommended to install OpenJDK 7 or Oracle Java 7 JDK. If you have a white page after doing your upgrade. Please check if you have a JDK installed. The following error appears in your logs if you have just a JRE running:

 ErrorPageErrorHandler: EXCEPTION org.apache.jasper.JasperException: java.err.nojdk

Please make sure you have a JDK installed.

Configuration merge hints

The following links show a full diff from a plain OpenNMS CentOS 6.4 1.10.13 to 1.12.1 with yum.

Full diff
Changed by file name
Change statistics

Added new files

Access point monitor

 A access-point-monitor-configuration.xml

OSGi Karaf

 A config.properties
 A custom.properties
 A java.util.logging.properties
 A jira.properties
 A jre.properties
 A keys.properties
 A org.apache.felix.fileinstall-deploy.cfg
 A org.apache.karaf.features.cfg
 A org.apache.karaf.features.obr.cfg
 A org.apache.karaf.features.repos.cfg
 A org.apache.karaf.jaas.cfg
 A org.apache.karaf.log.cfg
 A org.apache.karaf.management.cfg
 A org.apache.karaf.shell.cfg
 A org.opennms.features.geocoder.nominatim.cfg
 A org.opennms.features.topology.app.cfg
 A org.opennms.features.topology.app.menu.cfg
 A org.ops4j.pax.logging.cfg
 A org.ops4j.pax.url.mvn.cfg
 A shell.init.script
 A startup.properties
 A system.properties
 A users.properties

Datacollection

 A datacollection/acmepacket.xml
 A datacollection/ejn.xml
 A datacollection/ericsson.xml
 A datacollection/hwg.xml
 A datacollection/isilon.xml
 A datacollection/vmware-cim.xml
 A datacollection/vmware3.xml
 A datacollection/vmware4.xml
 A datacollection/vmware5.xml

Drools

 A drools-engine.d/ncs/dependencyLoadingRules.drl
 A drools-engine.d/ncs/dependencyRules-context.xml
 A drools-engine.d/ncs/drools-engine.xml
 A drools-engine.d/ncs/eventMappingRules.drl
 A drools-engine.d/ncs/impactPropagationRules.drl
 A drools-ticketer.properties

Events

 A events/Allot.events.xml
 A events/BladeNetwork.events.xml
 A events/Pingtel.events.xml

Examples

 A examples/drools-ticketer-rules.drl
 A examples/jvm-datacollection/collectd-configuration.xml
 A examples/jvm-datacollection/jmx-datacollection-config.xml
 A examples/jvm-datacollection/jmx-datacollection/ActiveMQ/5.6/ActiveMQBasic0.xml
 A examples/jvm-datacollection/jmx-datacollection/Cassandra/1.1.2/CassandraBasic0.xml
 A examples/jvm-datacollection/jmx-datacollection/JBoss/4/JBossBasic0.xml
 A examples/jvm-datacollection/jmx-datacollection/Jvm/1.6/JvmBasic0.xml
 A examples/jvm-datacollection/jmx-datacollection/Jvm/1.6/JvmLegacy.xml
 A examples/jvm-datacollection/jmx-datacollection/OpenNMS/1.10/OpenNMSBasic0.xml
 A examples/jvm-datacollection/jmx-datacollection/OpenNMS/1.10/OpenNMSLegacy.xml
 A examples/jvm-datacollection/snmp-graph.properties.d/.placeholder
 A examples/jvm-datacollection/snmp-graph.properties.d/ActiveMQBasic0.properties
 A examples/jvm-datacollection/snmp-graph.properties.d/CassandraBasic0.properties
 A examples/jvm-datacollection/snmp-graph.properties.d/JvmBasic.properties
 A examples/jvm-datacollection/snmp-graph.properties.d/JvmLegacy.properties.legacy
 A examples/jvm-datacollection/snmp-graph.properties.d/OpenNMSBasic.properties
 A examples/linkd-configuration.xml

Ticket System

 A remedy.properties

Splitted graph definition

 A snmp-graph.properties.d/acmepacket-graph.properties
 A snmp-graph.properties.d/adonis-graph.properties
 A snmp-graph.properties.d/adsl-graph.properties
 A snmp-graph.properties.d/airport-graph.properties
 A snmp-graph.properties.d/aix-graph.properties
 A snmp-graph.properties.d/alvarion-graph.properties
 A snmp-graph.properties.d/apc-graph.properties
 A snmp-graph.properties.d/ascend-graph.properties
 A snmp-graph.properties.d/asterisk-graph.properties
 A snmp-graph.properties.d/bgp-ietf-graph.properties
 A snmp-graph.properties.d/bluecoat-sgproxy-graph.properties
 A snmp-graph.properties.d/brocade-graph.properties
 A snmp-graph.properties.d/ca-empire-graph.properties
 A snmp-graph.properties.d/checkpoint-graph.properties
 A snmp-graph.properties.d/cisco-graph.properties
 A snmp-graph.properties.d/colubris-graph.properties
 A snmp-graph.properties.d/cyclades-graph.properties
 A snmp-graph.properties.d/dell-openmanage-graph.properties
 A snmp-graph.properties.d/dell-rac-graph.properties
 A snmp-graph.properties.d/dns-graph.properties
 A snmp-graph.properties.d/ejn-graph.properties
 A snmp-graph.properties.d/equallogic-graph.properties
 A snmp-graph.properties.d/ericsson-graph.properties
 A snmp-graph.properties.d/extreme-networks-graph.properties
 A snmp-graph.properties.d/f5-graph.properties
 A snmp-graph.properties.d/force10-graph.properties
 A snmp-graph.properties.d/fortinet-graph.properties
 A snmp-graph.properties.d/foundry-graph.properties
 A snmp-graph.properties.d/framerelay-graph.properties
 A snmp-graph.properties.d/host-resources-graph.properties
 A snmp-graph.properties.d/hp-graph.properties
 A snmp-graph.properties.d/hpux-graph.properties
 A snmp-graph.properties.d/hwg-graph.properties
 A snmp-graph.properties.d/ipunity-graph.properties
 A snmp-graph.properties.d/jboss-graph.properties
 A snmp-graph.properties.d/juniper-graph.properties
 A snmp-graph.properties.d/jvm-graph.properties
 A snmp-graph.properties.d/liebert-graph.properties
 A snmp-graph.properties.d/lmsensors-graph.properties
 A snmp-graph.properties.d/mailmarshal-graph.properties
 A snmp-graph.properties.d/mcast-graph.properties
 A snmp-graph.properties.d/mge-graph.properties
 A snmp-graph.properties.d/mib2-graph.properties
 A snmp-graph.properties.d/microsoft-exchange-graph.properties
 A snmp-graph.properties.d/microsoft-graph.properties
 A snmp-graph.properties.d/microsoft-http-graph.properties
 A snmp-graph.properties.d/microsoft-iis-graph.properties
 A snmp-graph.properties.d/microsoft-lcs-graph.properties
 A snmp-graph.properties.d/microsoft-sql-graph.properties
 A snmp-graph.properties.d/microsoft-windows-graph.properties
 A snmp-graph.properties.d/microsoft-wmi-graph.properties
 A snmp-graph.properties.d/mikrotik-graph.properties
 A snmp-graph.properties.d/mysql-graph.properties
 A snmp-graph.properties.d/netapp-graph.properties
 A snmp-graph.properties.d/netbotz-graph.properties
 A snmp-graph.properties.d/netenforcer-graph.properties
 A snmp-graph.properties.d/netscaler-graph.properties
 A snmp-graph.properties.d/netsnmp-graph.properties
 A snmp-graph.properties.d/nortel-graph.properties
 A snmp-graph.properties.d/novell-graph.properties
 A snmp-graph.properties.d/riverbed-steelhead-graph.properties
 A snmp-graph.properties.d/servertech-graph.properties
 A snmp-graph.properties.d/snmp-informant-graph.properties
 A snmp-graph.properties.d/sofaware-embeddedngx-graph.properties
 A snmp-graph.properties.d/sun-graph.properties
 A snmp-graph.properties.d/trango-graph.properties
 A snmp-graph.properties.d/vmware-cim-graph-simple.properties
 A snmp-graph.properties.d/vmware3-graph-simple.properties
 A snmp-graph.properties.d/vmware4-graph-simple.properties
 A snmp-graph.properties.d/vmware5-graph-simple.properties
 A snmp-graph.properties.d/xmp-graph.properties
 A snmp-graph.properties.d/xups-graph.properties
 A snmp-graph.properties.d/zeus-graph.properties

VMware integration

 A vmware-cim-datacollection-config.xml
 A vmware-config.xml
 A vmware-datacollection-config.xml

Modified files - To be merged

Database related stuff

 M collectd-configuration.xml
 M create.sql
 M database-schema.xml
 M opennms-datasources.xml
 M setIfServiceKeysOnInsertTrigger.sql
 M setIfServiceKeysOnUpdateTrigger.sql
 M setIpInterfaceKeysOnInsertTrigger.sql
 M setIpInterfaceKeysOnUpdateTrigger.sql
 M setSnmpInterfaceKeysOnInsertTrigger.sql
 M setSnmpInterfaceKeysOnUpdateTrigger.sql

Datacollection config

 M collectd-configuration.xml
 M datacollection-config.xml
 M datacollection/cisco.xml
 M datacollection/f5.xml
 M datacollection/mib2.xml
 M datacollection/netsnmp.xml

Event configuration

  • Schema name space added
  • alarm data with reduction key added

Events rework

Bigger changes
events/Allot.NetXplorer.events.xml
events/Allot.SM.events.xml
events/Allot.events.xml
events/DellArrayManager.events.xml
events/DellRacHost.events.xml
events/DellStorageManagement.events.xml
events/Pingtel.events.xml
events/Syslogd.events.xml
events/ncs-component.events.xml
 M eventconf.xml
 M events/3Com.events.xml
 M events/ADIC-v2.events.xml
 M events/AIX.events.xml
 M events/AKCP.events.xml
 M events/APC.Best.events.xml
 M events/APC.Exide.events.xml
 M events/APC.events.xml
 M events/ATMForum.events.xml
 M events/AdaptecRaid.events.xml
 M events/Adtran.Atlas.events.xml
 M events/Adtran.events.xml
 M events/Aedilis.events.xml
 M events/AirDefense.events.xml
 M events/AlcatelLucent.OmniSwitch.events.xml
 M events/AlcatelLucent.SMSBrick.events.xml
 M events/Allot.NetXplorer.events.xml
 M events/Allot.SM.events.xml
 M events/Alteon.events.xml
 M events/Altiga.events.xml
 M events/ApacheHTTPD.syslog.events.xml
 M events/Aruba.AP.events.xml
 M events/Aruba.Switch.events.xml
 M events/Aruba.events.xml
 M events/Ascend.events.xml
 M events/Audiocodes.events.xml
 M events/Avocent.ACS.events.xml
 M events/Avocent.ACS5000.events.xml
 M events/Avocent.AMX5000.events.xml
 M events/Avocent.AMX5010.events.xml
 M events/Avocent.AMX5020.events.xml
 M events/Avocent.AMX5030.events.xml
 M events/Avocent.CCM.events.xml
 M events/Avocent.DSR.events.xml
 M events/Avocent.DSR1021.events.xml
 M events/Avocent.DSR2010.events.xml
 M events/Avocent.Mergepoint.events.xml
 M events/Avocent.PMTrap.events.xml
 M events/BEA.events.xml
 M events/BGP4.events.xml
 M events/BackupExec.events.xml
 M events/BlackBerryServer-SMIv2.events.xml
 M events/BlackBerryServer.events.xml
 M events/BlueCoat.events.xml
 M events/Bluecat.events.xml
 M events/Brocade.events.xml
 M events/CA.ArcServe.events.xml
 M events/CPQHPIM.events.xml
 M events/CRITAPP.events.xml
 M events/Cisco.5300dchan.events.xml
 M events/Cisco.CIDS.events.xml
 M events/Cisco.SCE.events.xml
 M events/Cisco.airespace.xml
 M events/Cisco.events.xml
 M events/Cisco.mcast.events.xml
 M events/Cisco2.events.xml
 M events/Clarent.events.xml
 M events/Clarinet.events.xml
 M events/Colubris.events.xml
 M events/Compuware.events.xml
 M events/ComtechEFData.events.xml
 M events/Concord.events.xml
 M events/Covergence.events.xml
 M events/Cricket.events.xml
 M events/Crossbeam.events.xml
 M events/DISMAN-PING.events.xml
 M events/DISMAN.events.xml
 M events/DMTF.events.xml
 M events/DPS.events.xml
 M events/DS1.events.xml
 M events/Dell-DRAC2.events.xml
 M events/Dell.events.xml
 M events/DellArrayManager.events.xml
 M events/DellOpenManage.events.xml
 M events/DellRacHost.events.xml
 M events/DellStorageManagement.events.xml
 M events/EMC-Celerra.events.xml
 M events/EMC-Clariion.events.xml
 M events/EMC.events.xml
 M events/Extreme.events.xml
 M events/F5.events.xml
 M events/Fore.events.xml
 M events/Fortinet.events.xml
 M events/FujitsuSiemens.events.xml
 M events/GGSN.events.xml
 M events/Groupwise.events.xml
 M events/HP.events.xml
 M events/Hyperic.events.xml
 M events/IBM-UMS.events.xml
 M events/IBM.events.xml
 M events/IBMRSA2.events.xml
 M events/IEEE802dot11.events.xml
 M events/IPUnity-SES-MIB.events.xml
 M events/IPV6.events.xml
 M events/ISS.events.xml
 M events/Intel.events.xml
 M events/InteractiveIntelligence.events.xml
 M events/IronPort.events.xml
 M events/Juniper.events.xml
 M events/Juniper.mcast.events.xml
 M events/Junos.events.xml
 M events/JunosV1.events.xml
 M events/K5Systems.events.xml
 M events/LLDP.events.xml
 M events/Liebert.600SM.events.xml
 M events/Liebert.events.xml
 M events/Linksys.events.xml
 M events/LinuxKernel.syslog.events.xml
 M events/Lucent.events.xml
 M events/MGE-UPS.events.xml
 M events/MPLS.events.xml
 M events/MRV.events.xml
 M events/MSDP.events.xml
 M events/MadgeNetworks.events.xml
 M events/McAfee.events.xml
 M events/Microsoft.events.xml
 M events/Multicast.standard.events.xml
 M events/Mylex.events.xml
 M events/NORTEL.Contivity.events.xml
 M events/NetApp.events.xml
 M events/NetSNMP.events.xml
 M events/Netbotz.events.xml
 M events/Netgear.events.xml
 M events/Netscalar.events.xml
 M events/Netscreen.events.xml
 M events/Nokia.events.xml
 M events/Novell.events.xml
 M events/OSPF.events.xml
 M events/OpenNMSMIB.events.xml
 M events/OpenSSH.syslog.events.xml
 M events/Oracle.events.xml
 M events/Overture.events.xml
 M events/PCube.events.xml
 M events/POSIX.syslog.events.xml
 M events/Packeteer.events.xml
 M events/Patrol.events.xml
 M events/Pixelmetrix.events.xml
 M events/Polycom.events.xml
 M events/Powerware.events.xml
 M events/Primecluster.events.xml
 M events/Quintum.events.xml
 M events/RADLAN-MIB.events.xml
 M events/RAPID-CITY.events.xml
 M events/RFC1382.events.xml
 M events/RFC1628.events.xml
 M events/RMON.events.xml
 M events/Rancid.events.xml
 M events/Redline.events.xml
 M events/Rightfax.events.xml
 M events/RiverbedSteelhead.events.xml
 M events/SNA-NAU.events.xml
 M events/SNMP-REPEATER.events.xml
 M events/Sensaphone.events.xml
 M events/Sentry.events.xml
 M events/Snort.events.xml
 M events/SonicWall.events.xml
 M events/Sonus.events.xml
 M events/Standard.events.xml
 M events/Sudo.syslog.events.xml
 M events/SwissQual.events.xml
 M events/Symbol.events.xml
 M events/Syslogd.events.xml
 M events/SystemEdge.events.xml
 M events/TUT.events.xml
 M events/TransPath.events.xml
 M events/Translator.default.events.xml
 M events/TrippLite.events.xml
 M events/UPS-MIB.events.xml
 M events/Uptime.events.xml
 M events/VMWare.env.events.xml
 M events/VMWare.events.xml
 M events/VMWare.obsolete.events.xml
 M events/VMWare.vc.events.xml
 M events/VMWare.vminfo.events.xml
 M events/Veraz.events.xml
 M events/Waverider.3000.events.xml
 M events/Websense.events.xml
 M events/Xerox-V2.events.xml
 M events/Xerox.events.xml
 M events/asset-management.events.xml
 M events/fcmgmt.events.xml
 M events/ncs-component.events.xml

Examples

 M examples/correlation-engine.xml
 M examples/devices/motorola_cpei_150_wimax_gateway/snmp-graph.properties
 M examples/event-proxy/Proxy.events.xml
 M examples/nodeParentRules-context.xml
 M examples/notificationCommands.xml
 

OpenNMS general

 M opennms.properties
 M service-configuration.xml
 M thresholds.xml
 M vacuumd-configuration.xml
 M poller-configuration.xml
 M provisiond-configuration.xml
 M notifications.xml
 M notificationCommands.xml
 M log4j.properties
 M linkd-configuration.xml

Jasper Reports

 M report-templates/AssetManagementMaintExpired.jasper
 M report-templates/AssetManagementMaintStrategy.jasper
 M report-templates/AssetManagementMaintStrategy.jrxml
 M report-templates/AvailabilitySummary.jasper
 M report-templates/AvailabilitySummary.jrxml
 M report-templates/AveragePeakTrafficRates.jasper
 M report-templates/DiskUsageForCTX.jasper
 M report-templates/Early-Morning-Report.jasper
 M report-templates/EventAnalysis.jasper
 M report-templates/InterfaceAvailabilityReport.jasper
 M report-templates/InterfaceAvailabilityReport.jrxml
 M report-templates/NodeAvailabilityReport.jasper
 M report-templates/NodeAvailabilityReport.jrxml
 M report-templates/ResponseTime.jasper
 M report-templates/ResponseTimeCharts.jasper
 M report-templates/ResponseTimeSummary.jasper
 M report-templates/SerialInterfaceUtilizationSummary.jasper
 M report-templates/SnmpInterfaceOperAvailabilityReport.jasper
 M report-templates/SnmpInterfaceOperAvailabilityReport.jrxml
 M report-templates/TotalBytesTransferredByInterface.jasper
 M report-templates/parameter-test.jasper
 M report-templates/sample-report.jasper
 M report-templates/subreports/95thPercentileTrafficRate_subreport.jasper
 M report-templates/subreports/AvailabilitySummaryChart_subreport.jasper
 M report-templates/subreports/AvailabilitySummaryChart_subreport.jrxml
 M report-templates/subreports/DiskUsageForCTXServers_subreport1.jasper
 M report-templates/subreports/InterfaceAvailabilityReport_subreport1.jasper
 M report-templates/subreports/InterfaceAvailabilityReport_subreport1.jrxml
 M report-templates/subreports/NodeId_to_NodeLabel_subreport.jasper
 M report-templates/subreports/PeakTraffic_subreport.jasper
 M report-templates/subreports/ResponseTimeAvg_subreport.jasper
 M report-templates/subreports/ResponseTimeSummary_Availability_Offenders_subreport.jasper
 M report-templates/subreports/ResponseTimeSummary_Availability_Offenders_subreport.jrxml
 M report-templates/subreports/ResponseTimeSummary_Availability_subreport.jasper
 M report-templates/subreports/ResponseTimeSummary_Availability_subreport.jrxml
 M report-templates/subreports/ResponseTimeSummary_Response_Offenders_subreport.jasper
 M report-templates/subreports/ResponseTimeSummary_subreport.jasper
 M report-templates/subreports/ResponseTime_subreport1.jasper
 M report-templates/subreports/Top25PercentDown_subreport.jasper
 M report-templates/subreports/Top25PercentDown_subreport.jrxml
 M report-templates/subreports/TotalBytesTransferredByInterface_subreport1.jasper
 M report-templates/trivial-report.jasper

RRD/JRB Graphing

 M response-graph.properties
 M snmp-graph.properties
 M snmp-graph.properties.d/akcp-graph.properties
 M snmp-graph.properties.d/pfsense-graph.properties

Upgrade hints

Warning.png Configuration merge

Use a virtual machine in a test environment to work on your configuration merges. So you can easily test with starting and stopping the system without stressing your people in production. You can use the backup from your production environment and turn off active parts from monitoring e.g. notifications and commenting in collectd and pollerd in service-configuration.xml.

Merging the configuration of OpenNMS is often a bigger issue. Helping to migrate your configuration it could be helpful to gitify your OpenNMS configuration directory. If you are not familiar with git you can find a good starting point Git to manage config files. One possible workflow can look like this:

  1. git init in /etc/opennms and make an initial commit with your current configuration
  2. git checkout -b production (Creates you a branch with your working configuration)
  3. git checkout -b upgrade-1.12 (Creates you a migration branch)
  4. Update opennms
  5. investigate changes and merge configs
  6. Commit the changes stepwise
  7. git checkout production
  8. git merge upgrade-1.12 and apply your merged configuration to "production" branch