snmp测试经验
1、1.安装 snmpd snmpwalk
yum install net-snmp*
2.允许snmpd本机抓取
cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bak
vi /etc/snmp/snmpd.conf
com2sec roUser localhost public
group roGroup v1 roUser
group roGroup v2c roUser
view all included .1
includeAllDisks for all partitions and disks
access roGroup "" any noauth exact all none none
3.启动snmpd
/usr/sbin/snmpd -c /etc/snmp/snmpd.conf
4.抓取网卡名
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c 1.3.6.1.2.1.2.2.1.2
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0
[root@xen187v ~]#
5.抓取全部
snmpwalk 127.0.0.1 -c public -v 2c
SNMPv2-MIB::sysDescr.0 = STRING: Linux xen187v.ops.corp.qihoo.net 2.6.18-164.el5xen #1 SMP Thu Sep 3 04:03:03 EDT 2009 x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (27728) 0:04:37.28
SNMPv2-MIB::sysContact.0 = STRING: no
SNMPv2-MIB::sysName.0 = STRING: xen187v.ops.corp.qihoo.net
SNMPv2-MIB::sysLocation.0 = STRING: CN
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORID.1 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.2 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.3 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.4 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.5 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORID.6 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.7 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.8 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.3 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.5 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORDescr.6 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.8 = STRING: The management information definitions for the SNMP User-based Security Model.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (0) 0:00:00.00
IF-MIB::ifNumber.0 = INTEGER: 2
2、抓取 snmpd v 2c (使用 Community 授信)
1.抓取服务器基本信息
1)抓取操作系统信息
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c 1.3.6.1.2.1.1.1
SNMPv2-MIB::sysDescr.0 = STRING: Linux xen187v.ops.corp.qihoo.net 2.6.18-164.el5xen #1 SMP Thu Sep 3 04:03:03 EDT 2009 x86_64
2)抓取系统开机时间
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c 1.3.6.1.2.1.1.3
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (82831) 0:13:48.31
3)抓取机器名
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c 1.3.6.1.2.1.1.5
SNMPv2-MIB::sysName.0 = STRING: xen187v.ops.corp.qihoo.net
2.抓取cpu相关信息
1)用户态cpu百分比
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.11.9.0
2)内核态cpu百分比
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.11.10.0
3)空闲态cpu百分比
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.11.11.0
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::ssCpuIdle.0 = INTEGER: 49
4)cpu使用率=用户态百分比+内核态百分比 ,定时采集
3.抓取机器负载
1)1分钟平均负载
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.10.1.3.1
2)5分钟平均负载
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.10.1.3.2
3)15分钟平均负载
snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.10.1.3.3
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.10.1.3.3
UCD-SNMP-MIB::laLoad.3 = STRING: 1.01
4.抓取内存使用率
1)Total Swap Size: .1.3.6.1.4.1.2021.4.3.0
2)Available Swap Space: .1.3.6.1.4.1.2021.4.4.0
3)Total RAM in machine: .1.3.6.1.4.1.2021.4.5.0
4)Total RAM used: .1.3.6.1.4.1.2021.4.6.0
5)Total RAM Free: .1.3.6.1.4.1.2021.4.11.0
6)Total RAM Shared: .1.3.6.1.4.1.2021.4.13.0
7)Total RAM Buffered: .1.3.6.1.4.1.2021.4.14.0
8)Total Cached Memory: .1.3.6.1.4.1.2021.4.15.0
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.4.15.0
UCD-SNMP-MIB::memCached.0 = INTEGER: 925712
9)内存使用率=5)/3);定时采集
5.网卡相关
1)网卡名
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.2.1.2.2.1.2
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0
2)网卡流入
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.2.1.2.2.1.10
IF-MIB::ifInOctets.1 = Counter32: 870740862
IF-MIB::ifInOctets.2 = Counter32: 3457556542
3)网卡流出
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.2.1.2.2.1.16
IF-MIB::ifOutOctets.1 = Counter32: 870741760
IF-MIB::ifOutOctets.2 = Counter32: 2091494672
4)当前流量,需要定时采集 2) 3)然后以量差/时间差得到
5)今日平均流量,计算方法同4)
6.磁盘空间使用率
1)磁盘名
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.9.1.3
UCD-SNMP-MIB::dskDevice.1 = STRING: /dev/sda1
UCD-SNMP-MIB::dskDevice.2 = STRING: proc
UCD-SNMP-MIB::dskDevice.3 = STRING: sysfs
UCD-SNMP-MIB::dskDevice.4 = STRING: devpts
UCD-SNMP-MIB::dskDevice.5 = STRING: tmpfs
UCD-SNMP-MIB::dskDevice.6 = STRING: none
UCD-SNMP-MIB::dskDevice.7 = STRING: sunrpc
2)Available space on the disk: .1.3.6.1.4.1.2021.9.1.7.1
3)Used space on the disk: .1.3.6.1.4.1.2021.9.1.8.1
4)Percentage of space used on disk: .1.3.6.1.4.1.2021.9.1.9.1
5)Percentage of inodes used on disk: .1.3.6.1.4.1.2021.9.1.10.1
7.磁盘IO
默认安装的snmpd不支持磁盘io的oid采集
需要编译时添加 --with-mib-modules=ucd-snmp/diskio参数
或者
1)下载地址snmpdiskio:
http://forums.cacti.net/download/file.php?id=5233&sid=a3d87578a1591299ad842588faec0b95
2)安装
install -m 0755 -o root -g root -p -v snmpdiskio /usr/local/bin/
3)将以下信息,增加到 snmpd.conf 中:
exec .1.3.6.1.4.1.2021.54 hdNum /usr/local/bin/snmpdiskio hdNum
exec .1.3.6.1.4.1.2021.55 hdIndex /usr/local/bin/snmpdiskio hdIndex
exec .1.3.6.1.4.1.2021.56 hdDescr /usr/local/bin/snmpdiskio hdDescr
exec .1.3.6.1.4.1.2021.57 hdInBlocks /usr/local/bin/snmpdiskio hdInBlocks
exec .1.3.6.1.4.1.2021.58 hdOutBlocks /usr/local/bin/snmpdiskio hdOutBlocks
4)重启snmpd
5)现在进行抓取
[root@xen187v ~/snmpdiskio-0.9.4]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.58
UCD-SNMP-MIB::ucdavis.58.1.1 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.58.2.1 = STRING: "hdOutBlocks"
UCD-SNMP-MIB::ucdavis.58.3.1 = STRING: "/usr/local/bin/snmpdiskio hdOutBlocks"
UCD-SNMP-MIB::ucdavis.58.100.1 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.58.101.1 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.2 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.3 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.4 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.5 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.6 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.7 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.8 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.9 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.10 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.11 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.12 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.13 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.14 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.15 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.16 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.101.17 = STRING: "3553508864"
UCD-SNMP-MIB::ucdavis.58.101.18 = STRING: "0"
UCD-SNMP-MIB::ucdavis.58.102.1 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.58.103.1 = ""
[root@xen187v ~/snmpdiskio-0.9.4]# snmpwalk 127.0.0.1 -c public -v 2c .1.3.6.1.4.1.2021.56
UCD-SNMP-MIB::ucdavis.56.1.1 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.56.2.1 = STRING: "hdDescr"
UCD-SNMP-MIB::ucdavis.56.3.1 = STRING: "/usr/local/bin/snmpdiskio hdDescr"
UCD-SNMP-MIB::ucdavis.56.100.1 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.56.101.1 = STRING: "ram0"
UCD-SNMP-MIB::ucdavis.56.101.2 = STRING: "ram1"
UCD-SNMP-MIB::ucdavis.56.101.3 = STRING: "ram2"
UCD-SNMP-MIB::ucdavis.56.101.4 = STRING: "ram3"
UCD-SNMP-MIB::ucdavis.56.101.5 = STRING: "ram4"
UCD-SNMP-MIB::ucdavis.56.101.6 = STRING: "ram5"
UCD-SNMP-MIB::ucdavis.56.101.7 = STRING: "ram6"
UCD-SNMP-MIB::ucdavis.56.101.8 = STRING: "ram7"
UCD-SNMP-MIB::ucdavis.56.101.9 = STRING: "ram8"
UCD-SNMP-MIB::ucdavis.56.101.10 = STRING: "ram9"
UCD-SNMP-MIB::ucdavis.56.101.11 = STRING: "ram10"
UCD-SNMP-MIB::ucdavis.56.101.12 = STRING: "ram11"
UCD-SNMP-MIB::ucdavis.56.101.13 = STRING: "ram12"
UCD-SNMP-MIB::ucdavis.56.101.14 = STRING: "ram13"
UCD-SNMP-MIB::ucdavis.56.101.15 = STRING: "ram14"
UCD-SNMP-MIB::ucdavis.56.101.16 = STRING: "ram15"
UCD-SNMP-MIB::ucdavis.56.101.17 = STRING: "sda1"
UCD-SNMP-MIB::ucdavis.56.101.18 = STRING: "md0"
UCD-SNMP-MIB::ucdavis.56.102.1 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.56.103.1 = ""
6)磁盘IO计算,定期采集hdInBlocks hdOutBlocks 差/时间差
8.系统进程数
[root@xen187v ~]# snmpwalk 127.0.0.1 -c public -v 2c HOST-RESOURCES-MIB::hrSystem
HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (328232276) 37 days, 23:45:22.76
HOST-RESOURCES-MIB::hrSystemDate.0 = STRING: 2013-11-6,12:7:38.0,+8:0
HOST-RESOURCES-MIB::hrSystemInitialLoadDevice.0 = INTEGER: 1536
HOST-RESOURCES-MIB::hrSystemInitialLoadParameters.0 = STRING: "ro root=/dev/sda1 "
HOST-RESOURCES-MIB::hrSystemNumUsers.0 = Gauge32: 6
HOST-RESOURCES-MIB::hrSystemProcesses.0 = Gauge32: 199
HOST-RESOURCES-MIB::hrSystemMaxProcesses.0 = INTEGER: 0
3、测试 snmpd v3 (使用用户名密码授信)
1.安装 snmpd v3
yum install -y net-snmp net-snmp-utils
2.配置snmp
vi /etc/snmp/snmpd.conf
输入
rouser user auth
(v3c的验证方式,添加一个只读帐号,如下:rouser user auth 上面 添加帐号的意思是:在v3c中,“rouser”用于表示只读帐号类型,随后的“user”是指定的用户名,后边的“auth”指明需要验证。)
3.添加snmp用户
vi /var/net-snmp/snmpd.conf
createUser user MD5 mypassword
(这行配置的意思是创建一个名为 “user”的用户,密码为“mypassword”,并且用MD5进行加密传输。这里要提醒的是,密码至少要有8个字节,这是SNMP协 议的规定,如果小于8个字节,通信将无法进行。)
4.启动snmp
service snmpd start
5. snmpwalk 测试
[root@xen188v ~]# snmpwalk -v3 -u user -l auth -a MD5 -A mypassword 127.0.0.1 HOST-RESOURCES-MIB::hrSystem |more
SNMPv2-MIB::sysDescr.0 = STRING: Linux xen188v.ops.corp.qihoo.net 2.6.18-308.24.1.el5xen #1 SMP Tue Dec 4 18:33:26 EST 2012 x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (5307) 0:00:53.07
SNMPv2-MIB::sysContact.0 = STRING: no
SNMPv2-MIB::sysName.0 = STRING: xen188v.ops.corp.qihoo.net
SNMPv2-MIB::sysLocation.0 = STRING: CN
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORID.1 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.2 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.3 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.4 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.5 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORID.6 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.7 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.8 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.3 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.5 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORDescr.6 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.8 = STRING: The management information definitions for the SNMP User-based Security Model.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (0) 0:00:00.00
IF-MIB::ifNumber.0 = INTEGER: 3
IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
6.随便取一项试试
[root@xen188v ~]# snmpwalk -v3 -u user -l auth -a MD5 -A mypassword 127.0.0.1 .1.3.6.1.2.1.2.2.1.2
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0
IF-MIB::ifDescr.3 = STRING: sit0
四。测试抓取snmpd v3数据1.抓取服务器基本信息【没问题】3.抓取机器负载【没问题】4.抓取内存使用率【没问题】 5.网卡相关【没问题】 6.磁盘空间使用率【没问题】 7.磁盘IO 1)下载地址snmpdiskio:http://forums.cacti.net/download/file.php?id=5233&sid=a3d87578a1591299ad842588faec0b952)安装install -m 0755 -o root -g root -p -v snmpdiskio /usr/local/bin/3)将以下信息,增加到 snmpd.conf 中:exec .1.3.6.1.4.1.2021.54 hdNum /usr/local/bin/snmpdiskio hdNum exec .1.3.6.1.4.1.2021.55 hdIndex /usr/local/bin/snmpdiskio hdIndex exec .1.3.6.1.4.1.2021.56 hdDescr /usr/local/bin/snmpdiskio hdDescr exec .1.3.6.1.4.1.2021.57 hdInBlocks /usr/local/bin/snmpdiskio hdInBlocks exec .1.3.6.1.4.1.2021.58 hdOutBlocks /usr/local/bin/snmpdiskio hdOutBlocks4)重启snmpd5)现在进行抓取没问题了 snmpwalk -v3 -u user -l auth -a MD5 -A mypassword 127.0.0.1 .1.3.6.1.4.1.2021.588.系统进程数[root@xen188v ~]# snmpwalk -v3 -u user -l auth -a MD5 -A mypassword 127.0.0.1 HOST-RESOURCES-MIB::hrSystemHOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (328613539) 38 days, 0:48:55.39HOST-RESOURCES-MIB::hrSystemDate.0 = STRING: 2013-11-6,15:6:44.0,+8:0HOST-RESOURCES-MIB::hrSystemInitialLoadDevice.0 = INTEGER: 1536HOST-RESOURCES-MIB::hrSystemInitialLoadParameters.0 = STRING: "ro root=/dev/sda1 "HOST-RESOURCES-MIB::hrSystemNumUsers.0 = Gauge32: 2HOST-RESOURCES-MIB::hrSystemProcesses.0 = Gauge32: 186
HOST-RESOURCES-MIB::hrSystemMaxProcesses.0 = INTEGER: 0