CentOS6.5下SNMP安装

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

SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。

一、查看是否安装snmp

我的测试环境里已经安装过了snmp,这里我先卸载再安装

[root@localhost~]#rpm-qa|grep-inet-snmp
net-snmp-5.5-49.el6.x86_64
net-snmp-libs-5.5-49.el6.x86_64
[root@localhost~]#rpm-qa|grep-inet-snmp|xargsrpm-e--nodeps
[root@localhost~]#rpm-qa|grep-inet-snmp
[root@localhostPackages]#rpm-qa|grep-isensors
lm_sensors-libs-3.1.1-17.el6.x86_64
[root@localhostPackages]#rpm-qa|grep-isensors|xargsrpm-e--nodeps
[root@localhostPackages]#rpm-qa|grep-isensors
[root@localhostPackages]#

二、安装snmp

直接挂载系统安装盘,里面就有rpm安装包,

安装snmp服务需要的rpm包:

lm_sensors-libs-3.1.1-17.el6.x86_64.rpm

lm_sensors-3.1.1-17.el6.x86_64.rpm

以下这三个包有一定的版本要求,必须版本一致,否则安装无法成功。安装也有一定顺序,在安装的时候,会有提示

net-snmp-libs-5.5-49.el6.x86_64.rpm

net-snmp-5.5-49.el6.x86_64.rpm 必须先安装net-snmp-libs

net-snmp-utils-5.5-49.el6.x86_64.rpm 不是必须安装的包,但安装它会带来不少帮助,它提供了很多工具,例如可以使用snmptranslate命令查看oid,可以使用snmpget、snmpwalk命令等。

[root@localhostsrc]#mount/dev/cdrom/mnt/
[root@localhostsrc]#cd/mnt/Packages/
[root@localhostPackages]#uname-i
x86_64
[root@localhostPackages]#rpm-ivhlm_sensors-libs-3.1.1-17.el6.x86_64.rpm
warning:lm_sensors-libs-3.1.1-17.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:lm_sensors-libs###########################################[100%]
[root@localhostPackages]#rpm-ivhlm_sensors-3.1.1-17.el6.x86_64.rpm
warning:lm_sensors-3.1.1-17.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:lm_sensors###########################################[100%]
[root@localhostPackages]#rpm-ivhnet-snmp-libs-5.5-49.el6.x86_64.rpm
warning:net-snmp-libs-5.5-49.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:net-snmp-libs###########################################[100%]
[root@localhostPackages]#rpm-ivhnet-snmp-5.5-49.el6.x86_64.rpm
warning:net-snmp-5.5-49.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:net-snmp###########################################[100%]
[root@localhostPackages]#rpm-ivhnet-snmp-utils-5.5-49.el6.x86_64.rpm
warning:net-snmp-utils-5.5-49.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:net-snmp-utils###########################################[100%]
[root@localhostPackages]#

或者yum装

[root@localhostPackages]#yum-yinstallnet-snmp-libsnet-snmpnet-snmp-utils^C
[root@localhostPackages]#yum-yinstallnet-snmp*

验证snmp服务

[root@localhostPackages]#chkconfigsnmpdon
[root@localhostPackages]#rpm-qcnet-snmp
/etc/snmp/snmpd.conf
/etc/snmp/snmptrapd.conf
/etc/sysconfig/snmpd
/etc/sysconfig/snmptrapd
[root@localhostPackages]#rpm-qf/etc/snmp/snmpd.conf
net-snmp-5.5-49.el6.x86_64
[root@localhostPackages]#snmpwalk-v2c-cpublic127.0.0.1sysName.0#获取到本机主机名
SNMPv2-MIB::sysName.0=STRING:localhost.localdomain
[root@localhostPackages]#snmptranslate-To|head#查oid
.1.3
.1.3.6
.1.3.6.1
.1.3.6.1.1
.1.3.6.1.2
.1.3.6.1.2.1
.1.3.6.1.2.1.1
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
.1.3.6.1.2.1.1.3
[root@localhostPackages]#

启动时发生错误

snmpd: error while loading shared libraries: libnetsnmpagent.so.25:

cannot open shared object file: No such file or directory

解决办法:#export LD_LIBRARY_PATH=/usr/local/lib

但这样只能使用一次,最好是:vi /etc/profile 在最后一行加入:export

LD_LIBRARY_PATH=/usr/local/lib


三、配置snmp

安装完成后,使用的是snmp的默认配置,通过这些默认配置,我们只能获取主机的部分信息。但一些其他的重要信息,无法获取。如主机的cpu使用情况,内存使用情况等。

1、

[root@localhostPackages]#vim/etc/snmp/snmpd.conf
#sec.namesourcecommunity
com2secnotConfigUserdefaultpublic

首先定义一个共同体名称(community),这里是 public ,及可以访问这个 public 的用户名(sec name),这里是 notConfigUser 。public 相当于用户 notConfigUser 的密码。

2、

[root@localhostPackages]#vim/etc/snmp/snmpd.conf
#groupNamesecurityModelsecurityName
groupnotConfigGroupv1notConfigUser
groupnotConfigGroupv2cnotConfigUser

定义一个组名(groupName)这里是 notConfigGroup,及组的安全级别(v1/v2c),把notConfigUser 这个用户加到这个组中。


3、修改查看设备节点的权限

[root@localhostPackages]#snmpwalk-v2c-cpublic127.0.0.11.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::sscpuIdle.0=NomorevariablesleftinthisMIBView(ItispasttheendoftheMIBtree)
[root@localhostPackages]#

无法获取cpu的空闲率(注:1.3.6.1.4.1.2021.11.11.0是主机cpu空闲率的oid),

view:定义了可以查看哪些节点设备的信息。snmp默认配置只能查看.1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1节点下的设备信息,而主机cpu和内存等设备都不在这些节点下,所以无法获取这些数据。

[root@localhostPackages]#vim/etc/snmp/snmpd.conf
#Makeatleastsnmpwalk-v1localhost-cpublicsystemfastagain.
#nameincl/exclsubtreemask(optional)
viewallincluded.1
viewsystemviewincluded.1.3.6.1.2.1.1
viewsystemviewincluded.1.3.6.1.2.1.25.1.1

在此处添加了一行:

view all included .1

表示可以查看.1节点下的所有设备信息。

[root@localhostPackages]#snmpwalk-v2c-cpublic127.0.0.11.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::sscpuIdle.0=INTEGER:99
[root@localhostPackages]#

4

[root@localhostPackages]#vim/etc/snmp/snmpd.conf
#groupcontextsec.modelsec.levelprefixreadwritenotif
accessnotConfigGroup""anynoauthexactallnonenone
[root@localhostPackages]#/etc/init.d/snmpdrestart

定义组notConfigGroup在all这个视图范围内可做的操作,这时定义了 notConfigGroup组的成员可对 .1 这个视图做只读操作。这里的名称all要和view中的名称all保持一致.这样对 snmpd.conf 文件就基本完成了.

[root@localhostPackages]#snmpwalk-v2c127.0.0.1-cpublicsystem
SNMPv2-MIB::sysDescr.0=STRING:Linuxlocalhost.localdomain2.6.32-431.el6.x86_64#1SMPSunNov1022:19:54EST2013x86_64
SNMPv2-MIB::sysObjectID.0=OID:NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance=Timeticks:(212)0:00:02.12
SNMPv2-MIB::sysContact.0=STRING:Root<root@localhost>(configure/etc/snmp/snmp.local.conf)
SNMPv2-MIB::sysName.0=STRING:localhost.localdomain

上述信息说明 SNMP 已经正常工作了

四、防火墙开启UDP 161端口

[root@localhost~]#vim/etc/sysconfig/iptables
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport22-jACCEPT
-AINPUT-mstate--stateNEW-mudp-ptcp--dport161-jACCEPT
[root@localhost~]#/etc/init.d/iptablesrestart

SNMP安装、简单配置完成,至此,可以通过SNMP获取本地的相关信息.


现在很多监控系统都是根据SNMP进行的,而SNMP监控的性能指标很多都是通过snmpwalk采集设备的OID信息。snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示用户。通过snmpwalk也可以查看支持SNMP协议(可网管)的设备的一些其他信息,比如cisco交换机或路由器IP地址、内存使用率等。snmpwalk没有单独的安装包,它被包含在net-snmp-utils软件包中。

一、snmpwalk安装

[root@localhost~]#yum-yinstallnet-snmp-utils
[root@localhost~]#snmpwalk-h

wKiom1eS3VzhWdXyAACq2Z1CT20096.png

snmpwalk的参数比较多,但是我们比较常用的就只有-v和-c参数:

�Ch:显示帮助。

�Cv:指定snmp的版本,1或者2c或者3。

�Cc:指定连接设备SNMP密码。

�CV:显示当前snmpwalk命令行版本。

�Cr:指定重试次数,默认为0次。

�Ct:指定每次请求的等待超时时间,单为秒,默认为3秒。

�Cl:指定安全级别:noAuthNoPriv|authNoPriv|authPriv。

�Ca:验证协议:MD5|SHA。只有-l指定为authNoPriv或authPriv时才需要。

�CA:验证字符串。只有-l指定为authNoPriv或authPriv时才需要。

�Cx:加密协议:DES。只有-l指定为authPriv时才需要。

�CX:加密字符串。只有-l指定为authPriv时才需要。

二、snmpwalk的使用

snmpwalk使用方法很简单:

snmpwalk -v 1或2c或3(代表SNMP版本) -c SNMP密码 IP地址 OID(对象标示符)

�Cc:指定连接设备SNMP读密码,该参数必须有。

IP:指定要walk的设备的IP地址,该参数必须有。

OID:代表要获取设备的指标oid,该参数不是必须的。

例如:获取10.15.44.162进程数量、系统总内存

这里使用了iReasoning MIB Browser这个MIB浏览软件以配合实验。

wKioL1eS6VyQPdOIAAJKauQ01Vo691.png

wKiom1eS6lKxOXmOAAJKauQ01Vo749.png

一些snmp常用的一些OID,比如cpu、内存、硬盘什么的。先了解这些,在使用snmp监控服务器。

系统参数(1.3.6.1.2.1.1)
OID 描述 备注 请求方式
.1.3.6.1.2.1.1.1.0 获取系统基本信息 SysDesc GET
.1.3.6.1.2.1.1.3.0 监控时间 sysUptime GET
.1.3.6.1.2.1.1.4.0 系统联系人 sysContact GET
.1.3.6.1.2.1.1.5.0 获取机器名 SysName GET
.1.3.6.1.2.1.1.6.0 机器坐在位置 SysLocation GET
.1.3.6.1.2.1.1.7.0 机器提供的服务 SysService GET
.1.3.6.1.2.1.25.4.2.1.2 系统运行的进程列表 hrSWRunName WALK
.1.3.6.1.2.1.25.6.3.1.2 系统安装的软件列表 hrSWInstalledName WALK

网络接口(1.3.6.1.2.1.2)
OID 描述 备注 请求方式
.1.3.6.1.2.1.2.1.0 网络接口的数目 IfNumber GET
.1.3.6.1.2.1.2.2.1.2 网络接口信息描述 IfDescr WALK
.1.3.6.1.2.1.2.2.1.3 网络接口类型 IfType WALK
.1.3.6.1.2.1.2.2.1.4 接口发送和接收的最大IP数据报[BYTE] IfMTU WALK
.1.3.6.1.2.1.2.2.1.5 接口当前带宽[bps] IfSpeed WALK
.1.3.6.1.2.1.2.2.1.6 接口的物理地址 IfPhysAddress WALK
.1.3.6.1.2.1.2.2.1.8 接口当前操作状态[up|down] IfOperStatus WALK
.1.3.6.1.2.1.2.2.1.10 接口收到的字节数 IfInOctet WALK
.1.3.6.1.2.1.2.2.1.16 接口发送的字节数 IfOutOctet WALK
.1.3.6.1.2.1.2.2.1.11 接口收到的数据包个数 IfInUcastPkts WALK
.1.3.6.1.2.1.2.2.1.17 接口发送的数据包个数 IfOutUcastPkts WALK

cpu负载
OID 描述 备注 请求方式
. 1.3.6.1.4.1.2021.11.9.0 用户cpu百分比 sscpuUser GET
. 1.3.6.1.4.1.2021.11.10.0 系统cpu百分比 sscpuSystem GET
. 1.3.6.1.4.1.2021.11.11.0 空闲cpu百分比 sscpuIdle GET
. 1.3.6.1.4.1.2021.11.50.0 原始用户cpu使用时间 sscpuRawUser GET
.1.3.6.1.4.1.2021.11.51.0 原始nice占用时间 sscpuRawNice GET
. 1.3.6.1.4.1.2021.11.52.0 原始系统cpu使用时间 sscpuRawSystem. GET
. 1.3.6.1.4.1.2021.11.53.0 原始cpu空闲时间 sscpuRawIdle GET
. 1.3.6.1.2.1.25.3.3.1.2 cpu的当前负载,N个核就有N个负载 hrProcessorLoad WALK

内存及磁盘(1.3.6.1.2.1.25)
OID 描述 描述 请求方式
.1.3.6.1.2.1.25.2.2.0 获取内存大小 hrMemorySize GET
.1.3.6.1.2.1.25.2.3.1.1 .1.3.6.1.2.1.25.2.3.1.1 hrStorageIndex WALK
.1.3.6.1.2.1.25.2.3.1.2 .1.3.6.1.2.1.25.2.3.1.2 hrStorageType[OID] WALK
.1.3.6.1.2.1.25.2.3.1.3 存储设备描述 hrStorageDescr WALK
.1.3.6.1.2.1.25.2.3.1.4 簇的大小 hrStorageAllocationUnits WALK
.1.3.6.1.2.1.25.2.3.1.5 簇的的数目 hrStorageSize WALK
.1.3.6.1.2.1.25.2.3.1.6 使用多少,跟总容量相除就是占用率 hrStorageUsed WALK
.1.3.6.1.4.1.2021.4.3.0 Total Swap Size(虚拟内存) memTotalSwap GET
原文链接:https://www.f2er.com/centos/381939.html

猜你在找的CentOS相关文章