一.NET-SNMP包的安装与配置
1.安装net-snmp:
Ubuntu11.10:apt-get install snmp snmpd
CentOS6.2: yum install net-snmp net-snmp-devel net-snmp-utils
启动SNMP服务:/etc/init.d/snmpd start
查看SNMP版本:snmpget --version
2.SNMP配置:/etc/snmp/snmpd.conf(需要root权限)
(1)对于SNMP V3版本,默认设置是监听本机的snmp请求,应该将其修改成成监听所有设备的请求,V2c版本不用修改。
# Listen for connections from the local system only
#agentAddress udp:127.0.0.1:161
# Listen for connections on all interfaces (both IPv4 *and* IPv6)
agentAddress udp:161,udp6:[::1]:161
(2)配置SNMP的访问权限,
默认的访问权限设置如下,这个设置只能收集到系统的基本信息。
view systemonly included .1.3.6.1.2.1.1
view systemonly included .1.3.6.1.2.1.25.1
# group context sec.model sec.level prefix read write notif access notConfigGroup "" any noauth exact systemonly none none
可以修改成:
view all included .1
# group context sec.model sec.level prefix read write notif access notConfigGroup "" any noauth exact all none none
(3)如果需要修改默认的Community String可以将public替换掉:
com2sec notConfigUser 0.0.0.0 public
配置完成后,检查snmp是否能够访问:snmpwalk -v 2c -c public YourIpAddress
(4)如果完成以上配置后依然无法访问SNMP服务,可以尝试
#sudo lsof-i:161
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
snmpd 1212 root 6u IPv4 11012 0t0 UDP *:snmp
PS:如果这里显示为snmpd 9641snmp 6u IPv4 29940 0t0 localhost:snmp:snmp
说明161端口是监听在localhost上的,也就是说不对外开放,只能访问本地的161端口。
iptables -A INPUT -p udp -i eth0 --dport 161 -j ACCEPT 将161端口开放
或关闭掉iptables
二.SNMP数据收集,RRD数据存储方式配置。
(1).SNMP version与Community配置
默认的SNMP版本和是V2c,密码是piblic。添加节点时可以在页面修改。
或者在Admin->Configure SNMP Community Names by IP中根据不同的IP配置
配置文件:($OPENNMS_HOME/etc/snmp-config.xml)
配置文件中的标签和属性含义:
<snmp-config>标签中定义的属性为全局的,适用与所有设备。
retry:重连次数,默认为1
timeout:等待时间,单位是毫秒,默认为3000
read-community:利用SNMP读取数据的密码,默认为public
write-community:利用SNMP写数据的密码,当前版本没有实现。
port:SNMP的端口,默认161
<definition>中的属性为局部的,仅适用与标签内指定的IP,并会覆盖全局属性。
(2).配置数据收集colletd进程
配置文件:$OPENNMS_HOME/collectd-configuration.xml
配置文件中的标签和属性含义:
collectd-configuration.xml
threads:用于收集数据的线程数量
<package>将设备分组进行数据收集
<filter> :对package中的设备进行过滤,IP地址满足过滤条件的设备将被包含在这个package中
<filter>IPADDR IPLIKE *.*.*.*</filter>
<specific> 指定一个特定的IP到package中
<include-range >指定一个特定IP范围到package中 <include-range begin="192.168.0.1" end="192.168.0.254"/>
<exclude-range>在package中排除范围内的设备
<exclude-range begin="192.168.0.100" end="192.168.0.104"/>
<include-url >指定一个文件文件中所有的IP都将包含到package中
<include-url>file:/opt/OpenNMS/etc/include</include-url>
<Services>为package中的设备配置数据收集服务,其中包含以下属性:
name:服务的名字,如SNMP、OpenNMS-JVM
interval:收集数据的时间间隔,单位为毫秒,默认为300000(5分钟)
user-defined:当前的版本还没有实现这个功能
parameter:设置变量
<outage>用于配置计划中的中断、故障
(3)SNMP数据收集配置以及RRD配置
配置文件:$OPENNMS_HOME/datacollection.xml
<snmp-collection>中定义了SNMP需要收集的数据组、RRD存储方式和存储目录
RRD
rrdRepository:属性定义了RRD存储目录,如果修改这一属性,因同时修改一下配置文件中的内容:
poller-configuration.xml
thresholds.xml
http-datacollection-config.xml
jmx-datacollection-config.xml
nsclient-datacollection-config.xml
<rrd>标签定义了rrd数据存储方式,如:
<rrd step="30">
<rra>RRA:AVERAGE:0.5:1:2016</rra>
</rrd>
step;步长,以秒为单位,默认值是300。
<rra>中的内容是RRD存储数据的详细配置,格式如下:
RRA:Cf:xff:steps:rows
RRA:表明这是一个RRD数据的配置命令。
Cf:存储内容统计函数,包含AVERAGE, MAX, MIN, LAST四种。
xff是一个影响因子,用于防止一个统计周期内大量数据丢失的情况,默认值是0.5,即允许有50%的数据丢失
steps,即多少个步长进行一次统计,并将数据存储为一行。
rows,表示RRD总共存储多少行数据。
如:step=300 RRA:AVERAGE:0.5:1:2016 表示,存储5分钟内的平均值,允许有50%的数据丢失,总共存储2016条数据
SNMP
<include-collection dataCollectionGroup="MIB2"/> 将SNMP收数据分成组,
每一个组都在$OPENNMS_HOME/etc/datacoll
ection中有一个对应的配置文件。
其中配置了每个数据的ID和名字,系统已经自动配置好了大部分的数据,如果有需求可以手动在其中添加。
分享到:
相关推荐
OpenNMS是第一个开发在开源模式下的企业级网络管理平台应用。OpenNMS的目标是成为一个真真的分布式、可升级的网络管理平台,尽管它看似一个FCAPS网络管理模型,使之可用于开放源码和商业领域。目前:OpenNMS专注与...
用于Internet中基于snmp协议的网络开发包 用于Internet中基于snmp协议的网络开发包
厨师食谱,用于管理OpenNMS Horizon的安装和配置。 当前版本支持CentOS 6和7的发行版16、17、18、19、20、21、22、23、24、25、26。 版本号 从OpenNMS Horizon 16开始,该食谱版本的MSB与其支持的OpenNMS ...
opennms-模块管理器 用于管理 opennms-modules 的 CLI
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414065
Opennms从源码编译安装指南,很详细,很精准,以助于学习者快速理解opennms
standalone-opennms-1.6.8.jar
NULL 博文链接:https://yinbangmin.iteye.com/blog/2414330
OpenNMS-IP-发现-供应-适配器可选的Provisioning Adapter,用于将IP接口的自动发现管理为非托管动机找到想要发现并持久存储数据库中所有IP接口,但仅主动监视受监控的服务的OpenNMS用户和操作员是很常见的,这些服务...
OpenNMS Javascript API 用于访问OpenNMS网络监视平台的客户端API。 在代码中使用OpenNMS.js API 中提供了有关入门以及如何使用API的。 完整的API列表可在。 使用OpenNMS.js命令行 安装 运行npm install -g ...
OpenNMS-资源-供应-适配器 用于填充定义为复杂 SNMP 表的字符串的其他 MibObject 的配置适配器 要求: 1.0.x OpenNMS 14. 1.1.x OpenNMS 15/16。
opennms-ksc-grafana:用于将OpenNMS KSC报表转换为Grafana仪表板的快捷实用程序
opennms-事件使用 Kibana 分析 opennms 事件安装(来自源码) 这是一条骆驼路线,因此它需要 Java、Maven 3、Elasticsearch 和可以访问 opennms 存储其数据的 postgres 数据库的数据库用户。 克隆这个存储库,然后 ...
OpenNMS-KSC至Grafana 将 KSC报表转换为仪表板。 已针对Grafana 4.x,5.x和6.x进行了测试; 尽管该工具仅在Grafana 5.x或更高版本上在标准输出上提供有关生成的仪表板的信息。 由于Grafana的工作方式不同,它不会...
OpenNMS集成API 该项目旨在通过引入一个稳定的接口来对其进行编写,从而使其更容易为OpenNMS编写插件和扩展。 然后,OpenNMS和Meridian的版本将实现API的至少一个主要版本。 特征 API的用户当前可以利用以下功能和...
OpenNMS的详细图文安装与配置(Ubuntu)!!
opennms1.12.5-1官方源码下载
OpenNMS-阈值-事件-生成器一种基于当前阈值设置生成良好阈值事件定义(和通知)的工具。 要编译该工具,请使用 Maven: mvn install这将生成一个带有依赖项的 JAR,以便能够轻松执行该工具,例如: java -jar ...
OpenNMS是由许多个人及组织,在OpenNMS软件专案这支大旗下,所共同打造的网络管理系统。从最初到2002年,程序代码是由Oculan Corporation开发并以GPL释出,后来后案的管理移交给 Tarus Balog。
OpenNMS安装、配置[归纳].pdf