OpenNMSはJavaで書かれたウェブベースの監視ツール。pingやコネクションベースの死活監視やSNMPノードであれば性能監視もおこなえる。
ApacheのStatusモジュールで得られる情報や、JMXを使ってTomcat等のサーブレットコンテナの情報が収集できるところが特徴的。
データはRRDtoolと同様の方式で累積されるようだ(RRDtoolをJavaで実装してるっぽい)。
OpenNMS自体はJetty同梱版での単独動作させるか、もしくはTomcat等にデプロイして動かす。
今回はJetty同梱版をインストール。こちらのページに従えばおおよそ大丈夫。
Installation:Yum - OpenNMS
# rpm -Uvh http://yum.opennms.org/repofiles/opennms-repo-stable-rhel5.noarch.rpm # yum -y install opennms
# yum -y install postgresql-server
# yum -y install iplike.x86_64
x86_64環境にi386版も導入すると、後述のinstall_iplike.shスクリプトが正しく動作しないので注意(libdirが/usr/lib64ではなく/usr/libになってしまうため)。
local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust
とりあえずOpenNMSのインストールドキュメントにしたがってやっているが、実際にはもう少し制限したほうがいいと思う(opennmsデータベースだけtrustにするとか)。
# service postgres start # su - postgres $ createdb -U postgres -E UNICODE opennms $ exit
# su - postgres $ install_iplike.sh $ exit
# /opt/opennms/bin/runjava -S /usr/java/jdk1.5.0_15/bin/java
# su - postgres $ /opt/opennms/bin/install -dis -l /usr/lib64 $ exit
# service opennms start # chkconfig opennms on
管理画面(http://localhost:8980/opennms/)には、user=admin、password=adminでログインできる。