OpenNMS是个很强大的网管软件,用它可以监视服务器的资源使用状况,并在必要的时候向管理员发出警告。(当然它的强大功能不止这些,我就用到这个功能而已)。安装其实也不麻烦,基本上按照官方文档的安装过程都没问题。
网上流传的方法都是将OpenNMS装在Tomcat上,不过最新版的opennms-1.6.1内置了Web服务器,所以Tomcat就不是必须的了,这样安装要方便许多。下面这篇文章是在Redhat Liux Enterprise 4上安装的,其实RH系列的操作系统都差不多,大家在安装时注意选择和操作系统匹配的软件包就行了。
<!-- end Pukiwiki generated code-->
<!-- begin Pukiwiki generated code-->
- 下载
- 安装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即可看到服务器运行状态的图表。
<!-- end Pukiwiki generated code-->
分享到:
相关推荐
OpenNMS是由许多个人及组织,在OpenNMS软件专案这支大旗下,所共同打造的网络管理系统。从最初到2002年,程序代码是由Oculan Corporation开发并以GPL释出,后来后案的管理移交给 Tarus Balog。
OpenNMS安装、配置[归纳].pdf
OpenNMS安装文档和试用报告,本文讲述如何在linux上安装OpenNMS一个优秀且流行的网管软件,基于Linux suse
OpenNMS的详细图文安装与配置(Ubuntu)!!
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414064
OPENNMS安装手册,中文版本指南将介绍如何在一个已经设定好的网管机台上使用web接口. 您将可以了解如何搜寻信息, recognizing和acknowledging事件及告警, 以及 报表功能, 和资产管理. 本指南希望能让一般使用者能够...
厨师食谱,用于管理OpenNMS Horizon的安装和配置。 当前版本支持CentOS 6和7的发行版16、17、18、19、20、21、22、23、24、25、26。 版本号 从OpenNMS Horizon 16开始,该食谱版本的MSB与其支持的OpenNMS ...
Opennms从源码编译安装指南,很详细,很精准,以助于学习者快速理解opennms
NULL 博文链接:https://yinbangmin.iteye.com/blog/717329
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414070
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414062
docker-horizon-core-web:Open OpenNMS的Horizon核心和Web应用程序服务
要求具有serverinfo支持的Nextcloud候选发布版10 OpenNMS Horizon /子午线与XML数据收集器插件一起安装将您的Nextcloud服务器配置到OpenNMS中以进行监视OpenNMS安装在/ opt / opennms中可选:安装了Grafana和 。...
安装 运行npm install -g opennms 运行opennms --help可获得的命令列表 变更和版本控制 CHANGELOG应该始终包含版本之间更改的完整列表,并且应该始终可以访问。 OpenNMS.js遵循。 发行说明 2.0.2 另一个小版本,...
是世界上第一个在开源模型下开发的企业级网络管理应用程序平台。 好吧,那是什么意思? 世界首创 OpenNMS项目于1999年7月开始,并于2000年3月在SourceForge上注册。...安装OpenNMS 有关安装Open
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414330
OpenNMS移动 这是使用Ionic框架,AngularJS和Cordova的OpenNMS的移动客户端。 准备源代码树 安装Node.JS 首先,必须安装node.js: : 如果您使用的是Mac并使用HomeBrew,建议您与其一起安装,因为这样可以使它们...
OpenNMS-IP-发现-供应-适配器可选的Provisioning Adapter,用于将IP接口的自动...安装编辑pom.xml文件,并确保opennms.version属性与您正在运行的OpenNMS版本匹配。 对于Meridian,您可以使用最接近的Horizon版本,
opennms-事件使用 Kibana 分析 opennms 事件安装(来自源码) 这是一条骆驼路线,因此它需要 Java、Maven 3、Elasticsearch 和可以访问 opennms 存储其数据的 postgres 数据库的数据库用户。 克隆这个存储库,然后 ...
Kubernetes中的OpenNMS漂移在部署OpenNMS Drift。 出于学习目的,主要组件(入口控制器和证书管理器除外)上避免使用Helm图表和operators 。 将来,利用这些技术可能会发生变化。 此部署包含所有OpenNMS组件和功能的...