OpenNMS 真是好物!! 除了因為他是 Open Source Project 之外, OpenNMS 的良好架構, 可以讓我們用設定的方式來控制 Collector, Pooler, ... 等的預設行為, 甚至自認為不足時, 可以自行以 Java 撰寫相關的 Class, 補足 OpenNMS 的不足之處.
安裝方面, 從筆者以前用的 1.3.3 版複雜的安裝方式, 到現在 1.8.5 也已經簡單很多, 這裡分享一下安裝的單步驟. 其實安裝算是最容易的了, 規劃與維護才是最困難之處, (生孩子簡單, 養育孩子困難 ^^) 後續有機會可以跟大家討論 OpenNMS 的規劃與維護的心得.
本次還是一樣, 先以預設的方式安裝 CentOS 5.5 (ps: VMware ESXi 也真是好物!! ), 後續的步驟如下:
安裝與設定 PostgreSQL
=====================
# 安裝 postgresql
yum -y install postgresql postgresql-server postgresql-jdbc
# 讓 postgresql 於開機時自動執行
chkconfig --level 345 postgresql on
# 第一次啟動 postgresql
service postgresql start
# 修改 postgresql 啟動參數
cd /var/lib/pgsql/data
mv pg_hba.conf pg_hba.conf.bak
sed 's/ident sameuser/trust/g' pg_hba.conf.bak > pg_hba.conf
# 重新啟動 postgresql
service postgresql restart
安裝與設定 JDK
==============
# 從 java.sun.com 下載 jdk-6u22-linux-i586-rpm.bin 並上傳到 Linux
# 假設您是放在 ~/
# 安裝 JDK
cd ~
chmod 700 jdk-6u22-linux-i586-rpm.bin
./jdk-6u22-linux-i586-rpm.bin
rm -f jdk-6u22-linux-i586-rpm.bin
rm -f *.rpm
# 設定環境變數 for sh
cat << EOF > /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/default
export PATH=\$JAVA_HOME/bin:\$PATH
EOF
# 設定環境變數 for csh
cat << EOF > /etc/profile.d/java.csh
set JAVA_HOME=/usr/java/default
set PATH=\$JAVA_HOME/bin:\$PATH
EOF
# 讓環境變數生效
. /etc/profile.d/java.sh
設定 Firewall
=============
iptables -I RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT
iptables -I RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8980 -j ACCEPT
service iptables save
下載與安裝 OpenNMS
==================
# 安裝 OpenNMS 的 yum repositories
rpm -ivh http://yum.opennms.org/repofiles/opennms-repo-stable-rhel5.noarch.rpm
# 建立與設定資料庫
sudo -u postgres createdb -U postgres -E UNICODE opennms
yum -y install iplike
# 下載與安裝 OpenNMS
yum -y install opennms mib2opennms opennms-*
# 關閉 opennms 透過 yum 更新
echo "enabled=0" >> /etc/yum.repos.d/opennms-stable-common.repo
echo "enabled=0" >> /etc/yum.repos.d/opennms-stable-rhel5.repo
# 設定 OpenNMS
/opt/opennms/bin/runjava -s
/opt/opennms/bin/install -dis
chkconfig opennms on
# 啟動 OpenNMS
service opennms start
OK!! 完成, 請以瀏覽器連線到 http://<你的CentOS>:8980/opennms, 以帳號 admin 密碼 admin 登入即可
參考文件: