Installing OpenNMS on CentOS 6.3 or Red Hat ES 6

After few days of fighting with install and configuration different Open Source network monitoringtool. I have found this very interesting, enterprise ready network monitoring system and decided to install on my CentOS Linux 6.3 server. The tool is called OpenNMS.

OpenNMS is the world’s first enterprise grade network management application platform developed under the open source model. It was designed from “day one” to monitor tens of thousands to ultimately unlimited devices with a single instance. It brings the power, scalability and flexibility that enterprises and carriers demand. Few great features you can expect and are provided by OpenNMS:

  • Automated and Directed Discovery and Provisioning
  • Event and Notification Management
  • Service Assurance
  • Performance Measurement

Here are few screenshots from my OpenNMS:
[nggallery id=16]

While OpenNMSis useful “out of the box,”it is designed to be highly customizable to create an unique and integrated management solution and is completely FREE ! Also if you are interested you can get mobile client – app for your iPad, iPhone device, sorry not yet for Android 🙁

How do we install and configure OpenNMS on CentOSserver:

  • install,configure PostgreSQL database server and initiate the database
su
yum install postgresql-server -y
service postgresql initdb
  • Configure Postgresql for OpenNMS
  • You need to use your editor and open this file /var/lib/pgsql/data/pg_hba.conf and make sure the end of file looks like here
su
gedit /var/lib/pgsql/data/pg_hba.conf
...
### edit this part ###
local   all    all                        ident
host    all    all        127.0.0.1/32    trust
host    all    all        ::1/128         ident
  • Configure automatic startup for PosgreSQL in your runlevel and start PostgreSQL
  • Create the OpenNMS database
su
chkonfig postgresql on
service postgresql start
# run create db as the posgresql user
su - postgres -c "createdb -U postgres -E UNICODE opennms"
  • Now you are ready to install OpenNMS on your system
  • Add OpenNMS into your yum repository
su
rpm -Uvh http://yum.opennms.org/repofiles/opennms-repo-stable-rhel6.noarch.rpm
  • Install OpenNMS from repository
yum install opennms -y --nogpgcheck
  • Configure Java for running with OpenNMS
su
/opt/opennms/bin/runjava -s
  • Lets run the installer to setup OpenNMS
su
/opt/opennms/bin/install -dis
  • Add last tasks such as add automatic startup at current runlevel and start services
su
chkconfig opennms on
service opennms start
  • Last task is to add rule into iptables so you can connect to your OpenNMS web console
su
iptables -I INPUT -p tcp -m tcp --dport 8980 -j ACCEPT
service iptables save

This is complete installation process now you should go to your browser and enter http://localhost:8980/opennms/ or http://{IP ADDRESS}:8980/opennms/ and once you are in the login page use these credentials admin/admin.

Troubleshooting tips:

  • The OpenNMS must be able to resolve itself in DNS, add the local hostname into /etc/hosts
  • If ytou do not have charts – you probably missing fonts and this should resolve it
  • Project OpenNMS website: http://www.opennms.org/
su
yum install liberation-mono-fonts urw-fonts -y
service opennms restart
service httpd restart