From OpenNMS
Installing OpenNMS
Current releases
- Released versions
- Stable: 1.10.10
- Download: source, binaries
- Release Notes: HTML
- Installation Instructions: The OpenNMS Tutorial
- Development: 1.11.90
- Download: source, binaries
- Release Notes: HTML
- Installation Instructions: The OpenNMS Tutorial
- Stable: 1.10.10
- Nightly snapshots
- Future Stable: 1.10.11-SNAPSHOT
- Download: ZIP and source, YUM, Debian
- Installation Instructions: The OpenNMS Tutorial
- Development (trunk): 1.11.91-SNAPSHOT
- Download: ZIP and source, YUM, Debian
- Installation Instructions: The OpenNMS Tutorial
- Future Stable: 1.10.11-SNAPSHOT
The OpenNMS Book
There is mounting interest in an English-language book. As of June 2010, there is an effort underway to organize this effort.
The rumours about a book written in German are true. As of 04 June 2010, OpenNMS: Netzwerkmanagement mit freier Software is available for purchase from Amazon.DE.
How-To get started with OpenNMS
Before starting installation take a look at the Tuning Guide
to avoid basic performance bottlenecks and starting all over...
There is also a set of configuration How-To guides, intended for the new user to OpenNMS.
- Part 1: How-To Install OpenNMS
- Part 2: How-To Configure OpenNMS Discovery
- Part 3: How-To Configure Service Level Polling
- Part 4: How-To Configure SNMP Data Collection
- Part 5: How-To Configure Events
Database installation
Database backup and restore
Frequently Asked Questions
There are lot's of questions even after reading the howtos ... some of them might get answered reading the FAQs
OpenNMS Special Configurations
- Running OpenNMS with a Dedicated Tomcat Server
- Making OpenNMS highly available
- Running a secure OpenNMS Installation, maybe here are some hints
The guts of OpenNMS
There are quite a few daemons that make the heart of OpenNMS.
Configuring OpenNMS and things around it
OpenNMS
Basics
- Daemons
- Ports used by OpenNMS
- OpenNMS database schema
- Configuration File Index
- Managing Configuration Changes with Git
Jetty
Tomcat
Users
- Configuring Users
- Configure roles of users, duty shedules ...
- Configuring OpenNMS 1.2.x to use LDAP Authentication
- Configuring OpenNMS 1.3.2 to use LDAP Authentication
- Configuring OpenNMS 1.7.x to use LDAP Authentication with spring
Miscellaneous
Discovery / Adding Nodes
- Why auto-discovery? Let's use the Importer Service
- Automatic discovery
- Define new SNMP sources to be discovered
- Capsd - discovery of capabilities / services
- Force capsd to rescan (all) nodes
- Linkd layer 2 iso/osi model network topology discovery
- Node discovery using syslog
- Node discovery using traps
- Adding "static" Nodes with Provisioner
- Provisioning ("adding nodes")in 1.7 and later [PDF]
- SNMP Asset Provisioning Adapter
Polling / Monitoring
- Polling Configuration HowTo
- List of built in pollers
- Create a custom poll, a service that should be monitored
- Passive Status Keeping for things that cannot be polled
- HTTP Monitor
- Page Sequence Monitor (PSM) Setup
- Process Monitoring and Collection
- Distributed Monitor
- Remote monitoring / Remote poller
- Monitoring Microsoft standard services
Events and Alarms
- Events
- Event Configuration How-To
- What are the different severities that OpenNMS-events have?
- Event substitutions - What can one do with the incomming events
- Event Translator
- Adding new types of events - i.e. yet unknown SNMP OIDs
- Calling scripts triggered by events
- Integrate RequestTracker for events
- Forward events to a server via XML-RPC
- Automatically do something with events from the database
- Alarms - The real important events
- Scheduled Outages
Other sources of events but snmp traps
- Using eMail to create events
- Use syslog messages as a source for events
- Integrate NESSUS as an event source
- Integrate SNORT as an event source
- Integrating OpenNMS and EMC/SMARTS InCharge by forwarding events
- Configure JMX
- Create traps from windows event log entries
Notifications
- Configuring notifications
- Notification Enhancement article - includes a detailed description of the switches used in the notificationCommands.xml
- Defining different ways of notification
- Using jabber2 as notification target
- SMS Notifications via a GSM modem
SNMP
Misc
- Getting OpenNMS to use SNMPv3
- Converting SNMP MIBs using mib2opennms
- MIB Study - A more general view at SNMP MIBs and types of things found there
- Create custom reports with gathered SNMP data
- SNMP Tables with arbitrary indexes
- Collect CPU data with NetSNMP, lots of options
- Monitoring disk space with NetSNMP
- SNMP-Informant HowTo, analyze your MIBs and make them available to OpenNMS
3rd party devices
- Integrating Cisco class based QoS
- AKCP Sensors HowTo
- Colubris devices HowTo, incl. Reports
- Redline TX data collection and reporting
- Dell OpenManage Storage (a.k.a. Dell PERC RAID controller) monitoring
- How to use Dell OpenManage/DRAC with OpenNMS
- How to monitor Novell Netware disk resources
- Configure OpenNMS to monitor NetBotz V2 devices
- How to monitor lm_Sensors
- Alvarion Walkair 3k 10.5GHz PtM Monitoring
- How to monitor HAProxy
Data Collection
SNMP Data Collection
SNMP Data collection is available in all versions of OpenNMS, but only 1.3.2 and above have the ability to collect data on arbitrary indexes.
- Data Collection Configuration How-To
- Debug Data Collection with Instrumentation Log
- An SNMP datacollection how-to using SNMP Informant as an example
- A fairly involved discussion on collecting CPU statistics using OpenNMS and Net-SNMP
- Collecting SNMP data from tables with arbitrary indexes
- An example of arbitrary index collection to collect disk IO statistics
- JVM Monitoring using SNMP
- Monitoring the Java Virtual Machine with SNMP (external link).
- Additional Data Storage and Display Options for Interfaces
- SNMP Monitor - using SNMP to monitor services
- Collecting Data from Cisco Netflow using SNMP
HTTP Data Collection
HTTP data collection is available in OpenNMS 1.3.2.
- Using the HTTP collector
- An example of using the HTTP collector with the apache web server
- An example of using the HTTP collector with the nginx web server
JMX Data Collection
JMX data collection is available in OpenNMS 1.3.x.
- Configuring JMX data collection using Tomcat 5.5 as an example
- Configuring JMX data collection using Tomcat 6 as an example
- Configuring the JMX collector to collect from a JSR160 Agent (a more generic guide on the JMX collector).
- JMX Based JVM Monitoring How-To: Configure the target JVM (Sun) to be monitored & OpenNMS to monitor it via JMX.
JDBC Data Collection
JDBC Data Collection is a feature that has to be compiled separataly as of 1.8.3
Nagios / NSClient / NSClient++ Data Collection
- Data Collection Configuration How-To #NSClient
- Data collection from Windows Performance Counters with NSClient++
- Using and configuring NSClient (Nagios)
View / Export / Debug / Convert collected data
- View / Debug collected data
- Performance Data TCP Export
- Export collected data to xml file
- JRobin Converter
Thresholds
Reporting
Jrobin graphs
Most data collected and written to JRB (previously RRD) files can be used to create jrobin graphs.
- KSC Reports
- Prefabricated Standard Graphs
- SNMP Reports How-To (Customized Graphs)
- JRobin Spike Hunter
- Jasper Reports using RRD as Datasource
- Graph Gallery: more samples
- How to present data sources from n Nodes
Jasper reports
You can generate paper-like reports by using the OpenNMS/JasperReports integration. These reports can then be sent by email or generated on-demand using the web interface.
- Jasper Report Integration Specification
- Availibility reports
- the statistic daemon
- Extended Reporting
- Database Reports
- Tutorial of how to create a jasper report from A to Z (you probably shouldn't ever need to do this. But this tutorial contains interesting information anyway).
Charts
Asset Tracking System
- How to use the Asset System
- How to add attributes
- How to import/export
Maps in OpenNMS
- A topology map in OpenNMS
- Automatic Map Creation
- Save your automatically generated maps
- Link Monitoring
Configure the opennms GUI
- Configure availability categories table of the main window
- Different Places to define categories used in the GUI
- Configure Dashboard / Surveillance view
- Add sound to the webUI
- Change page refresh
Access Restrictions / ACL's
- User Restriction Filters
- ACL Access Lists still missing in docu...
Integrate OpenNMS with other management software
- HP OpenView Forwarding traps to OpenNMS
- Integrating OpenNMS and EMC/SMARTS InCharge
- Integrating OpenNMS with IBM/Micromuse Netcool OMNIbus and Webtop
- Integrating OpenNMS with System Center Operations Manager 2007 R2
- Rancid Device Configuration Management
Trouble Ticket Integration
- Best Practice Solutions Request Tracker (RT) Trouble Ticket Plugin
- Open Ticket Request System (OTRS) Trouble Ticket Integration
- Hyperic HQ Integration
- Atlassian JIRA Trouble Ticket Plugin
- Concursive ConcourseSuite (formerly Centric CRM)
- Intuit QuickBase Trouble Ticket Plugin
Hacks and other improvements
- Performance tuning
- Storing Java GC statistics to an RRD file
- ForceRescan
- How to write scripts using OpenNMS with groovy
- Repeated Notifications Using Automations
- Flap detection
Upgrading / Configuration Management
Literature/Useful things to read
Success stories ...
Special needs, new technology
- IPv6 speaking nodes (what happens to my IPv6 speaking nodes and services?)
- Load-Balancing/Clustering (getting more nodes into ONMS, distributing the monitoring)
- Network topology discovery (talking: RIP, OSPF, 802.1q, 802.3ad, 802.1ab - LLDP)
- Poller configuration with upper and lower bound (consider a service watching for out of range values such as voltage)
- Severe Weather Alerts with opennms (How to get opennms to report severe weather)






