OpenNMS安装

前端之家收集整理的这篇文章主要介绍了OpenNMS安装前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

OpenNMS是个很强大的网管软件,用它可以监视服务器的资源使用状况,并在必要的时候向管理员发出警告。(当然它的强大功能不止这些,我就用到这个功能而已)。安装其实也不麻烦,基本上按照官方文档的安装过程都没问题。

网上流传的方法都是将OpenNMS装在Tomcat上,不过最新版的opennms-1.6.1内置了Web服务器,所以Tomcat就不是必须的了,这样安装要方便许多。下面这篇文章是在Redhat Liux Enterprise 4上安装的,其实RH系列的操作系统都差不多,大家在安装时注意选择和操作系统匹配的软件包就行了。

  • 下载
  • 安装Postgresql
  • 安装JDK
  • 安装OpenNMS
  • 配置OpenNMS
  • 配置被监视的服务器
  • 在OpenNMS中添加节点

下载

由于局域网中不能使用yum,所以必须手动下载需要的安装包。安装OpenNMS需要以下软件:

安装Postgresql

首先安装Postgresql

# rpm -i postgresql-7.4.8-1.RHEL4.1.i386.rpm
# rpm -i postgresql-server-7.4.8-1.RHEL4.1.i386.rpm
# chkconfig postgresql on
# /etc/init.d/postgresql start

然后要编辑配置文件 /var/lib/pgsql/data/pg_hba.cof 中权限相关的部分:

把下面这一行:

local  all    all             ident   sameuser

改成这样:

local  all    all             trust
host    all         all         127.0.0.1/32          trust
host    all         all         ::1/128               trust

然后需要编辑 /var/lib/pgsql/data/postgresql.conf,让它监听TCP。我用的是RHEL4的postgresql-7.4.8,修改方法如下:

#tcpip_socket = false

改成

tcpip_socket = true

如果是较新的服务器,那应该是默认监听TCP的,如果不行,就要在 postgresql.conf 中加入这样一行:

listen_addresses = 'localhost'

然后重启一下服务器:

/etc/init.d/postgresql restart

确认一下postgresql是否启动成功:

# netstat -lntp
...(中略)
tcp   0   0 0.0.0.0:5432     0.0.0.0:*   LISTEN   28603/postmaster  # 有这一行即可

最后要创建OpenNMS的数据库

# sudo -u postgres createdb -U postgres -E UNICODE opennms
CREATE DATABASE

安装JDK

我从Sun的网站上下载了rpm版的JDK 6 Update 11。安装很简单:

# ./jdk-6u11-linux-i586-rpm.bin

安装OpenNMS

安装OpenNMS需要以下几个包:

  • opennms-1.6.1-1.noarch.rpm:为yum准备的快捷包,不装也行
  • opennms-core-1.6.1-1.noarch.rpm:OpenNMS的核心
  • opennms-docs-1.6.1-1.noarch.rpm:OpenNMS的文档
  • opennms-webapp-jetty-1.6.1-1.noarch.rpm:OpenNMS自带的Web服务器

还有依赖关系:

  • jicmp-1.0.7-1.i386.rpm:注意这个包,不同系统上的安装包是不一样的
  • iplike-1.0.7-1.i366.rpm:注意这个包,不同系统上的安装包是不一样的

如果你要与Tomcat配合使用,可以选择安装opennms-webapp-standalone-1.6.1-1.noarch.rpm,这里就不介绍了。

按照顺序分别安装以上几个包:

# rpm -i jicmp-1.0.7-1.i386.rpm
# rpm -i opennms-core-1.6.1-1.noarch.rpm
# rpm -i opennms-webapp-jetty-1.6.1-1.noarch.rpm
# rpm -i opennms-docs-1.6.1-1.noarch.rpm
# rpm -i opennms-1.6.1-1.noarch.rpm

安装iplike:

# rpm -i iplike-1.0.7-1.i386.rpm

安装过程中会创建存储过程,如果失败的话,可以在排除原因之后执行 /usr/sbin/install_iplike.sh 。

配置OpenNMS

首先设置一个环境变量,指向OpenNMS的安装位置,便于以后的输入:

export OPENNMS_HOME=/opt/opennms

告诉OpenNMS使用新安装的JDK。注意这一步一定要指定你上面刚刚安装的JDK。系统中有可能自带了JRE的java解释器,那个不行,要用JDK的。

# $OPENNMS_HOME/bin/runjava -S /usr/java/latest/bin/java

然后安装OpenNMS的数据库

# $OPENNMS_HOME/bin/install -dis

最后启动OpenNMS:

# chkconfig --add opennms
# /etc/init.d/opennms start

然后打开浏览器,访问 http://<your_ip_address>:8980/opennms/ ,用户名admin密码admin,登录就行了。

配置被监视的服务器

要监视服务器的运行状态,应该在要监视的服务器上安装SNMP。如果是Linux系统,那么可以使用自带的net-snmp包。

# rpm -i net-snmp-libs-5.1.2-11.EL4.6.i386.rpm
# rpm -i net-snmp-5.1.2-11.EL4.6.i386.rpm
# rpm -i net-snmp-utils-5.1.2-11.EL4.6.i386.rpm
# chkconfig snmpd on
# /etc/init.d/snmpd start

然后修改 /etc/snmp/snmpd.conf 。该文件主要由四个指令构成:

com2sec 定义一个安全策略。community的作用类似于密码。
group 将安全策略映射到组。securityModel指SNMP版本号,可以选择v1、v2c或v3。
view 定义一个视图,规定视图中包括内容
access 定义哪个组可以访问哪个视图,以及访问权限。

view中的一长串数字 .1.3.6.1.2.1.1 是MIB结点名称(OID),由RFC1065/1155定义。用snmptranlsate工具可以看到数字的意义:

# snmptranslate .1.3.6.1.2.1.1
SNMPv2-MIB::system

我们可以让SNMP返回更多的信息(由于是局域网,所以就不考虑安全性问题了)。按照以下方式修改snmpd.conf,同时注释掉原有内容

com2sec opennms   192.168.1.100/32    opennms    # 最后一个字段为community名称
group   opennmsGroup    v1           opennms
view    view_all      included   .1
access  opennmsGroup   ""      any       noauth    exact  view_all none none

另外syslocation和syscontact指令是用来记录服务器所在物理位置和管理员联系地址的,适当填写即可。

最后重启SNMP:

# /etc/init.d/snmpd restart

用snmpwalk工具检查配置是否正确,正确的话应该会输出很多信息:

# snmpwalk -c opennms -v 1 192.168.1.100

最后将每台要监视的服务器都按照上述方法配置即可。

在OpenNMS中添加节点

登录到OpenNMS中,点击Admincaidan,然后点击左侧Operations中的Configure Discovery。在Specifics表格中将要监视的服务器的IP地址填进去。如果要监视大范围的服务器,可以在下面的Include Ranges中指定IP地址的范围。最后点击“Save and Restart Discovery”,重新开始搜索节点。

稍等几分钟,再点击Node List菜单,即可看到刚刚添加的服务器。

但是现在在服务器状态中还看不到SNMP信息,因为我们还没设置SNMP的community名称—— 刚才说过,community名称相当于密码。

点击Admin菜单,然后选择左侧的Configure SNMP Community Names by IP命令。然后输入IP地址,以及刚才在snmpd.conf中使用的community名称,版本号也要与snmpd.conf的group指令中设置的一致,最后点击Submit。

接下来回到Node List,进入要监视的服务器的状态页面,点击上方菜单中的Rescan。等待一分钟左右再刷新页面,就可以看到SNMP状态信息了。(由于有了SNMP的帮助,你会发现状态页面的信息一下子多了许多。)

这样,我们可以通过点击上方的Resource Graphs即可看到服务器运行状态的图表。

猜你在找的Postgre SQL相关文章