安装配置SNMP - linux oop.com.cn 开源技术学习 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > 计算机相关技术 > 操作系统 > Linux > 正文

安装配置SNMP

来源: 阅读:

一、SNMP介绍:

SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。

二、安装SNMP

1
2
centos、redhat命令:yum install net-snmp* -y
ubuntu、debian命令:apt-get install net-snmp* -y

三、配置SNMP

1)启动snmp服务:

1
2
# service snmpd start
Starting snmpd:                                            [  OK  ]

2)设置开机启动:

1
2
3
4
# chkconfig snmpd on
 
# chkconfig --list | grep snmpd (查看是否设置成功)
snmpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off

3)配置SNMP配置文件:

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

1
2
3
# snmpwalk -v 2c -c public localhost 1.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::ssCpuIdle.0 = No more variables left in this MIB View
(It is past the end of the MIB tree)

如上,无法获取CPU的空闲率(注:1.3.6.1.4.1.2021.11.11.0是主机CPU空闲率的oid)。这时候,若要获取主机的一些重要信息,则要修改snmp的默认配置。

配置方法:修改/etc/snmp/snmpd.conf文件

# vim /etc/snmp/snmpd.conf

找到以下信息:

1
2
3
4
5
6
# 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    systemview    included   .1 (修改如下信息)

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

1
2
3
4
5
6
7
# 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

(1)修改Process checks的配置

找到如下信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
###############################################################################
# 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

三行前的“#”号去掉,取消注释。

(2)修改Executables/scripts配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
###############################################################################
# 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

#exec echotest /bin/echo hello world

一行前的“#”号去掉,取消注释。

(3)修改disk checks配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
###############################################################################
# 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

一行前的“#”号去掉,取消注释。

(4)修改load average checks配置

1
2
3
4
5
6
7
8
9
10
11
12
13
###############################################################################
# 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

一行前的“#”号去掉,取消注释。

修改以上信息完成后,保存修改的文件退出,使用命令:service snmpd restart 重启snmp服务。

4)验证配置的SNMP:

1
2
# snmpwalk -v 2c -c public localhost 1.3.6.1.4.1.2021.11.11.0
UCD-SNMP-MIB::ssCpuIdle.0 = INTEGER: 99

如上,通过本机localhost获取到CPU的空闲率为99%。

TIPS:

设置Community,默认是public,可以自己设置,这样可以防止其他用户获取主机信息。找到:

1
2
3
4
5
6
7
8
9
10
11
12
####
# First, map the community name "public" into a "security name"
 
#       sec.name  source          community
com2sec notConfigUser  default       public
 
####
# Second, map the security name into a group name:
 
#       groupName      securityModel securityName
group   notConfigGroup v1            notConfigUser
group   notConfigGroup v2c           notConfigUser

以上的public可以自己设置。

四、设置监控宝获取snmp信息。

已经按照第三步方法配置完snmpd后,修改

1
2
3
4
5
6
7
8
9
10
11
12
####
# First, map the community name "public" into a "security name"
 
#       sec.name  source          community
com2sec notConfigUser  default       public
 
####
# Second, map the security name into a group name:
 
#       groupName      securityModel securityName
group   notConfigGroup v1            notConfigUser
group   notConfigGroup v2c           notConfigUser

为:

1
2
3
4
5
6
7
8
9
10
11
12
13
####
# First, map the community name "public" into a "security name"
 
#       sec.name  source          community
com2sec DaoBiDao  60.195.252.107  DaoBiDao-VPS
com2sec DaoBiDao  60.195.252.110  DaoBiDao-VPS
 
####
# Second, map the security name into a group name:
 
#       groupName      securityModel securityName
group   DBD            v1            DaoBiDao
group   DBD            v2c           DaoBiDao

community:设置获取snmp的验证口令

sec.name、securityName:类似设置用户

groupName:类似设置用户组

监控宝添加服务监控,配置内容如下图:

linux-snmp-installation-and-configuration-000

Tags:SNMP
相关文章列表: