Copyright © 2004-2009 The OpenNMS Group, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts and with no Back-Cover Texts. A copy of the license is available at http://www.gnu.org/copyleft/fdl.html
Table of Contents
OpenNMS is the creation of numerous people and organizations, operating under the umbrella of the OpenNMS project. The original code base was developed and published under the GPL by the Oculan Corporation until 2002, when the project administration was passed on to Tarus Balog.
The current corporate sponsor of OpenNMS is The OpenNMS Group, which also owns the OpenNMS trademark.
OpenNMS is a derivative work, containing both original code, included code and modified code that was published under the GNU General Public License. Please see the source for detailed copyright notices, but some notable copyright owners are listed below:
Copyright © 2002-2009 The OpenNMS Group, Inc.
Original code base for OpenNMS version 1.0.0 Copyright © 1999-2001 Oculan Corporation.
Mapping code Copyright © 2003 Networked Knowledge Systems, Inc.
ScriptD code Copyright © 2003 Tavve Software Company.
Please send any omissions or corrections to this document to Tarus Balog.
Table of Contents
Release 1.9.4 is the latest in a series of development releases of OpenNMS. This represents what will eventually become OpenNMS 1.10.0 when it is declared feature-complete and stable.
The codename for 1.9.4 is Guzheng
Release 1.9.3 is the latest in a series of development releases of OpenNMS. This represents what will eventually become OpenNMS 1.10.0 when it is declared feature-complete and stable.
The codename for 1.9.3 is Recorder
Release 1.9.2 is the latest in a series of development releases of OpenNMS. This represents what will eventually become OpenNMS 1.10.0 when it is declared feature-complete and stable.
The codename for 1.9.2 is Psaltery
Release 1.9.1 is the latest in a series of development releases of OpenNMS. This represents what will eventually become OpenNMS 1.10.0 when it is declared feature-complete and stable.
Since 1.9.0, a few new features were added.
The codename for 1.9.1 is Oboe
Release 1.9.0 is the latest in a series of development releases of OpenNMS. This represents what will eventually become OpenNMS 1.10.0 when it is declared feature-complete and stable.
Since 1.8, a few new features were added.
The codename for 1.9.0 is Timple
Release 1.8.6 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.5, a number of bug fixes and enhancements were added, including SNMP and Linkd fixes, ACL fixes, and more.
The codename for 1.8.6 is King Rail
Release 1.8.5 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.4, a number of bug fixes and enhancements were added, including a ton of Linkd fixes, a bunch of KSC report cleanups, and a tool for gathering useful debugging info when reporting issues.
The codename for 1.8.5 is Plover
Release 1.8.4 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.3, a number of bug fixes were added, including a fix for filehandle leaks in the WMI monitor, and a cross-site-scripting vulnerability in the web UI.
The codename for 1.8.4 is Grey Goose
Release 1.8.3 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.2, a few bug fixes were added, including a fix for an issue where snmp-graph.properties could cause OpenNMS not to start.
The codename for 1.8.3 is Least Tern
Release 1.8.2 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.1, a number of bug fixes and features were added.
The codename for 1.8.2 is Spotted Sandpiper
Release 1.8.1 is the latest in the 1.8 series of production-ready OpenNMS releases.
Since 1.8.0, a ton of bug fixes went in.
The codename for 1.8.1 is Lady Gould
Release 1.8.0 is the first in the 1.8 series of production-ready OpenNMS releases.
Since 1.7.92, a few more bug fixes went in.
The codename for 1.8.0 is Cardinal
Table of Contents
icmp and http thresholds not working properly (Issue NMS-1657)
Liquibase: ERROR: there is no unique constraint matching given keys for referenced table "datalinkinterface" (Issue NMS-3465)
webapps won't deploy with Tomcat in 1.7.7 and 1.7.8-SNAPSHOT (Issue NMS-3469)
Can't proceed in Reports Database Run (Issue NMS-3717)
Invoking rest method with orderBy triggers sql error (Issue NMS-3756)
Case sensitive inconsistency between capsd and poller for HostResourceSwRunMonitor (Issue NMS-3882)
provision group does not validate ip-addr field on input (Issue NMS-4084)
JRFontNotFoundException for Early-Morning-Report (Issue NMS-4102)
On IE8/Win7 the date in the page banner is shown twice (Issue NMS-4146)
"View Node Link Detailed Info" problem (Issue NMS-4243)
Provisioning problem due to ipv6 address formatting (Issue NMS-4252)
Date offsets incorrectly applied when batch reports (Issue NMS-4253)
Upgrade from jetty 6.1.24 to 6.1.26 breaks AJP13-connections from apache 2.2.x (Issue NMS-4275)
OpenJDK fails privatevoidcheckJvmName() check (Issue NMS-4277)
Missing fonts when running newly commited reporting stuff in 1.8.7 (Issue NMS-4286)
NPE when trying to generate reports from JRB datasources (Issue NMS-4287)
Build failure - NtpDetector tests fail (Issue NMS-4292)
Remove option C from SNMP Primary pick-list in provisioning groups editor (Issue NMS-4293)
Node-Availability-Report failing - possibly due to a parameter that should be marked notForPrompting (Issue NMS-4294)
JRobin VDEFs sometimes do not work (Issue NMS-4295)
Provisiond discovers services on capsd provisioned nodes (Issue NMS-4297)
Default categories for CIORPRTS (Issue NMS-4299)
linkd UndeclaredThrowableException (Issue NMS-4303)
"View Node Ip Route Info" link causes exception (Issue NMS-4305)
Topo map error popup: Load Label Map failed (Issue NMS-4306)
Provisioning Groups UI throws exception when trying to sync unmodified group (Issue NMS-4308)
duplicate jars in packages (Issue NMS-4310)
Asset adapter does not store Hex-STRINGs (Issue NMS-4312)
Dashboard loading image tag missing (Issue NMS-4314)
Serial Interface Utilization Report (Issue NMS-4315)
[Build] Some changes needed to get a clean build in Eclipse (Issue NMS-4320)
PSQLException - Configure SNMP Data Collection per Interface (Issue NMS-4321)
Fonts Very Large on KSC Reports and Admin Surveillance Categories (Issue NMS-4322)
Interface Page Broken in 1.8 Testing (Issue NMS-4323)
Opennms cannot start up without Internet access (Issue NMS-4341)
Typo in MemcachedMonitor.java (Issue NMS-4347)
Make compile.pl / assemble.pl actually exit with maven exit code (Issue NMS-4349)
generic values wrong for certain OIDs in Cisco2.events.xml (Issue NMS-4351)
Package building fails on Ubuntu due to default shell usage (Issue NMS-4357)
Exception raised when trying to view ip route info (Issue NMS-4362)
Change the logmsg and description fields for events and alarms to text object. (Issue NMS-4369)
OpenNMS will not start if unable to connect to the database as "postgres" (admin) user (Issue NMS-4378)
Provisioner always punts on deleteService events when discovery not enabled (Issue NMS-4379)
Make sure tests pass on bamboo (Issue NMS-4384)
Upgrade JasperReports 3.6.0 to 3.7.4 (Issue NMS-4103)
Sort saved database Reports and display more than 10 of them (Issue NMS-4201)
dispatcher-servlet.xml should be listed as a 'config' file for debian package install (Issue NMS-4296)
reportd-configuration.xml, update quartz URL (Issue NMS-4318)
include script output in event reason text for GpPoller notifications (Issue NMS-4325)
Customize Subject on Emailed Batch Reports (Issue NMS-4331)
Catch NullPointer Exception when running BSFScripts (Issue NMS-4332)
Make Node available to the Beanshell (Issue NMS-4358)
Add a build script to clean everything (top-level and full assembly) (Issue NMS-4386)
make it easier to open support tickets from the web UI (Issue NMS-4307)
Web users can bypass ACLs by editing params of element/node.jsp URLs (Issue NMS-3184)
Going to edit KSC reports generates an uncaught exception (Issue NMS-3414)
Yet another uncaught exception, KSC reports (Issue NMS-3455)
Home / Admin / Provisioning Groups page generating bad HTML when a provisioning group has an apostrophe in the name (Issue NMS-3601)
provisiond logging to output.log (Issue NMS-4023)
DNS outage identified on interface X with reason code: IOException while polling address (Issue NMS-4071)
Bug in netapp.fsfile report (Issue NMS-4171)
deprecated -c installer option does not produce a warning or error (Issue NMS-4174)
Net-SNMP agent 5.5 always misreports sysObjectID as ".1.3" or ".0.1" (Issue NMS-4192)
Notifications fail when Notification name is longer than 63 chars (Issue NMS-4194)
NPE in "View Node Link Detailed Info" (Issue NMS-4215)
deleting old notifications is slow (Issue NMS-4217)
SNMP fails while accessing a Dell/Avocent 2161DS KVM Device (Issue NMS-4219)
1.8.5 Solaris package fails to install (Issue NMS-4227)
ThresholdingVisitor: create: Can't create ThresholdingVisitor for <IP ADDRESS> (Issue NMS-4233)
JMX datacollection aliases longer than 19 characters (Issue NMS-4236)
Two BGP-related SNMP graphs use daily RRAs (Issue NMS-4245)
Acknowledgement Service bails when an ack is sent for an invalid ID (Issue NMS-4248)
TableTracker failing in some instances (Issue NMS-4250)
In-line thresholding should ignore Aliased Resources if they are not enabled (Issue NMS-4255)
Fix lower limit in Net-SNMP CPU graphs (Issue NMS-4257)
Make SNMPv2c the default in web SNMP config dialog (Issue NMS-4263)
build blacklists JDKs other than version 1.5 or 1.6 (Issue NMS-4270)
SNMP Asset Provisioning Adapter: suppress output like No such instance (Issue NMS-4173)
Add a few more Cisco Catalyst sysObjectIDs to default Linkd config (Issue NMS-4191)
Add events for Compuware ServerVantage traps (Issue NMS-4195)
Reportd should create events run or delivery failure (Issue NMS-4213)
fix locking in configuration file access (Issue NMS-4234)
make build system Maven3-compatible (Issue NMS-4235)
Add new options for domain/ifalias resource collection (Issue NMS-4239)
Improve Liebert power-related SNMP data collection and resource graph definitions (Issue NMS-4241)
Create performance resource graphs for MS HTTP stats (Issue NMS-4242)
Version 1.9.2 is identical to 1.9.1, except it contains the changes present in OpenNMS 1.8.5.
SNMP Asset Provisioning Adapter: suppress output like No such instance (Issue NMS-4173)
Add a few more Cisco Catalyst sysObjectIDs to default Linkd config (Issue NMS-4191)
Add events for Compuware ServerVantage traps (Issue NMS-4195)
Reportd should create events run or delivery failure (Issue NMS-4213)
make build system Maven3-compatible (Issue NMS-4235)
Web users can bypass ACLs by editing params of element/node.jsp URLs (Issue NMS-3184)
Home / Admin / Provisioning Groups page generating bad HTML when a provisioning group has an apostrophe in the name (Issue NMS-3601)
Bug in netapp.fsfile report (Issue NMS-4171)
deprecated -c installer option does not produce a warning or error (Issue NMS-4174)
Net-SNMP agent 5.5 always misreports sysObjectID as ".1.3" or ".0.1" (Issue NMS-4192)
Notifications fail when Notification name is longer than 63 chars (Issue NMS-4194)
NPE in "View Node Link Detailed Info" (Issue NMS-4215)
deleting old notifications is slow (Issue NMS-4217)
SNMP fails while accessing a Dell/Avocent 2161DS KVM Device (Issue NMS-4219)
1.8.5 Solaris package fails to install (Issue NMS-4227)
JMX datacollection aliases longer than 19 characters (Issue NMS-4236)
Forms involving adding/removing surveillance categories now redirects back to the referring page when submitted. (Bug #3028)
Data collection and resource graph definitions for AKCP sensorProbes was added. (Bug #4118)
The DNS service monitor now gives useful logging when set to INFO. (Bug #4142)
Events for Concord eHealth Health Report / LiveExceptions traps were added. (Bug #4145)
The Manage/Unmanage Interfaces form now validates IP addresses. (Bug #4146)
A tool for creating a detailed report of OpenNMS and system statistics was created. For details, see the feature specification here. (Bug #4167)
If the JDK has been forced with "runjava -f," the install and opennms scripts now warn, rather than error, if the JDK is invalid at runtime. (Bug #4168)
An example of how to monitor a specific virtual host has been added to the HttpMonitor examples. (Bug #4169)
The remote poller is now capable of reporting correct timestamps even if the host that it is running on is invalid. Note, this <bold>requires</bold> that you update remote pollers to the new version, the protocol between the remote poller and OpenNMS server has changed. (Bug #4172)
Some issues with field validation in the outage editor have been fixed. (Bug #1225)
While customizing an new/existing report from the KSC Reports page, it would lose the prefabricated report selection. (Bug #2230)
While modifying the first graph in a custom report, an exception was thrown. (Bug #2823)
Form submission bugs in the KSC reports, Add Interface, and a number of other places have been resolved. This mostly affects IE and some mobile browsers. (Bugs #1675, #3015, #3606, and #3729)
A number of exceptions have been cleaned up. (Bugs #3319, #3450)
A thread-contention bug that could cause it to take a long time for scheduled outages and potentially other code to lag was fixed. (Bug #3790)
A bug in "Check Notices" for a user was fixed. (Bug #3903)
A large number of outstanding issues with Linkd have been resolved. (Bugs #3989, #4051, #4055, #4133, #4149, and #4165)
The event configuration for the acknowledgement had incorrect formatting. (Bug #4114)
Latency thresholding is working properly again. (Bug #4117)
Modern versions of OpenJDK are properly detected by the install and runtime scripts again. (Bug #4129)
The Net-SNMP diskHighLow specification (for Net-SNMP 5.5+) was broken. (Bug #4131)
A bug in the runPageSequenceMonitor groovy script was resolved. (Bug #4170)
A workaround for Net-SNMP 5.5 on x86_64 was implemented. (Bug #4174)
The ifIndex parm is now provided in events received as traps. (Bug #1145)
The Cisco firewall service module is now detected for data collection. (Bug #3120)
APC upsOnBattery and powerRestored events now have alarm-data annotations so they can be auto-cleared. (Bug #4054)
Notification text now preserves multi-line text formatting. (Bug #4056)
Data collection support for the Cisco C1250 was added. (Bug #4071)
Support for a number of new Cisco devices was added to Linkd. (Bug #4082)
Data collection and graph definitions were added for Force10 stack units. (Bug #4088)
Data collection definitions for Makelsan UPSes were added. (Bug #4090)
A shell script for calling the WMI validation/checker utility has been added. (Bug #4101)
foreignSource and foreignId can now be used when filtering nodes. (Bug #4102)
datacollection-config.xml can now modularly include configuration from multiple files, like eventconf.xml. (Bug #4109)
A typo in the example snmp-config.xml was fixed. (Bug #2909)
Paths are now substituted in files in etc/examples. (Bug #3140)
Colors were off in JFreeChart bar graphs in some instances. (Bug #3976)
Early morning reports could crash when fonts weren't installed. (Bug #4059)
Group names with spaces in them now work as expected. Unless you expected them to fail, in which case, expect the unexpected. (Bug #4095)
Renaming a group no longer creates duplicate groups in the XML. (Bug #4096)
Remote poller map markers are now ordered by severity, so low-severity markers aren't covered up by high-severity markers. (Bug #4105)
The TcpDetector now properly detects and open port even if it doesn't send a banner. (Bug #4107)
A number of WMI issues were fixed, including one that could cause file descriptor leaks. (Bug #4108)
A cross-site scripting vulnerability in the web UI was fixed. (Bug #4110)
It is now possible to schedule an outage for a node or interface directly from their respective UIs. (Bug #1225)
Linkd is now able to walk IpCidrRouteTable and InetCidrRouteTable as well as IpRouteTable for determining node links. (Bug #3773)
You can now configure the number of outages to show on the front page of the web UI. (Bug #3982)
A standalone tool for importing Spectrum traps is available in the opennms-tools directory of the OpenNMS source. (Bug #4025)
A standalone tool for parsing collection logs and providing stats on average collection time is available in the opennms-tools directory of the OpenNMS source. (Bug #4033)
It is now possible to pause and resume all remote pollers in the distributed poller status UI. (Bug #4026)
You can now populate asset data based on information retrieved from SNMP when provisioning a node. (Bug #4028)
New events and configurations for Junos devices were added. (Bug #4029)
Queued now gathers RRD queue statistics by default. (Bug #4030)
The thresholding for low memory now takes cached memory into account on Linux. (Bug #2910)
Editing a notification's name in the GUI now works again. (Bug #3570)
The custom resource performance report link now gives you a custom resource performance report, instead of a standard one. ;) (Bug #3573)
A resource filter with a negative look behind now renders properly in the UI. (Bug #3726)
Browser history buttons now work properly in maps again. (Bug #3734)
A bug in linkd that would prevent many nodes to fail to have proper links was fixed. (Bug #3989)
A regression from 1.6 where the "nodes with outages" box on the front page would show inconsistent results was fixed. (Bug #3981)
A bug was fixed in the code for editing node labels where it would previously cause a database handle leak (and eventually, errors accessing the database) in OpenNMS. (Bug #3991)
If you had a "." in a node label, maps would not populate their name properly. (Bug #3995)
A bug where saving maps could cause duplicates to be created was fixed. (Bug #3997)
A typo in the RANCID property used in opennms.properties was fixed. Please double-check your configuration after upgrading. (Bug #4004)
In some cases, code that handles new nodes could generate an inconsistent NodeGainedService event. (Bug #4022)
The distributed poller status legend needed clarification. (Bug #4027)
Back by popular demand, it is again possible to show the number of events in the event listing. To enable it, edit opennms.properties. (Bug #3675)
The quick search box was moved to be below the current outages box on the front page. (Bug #3849)
Events for Net-SNMP diskTable DISMAN traps were added. (Bug #3850)
Query-by-example now lets you filter by node in the notification list. (Bug #3899)
The remote poller map's Mapquest implementation now supports click and double-click to mimic Mapquest's behaviour. (Bug #3901)
Next and previous links are now at the bottom of event, notification, and outage list pages, as well as the top. (Bugs #3910 and #3932)
You can now use %shorttime% in notifications for a more compact date. (Bug #3917)
A vacuumd automation has been added to automatically clean out old remote poller database entries. (Bug #3923)
Errors at startup relating to sockets (address already in use, etc.) will now appear in the manager.log alongside other startup errors to ease debugging. (Bug #3940)
Fix problems on system with incorrect IPv6 configuration. (Bug #1959)
Fixed incorrect "The database server's error messages are not in English" errors on installation. (Bug #3296)
The "Add Node" UI is now smarter about what it writes to disk. (Bug #3443)
Sorting was fixed on the advanced alarm search results. (Bug #3589)
The opennms-contrib debian package now properly depends on libxml-twig-perl. (Bug #3722)
The Solaris packages play better with system boot now. (Bug #3802)
The Debian and RPM packages are more explicit about what needs to be done on post-installation. (Bug #3848)
The data collection failed event tells you what failed again. (Bug #3869)
A number of null pointer issues that could cause linkd to not create links between nodes were fixed. (Bug #3871)
Spring security settings were fixed so dashboard-only users can properly connect to the dashboard again. (Bug #3900)
Inline thresholding is enabled by default again, as it was late in the 1.6.x series. (Bug #3912)
A number of regex pattern validation bugs in our config handling have been fixed. (Bug #3915)
The notification browser now properly shows only a given user's notifications when a filter has been applied. (Bug #3939)
The jar installer now handles errors a little more gracefully on Windows. (Bug #3953)
Syslogd had a number of line-matching bugs that have been fixed. (Bug #3958)
OpenNMS 1.8.x is the latest stable OpenNMS series. Here is a high-level overview of what's changed since the 1.6.x series.
Many more parts of the OpenNMS data access layer have been updated to be compatible with Hibernate and database abstraction.
The OpenNMS upgrade process now uses LiquiBase for managing schema changes between versions. It is even more strongly recommended than usual that you back up your database before upgrading.
Some daemon architectural changes have happened to support an eventual integration with OSGi (post-1.8).
OpenNMS was updated to use Spring 3.0.
A number of handy annotation-based test framework changes have been made, using JUnit 4.
A new multithreaded, high-performance ping infrastructure was added used by all subsystems that talk ICMP.
A RADIUS authentication provider has been added.
An integration with RANCID has been added. If configured, extra data about node configuration, etc. will be available in the node UI and maps.
A number of interfaces to OpenNMS data have been made available through a RESTful interface, using the Jersey API.
This includes simple web API access to alarms, events, nodes, notifications, and outages, and it is expected that this will be expanded in future releases.
A complete replacement for Capsd, called "Provisiond" is introduced in this release. It allows you to define specific behaviors for detecting services and attributes of devices in manual, automated, and semi-automated ways, with simple APIs for writing your own custom scanning behavior and detectors. This includes a highly-scalable, highly-parallelizable threading architecture which will be used for other parts of OpenNMS in future releases.
Provisiond is able to provision nodes based on a DNS zone transfer.
Provisiond can automatically create maps and link nodes together when they are provisioned.
JDBCQueryPlugin, JMXSecurePlugin, WebPlugin, WmiPlugin, XmpPlugin
A new pair of monitors have been added that have the ability to perform monitoring of cellular networks with phones attached to the OpenNMS server.
The remote monitor has been enhanced to communicate with the OpenNMS server through HTTP (which makes it proxyable).
A data collection strategy that allows pushing collected data over the network.
A service that let you snmp poll the interface operational and administration status (up/down) for selected interfaces
Support has been added for polling and datacollection from Windows Management Instrumentation.
Support has been added for the XML Management Protocol (Cartographer).
BSFMonitor, JDBCQueryMonitor, JMXSecureMonitor, MemcachedMonitor, WebMonitor, WmiMonitor, XmpMonitor
A daemon for interacting with acknowledgements programmatically has been added. This will open up APIs for acknowledging alarms through cell phone, IM, e-mail, and so on.
It is now possible to integrate with an Asterisk server to send notifications as phone calls.
It is now possible to send notifications through Twitter, Identi.ca, and similar services.
An Adobe AIR based client was added.
The topological map support has been updated to work properly in all major browsers with SVG support, and has had a significant number of other enhancements.
A new map displaying remote poller status was added.
Some updates have been made to the web UI to make them more mobile-friendly.
Reporting has been enhanced greatly to support Jasper reports and better scheduling.
A number of pages, most notably the node details page, have been updated to provide more detailed information thanks to the new REST service. These controls also support paging, sorting, etc.
Support for basic access control has been added, which allows you to limit which nodes, interfaces, and services a user can view based on the surveillance categories their group is assigned to.
Some confusing output in the LiquiBase upgrade process was fixed. (Bug #3214)
Event listings did not allow filtering by date in 1.7. (Bug #3586)
"All items" in the event list would not list all items. (Bug #3590)
A provisiond rescan of nodes that were provisioned by Capsd would delete the nodes. (Bug #3819)
When Capsd is disabled, it was impossible to remove nodes through the UI. (Bug #3836)
Table of Contents
OpenNMS is written almost entirely in Java, and should be able to run on any system that supports the Sun Java Virtual Machine -- OpenNMS 1.3.x and higher requires Java 5 or higher. There are requirements for other programs such as PostgreSQL and Perl, but the JDK is the key requirement as most of the other packages can be compiled from source.
The following are the systems that support or are known to run OpenNMS.
Windows 2000/XP/Vista are supported as of 1.3.8.
The following systems are supported out-of-the-box with native installation packages:
RPM-based Distributions (Using Yum).
Red hat Enterprise Linux 3 and higher
CentOS 3 and higher
Fedora Core 4 and higher (including 64-bit)
SuSE Linux 9 and 10 (Using the Yum repository through YAST)
Other RPM-based Distributions.
Mandriva Linux 2007 and higher (Using URPMI)
Debian and Ubuntu Linux. Debian packages for Etch and later are available at the following apt repository:
deb http://debian.opennms.org/ unstable main
These same packages should work equally well with Ubuntu releases 6.10 (Edgy Eft) and higher.
Solaris 10 (X86 and SPARC)
MacOSX 10.4 (Tiger), 10.5 (Leopard). On MacOSX, the Fink distribution packages of OpenNMS are supported. See the Fink web site for more information on installing and using Fink.Also note that on MacOSX, PostgreSQL must be configured in the same manner as above for Linux. However, to do so you will need to update the SHM settings so that the OS allows enough resources for PostgreSQL to run with larger buffers.There are details for configuring the shared memory segments on the Fink wiki.
Windows Server and Desktop (Windows 2000+). Note that while it is technically possible to install on FAT32, NTFS is the only officially supported filesystem for Windows installs. Additionally, while Windows is supported, OpenNMS is much more heavily tested (and easier to maintain) on UNIX, and it is recommended that unless you have a specific reason to go with Windows, that you use one of the supported UNIX-based operating systems.
OpenNMS 1.3.7 and up require Java 5 (a 1.5 JDK) and PostgreSQL 7.4 or higher. In addition, for native RRD support (as opposed to the builtin Java-based JRobin round-robin database), RRDTool 1.2 is required.
Any operating system that can support these dependencies should be able to run OpenNMS. However, since many older distributions do not support packages for these applications it will be much harder to get them installed, and so they are not officially supported.
A number of distributions that used to be supported are still able to run OpenNMS but are not officially supported:
Gentoo. Gentoo ebuilds used to be available but are no longer officially maintained, as we have no Gentoo packager volunteers to keep them up-to-date.
Red Hat Linux. While Red hat Linux 7, 8, and 9 (and potentially even others might still work, they have long gone untested and are not recommended for production use.
SuSE 8 and earlier
Solaris 9 and earlier