在RedHat Linux系统中安装和配置snmp服务

检查系统是否安装snmp服务

# rpm -qa|grep snmp
net-snmp-5.3.2.2-17.el5
net-snmp-perl-5.3.2.2-17.el5
net-snmp-devel-5.3.2.2-17.el5
net-snmp-libs-5.3.2.2-17.el5
net-snmp-utils-5.3.2.2-17.el5
net-snmp-libs-5.3.2.2-17.el5
net-snmp-devel-5.3.2.2-17.el5

SNMP服务安装后会有以上安装包


安装SNMP服务

1.配置好本地yum服务,使用yum安装

   yum install -y net-snmp*

2.配置SNMP服务开机启动

  #chkconfig snmpd on
  #chkconfig --list | grep snmpd  查看开机启动设置是否成功
  snmpd           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

验证SNMP服务

1.使用snmpwalk获取主机名

 # snmpwalk -v 2c -c public localhost sysName.0
 SNMPv2-MIB::sysName.0 = STRING: wh69
 snmpwalk使用方法
 snmpwalk -v 1|2c|3(代表SNMP版本号) -c <community string> IP地址 OID(对象标示符)

2.使用snmptranslate命令,检查snmp工具能否够使用

 # snmptranslate -To | head
 .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
查出了部分oid,则表示snmp工具能够正常使用

配置SNMP服务

1.配置SNMP连接字符串 community string

  #vi /etc/snmp/snmpd.conf
  改动以下字段
#       sec.name  source          community
com2sec notConfigUser  default    public
改动public为自定义的community string

2.改动查看设备节点权限 

在配置文件/etc/snmp/snmpd.conf中找到例如以下位置
####
# Third, create a view for us to let the group have rights to:


# Make at least  snmpwalk -v 1 localhost -c public system fast again.
#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
view:定义了能够查看哪些节点设备的信息。
snmp默认配置仅仅能查看.1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1节点下的设备信息,
而主机CPU和内存等设备都不在这些节点下。所以无法获取这些数据。
因此,能够改动这个配置,例如以下:
####
# Third, create a view for us to let the group have rights to:


# Make at least  snmpwalk -v 1 localhost -c public system fast again.
#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
在此处加入了一行:
view    systemview    included   .1
表示能够查看.1节点下的全部设备信息。 

3.改动Process checks的配置

在配置文件/etc/snmp/snmpd.conf中找到例如以下位置
###############################################################################
# Process checks.
#
#  The following are examples of how to use the agent to check for
#  processes running on the host.  The syntax looks something like:
#
#  proc NAME [MAX=0] [MIN=0]
#
#  NAME:  the name of the process to check for.  It must match
#         exactly (ie, http will not find httpd processes).
#  MAX:   the maximum number allowed to be running.  Defaults to 0.
#  MIN:   the minimum number to be running.  Defaults to 0.


#
#  Examples (commented out by default):
#


#  Make sure mountd is running
#proc mountd


#  Make sure there are no more than 4 ntalkds running, but 0 is ok too.
#proc ntalkd 4


#  Make sure at least one sendmail, but less than or equal to 10 are running.
#proc sendmail 10 1
去除
#proc mountd
#proc ntalkd 4
#proc sendmail 10 1

这三行前面的#号,取消凝视

4.改动Executables/scripts配置

在配置文件/etc/snmp/snmpd.conf中找到例如以下位置
###############################################################################
# Executables/scripts
#


#
#  You can also have programs run by the agent that return a single
#  line of output and an exit code.  Here are two examples.
#
#  exec NAME PROGRAM [ARGS ...]
#
#  NAME:     A generic name.
#  PROGRAM:  The program to run.  Include the path!
#  ARGS:     optional arguments to be passed to the program


# a simple hello world


#exec echotest /bin/echo hello world


# Run a shell script containing:

#exec echotest /bin/echo hello world
前面的#去掉,取消凝视

5.改动disk checks配置

在配置文件/etc/snmp/snmpd.conf中找到例如以下位置

###############################################################################
# disk checks
#

# The agent can check the amount of available disk space, and make
# sure it is above a set limit.  

# disk PATH [MIN=100000]
#
# PATH:  mount path to the disk in question.
# MIN:   Disks with space below this value will have the Mib's errorFlag set.
#        Default value = 100000.

# Check the / partition and make sure it contains at least 10 megs.

#disk / 10000

#disk / 10000
前的#号去掉。取消凝视

6.改动load average checks配置

在配置文件/etc/snmp/snmpd.conf中找到例如以下位置
###############################################################################
# load average checks
#


# load [1MAX=12.0] [5MAX=12.0] [15MAX=12.0]
#
# 1MAX:   If the 1 minute load average is above this limit at query
#         time, the errorFlag will be set.
# 5MAX:   Similar, but for 5 min average.
# 15MAX:  Similar, but for 15 min average.


# Check for loads:
#load 12 14 14

#load 12 14 14
前的#去掉。取消凝视

7.保存改动,重新启动snmp服务

#service snmpd restart

8.验证改动配置后的snmp服务

# snmpwalk -v 2c -c xindixindi localhost 1.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::ssCpuIdle.0 = INTEGER: 99
如上,通过本机localhost获取到CPU的空暇率为99%

完毕配置

如今能够在solarwinds和Cacti等监控系统中,通过SNMP服务监控该linuxserver了。





posted @ 2019-05-01 20:49  ldxsuanfa  阅读(1579)  评论(0编辑  收藏  举报