返回列表 发帖

Zabbix5.0.12_使用SNMP监控iKuai路由器(SNMPv3+SNMP OID)

当iKuai路由器使用SNMP v3:
图片1.png
注释:现在SNMP v3的安全级别是authNoPriv(认证但是不加密)

SNMP v3安全级别有三种,分别为noAuthNoPriv(不认证也不加密)、authNoPriv(认证但是不加密)、authPriv(既认证又加密)


实验中,iKuai路由器的IP地址、网卡:
图片2.png





######

在Zabbix服务器上检测与路由器的SNMP连通性:
[root@centos8 ~]# yum -y install net-snmp-utils net-snmp-libs net-snmp

查看被监控主机运行了多长时间:(IP地址后面的是SNMP OID)
[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authNoPriv 192.168.168.191 .1.3.6.1.2.1.25.1.1
HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (878929) 2:26:29.29
[root@centos8 ~]#

注释:
用户名: zhuohua
密码:  Jacky888a
SNMP v3的安全级别是authNoPriv(认证但是不加密)


查看被监控主机的版本信息等:
[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authNoPriv 192.168.168.191 1.3.6.1.2.1.1.1
SNMPv2-MIB::sysDescr.0 = STRING: Linux iKuai 3.18.67 #1 SMP Mon Jan 21 15:55:55 CST 2019 x86_64
[root@centos8 ~]#


[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authNoPriv 192.168.168.191 .1.3.6.1.2.1.25.2.2.0
HOST-RESOURCES-MIB::hrMemorySize.0 = INTEGER: 3896952 KBytes
[root@centos8 ~]#

注释:这里的返回值是以KB为单位。





######

Zabbix添加被监控主机:

配置〉〉主机〉〉创建主机:(主机名称无需与被监控主机的真实主机名一致;群组可以随便选)
图片3.png

Interfaces的类型移除“客户端”,添加“SNMP”:(指明被监控主机的IP地址;指明SNMP的版本,以下是使用SNMPv3,安全级别是authNoPriv;端口为UDP 161 )
图片4.png

页面太长,紧接的是下半部分:
图片5.png


主机Router_02添加成功:
图片6.png


给主机Router_02添加模板:(  Template OS Linux SNMP  )
图片7.png
注释:路由器系统其实也是Linux系统,使用Linux模板即可。


模板Template OS Linux SNMP添加成功:
图片8.png

图片9.png



######

查看模板Template OS Linux SNMP自带的图形:

监测》主机》左击选择主机Router_02》图形:
图片11.png

选择时间范围:
图片12.png


CPU使用率:
图片13.png

图片14.png



内存使用率:
图片15.png

图片16.png



网卡流量:(lan1
图片17.png

图片18.png
单位:
bps: 比特/秒
Kbps: 千比特/秒
Mbps: 兆比特/秒



网卡流量:(wan1
图片19.png

图片20.png



硬盘分区使用情况:(可以看到各个硬盘分区的大小、已使用量、使用率)
图片22.png

图片23.png

###
图片24.png

图片25.png

###
图片26.png

图片27.png





############
############

在Zabbix服务器上检测SNMP OID:
[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authNoPriv 192.168.168.191 IF-MIB::ifNumber.0
IF-MIB::ifNumber.0 = INTEGER: 9
[root@centos8 ~]#

[root@centos8 ~]# snmpget -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authNoPriv 192.168.168.191 IF-MIB::ifNumber.0
IF-MIB::ifNumber.0 = INTEGER: 9
[root@centos8 ~]#

注释:返回值为 9



创建一个新的监控项:
名称: aaa
键值: My_ifNumber.0
SNMP OID:  IF-MIB::ifNumber.0
图片28.png
注释:
键值是自定义的,SNMP OID要根据设备的实际情况去写;
这里的“单位”不会影响计算结果;



给监控项“aaa”创建图形:
图片29.png

监控项: Router_02: aaa
图片30.png
注释:可以自定义图形的绘画风格、颜色等等。



使用“过滤器”,查看主机Router_02的图形“aaa image”:
图片31.png

图片32.png

图片33.png





############
############

现在SNMP v3安全级别是authPriv(既认证又加密):
图片34.png


在Zabbix服务器上查看被监控主机运行了多长时间:(IP地址后面的是SNMP OID)
[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 .1.3.6.1.2.1.25.1.1
HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (1159839) 3:13:18.39
[root@centos8 ~]#

注释:
SNMP v3的安全级别是authPriv(既认证又加密)


[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 IF-MIB::ifNumber.0
IF-MIB::ifNumber.0 = INTEGER: 9
[root@centos8 ~]#

[root@centos8 ~]# snmpget -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 IF-MIB::ifNumber.0
IF-MIB::ifNumber.0 = INTEGER: 9
[root@centos8 ~]#



主机Router_02要更改一下:( 指明SNMP的版本,以下是使用SNMPv3,安全级别是authPriv
图片35.png

页面太长,紧接的是下半部分:
图片36.png



假如出现连接超时:( Timeout while connecting to "192.168.168.191:161". )
图片37.png


解决方法:
修改Zabbix服务器的Agent配置文件:
[root@centos8 ~]# vi /usr/local/zabbix/etc/zabbix_agentd.conf

### Option: Timeout
#       Spend no more than Timeout seconds on processing
#
# Mandatory: no
# Range: 1-30
# Default:
# Timeout=3

修改为:
Timeout=30


保存好配置文件后,重启一下Zabbix本机的客户端和服务端:
pkill -9 -U zabbix
/usr/local/zabbix/sbin/zabbix_agentd
/usr/local/zabbix/sbin/zabbix_server


正常了:
图片38.png



因为出现过连接超时,所以主机Router_02的图形出现间隔,但已经恢复正常:
图片39.png

图片40.png



System load:
图片41.png

图片42.png



CPU jumps:
图片43.png

图片44.png





############
############

在Zabbix服务器上检测SNMP OID:
[root@centos8 ~]# snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 .1.3.6.1.2.1.25.2.2.0
HOST-RESOURCES-MIB::hrMemorySize.0 = INTEGER: 3896952 KBytes
[root@centos8 ~]#

[root@centos8 ~]# snmpget -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 .1.3.6.1.2.1.25.2.2.0
HOST-RESOURCES-MIB::hrMemorySize.0 = INTEGER: 3896952 KBytes
[root@centos8 ~]#

注释:这里的返回值是以KB为单位。



再创建一个新的监控项:
名称: bbb
键值: bbb_key
SNMP OID:  .1.3.6.1.2.1.25.2.2.0
图片45.png
注释:键值是自定义的,SNMP OID要根据设备的实际情况去写。



给监控项“bbb”创建图形:
图片46.png

监控项: Router_02: bbb
图片47.png
注释:可以自定义图形的绘画风格、颜色等等。



使用“过滤器”,查看主机Router_02的图形“bbb image”:
图片48.png

图片49.png

图片50.png

笺注:在图形“bbb image”中可以看出监控项“bbb”的返回值默认是以字节为初始单位的,但SNMP OID“.1.3.6.1.2.1.25.2.2.0”的返回值是以KB为单位的,所以结果不匹配。



############

在Zabbix服务器使用Shell脚本获取SNMP OID“.1.3.6.1.2.1.25.2.2.0”的返回值,并把返回值乘以1024,从而把结果转换为以字节为单位:
[root@centos8 ~]# mkdir -p /script
[root@centos8 ~]#
[root@centos8 ~]# cat /script/xx.sh
#!/bin/bash
Key_1=`snmpwalk -v 3 -u zhuohua -a MD5 -A "Jacky888a" -l authPriv -x AES128 -X Jacky888ab 192.168.168.191 .1.3.6.1.2.1.25.2.2.0 |awk '{print $4}'`

Key_2=`expr $Key_1 \* 1024`
echo $Key_2


设置脚本权限:
[root@centos8 ~]# chmod a+x /script/xx.sh
[root@centos8 ~]#

脚本运行的结果:
[root@centos8 ~]# bash /script/xx.sh
3990478848
[root@centos8 ~]#



######

修改Zabbix服务器的Agent配置文件:
[root@centos8 ~]# vi /usr/local/zabbix/etc/zabbix_agentd.conf

# UnsafeUserParameters=0
修改为:(启用该功能)
UnsafeUserParameters=1

接着插入:
UserParameter=command_1,/bin/bash /script/xx.sh

如下图:
图片51.png


保存好配置文件后,重启一下Zabbix本机的客户端和服务端:
pkill -9 -U zabbix
/usr/local/zabbix/sbin/zabbix_agentd
/usr/local/zabbix/sbin/zabbix_server


在Zabbix服务器测试,验证能否获取本机(127.0.0.1)的键值:
[root@centos8 ~]# /usr/local/zabbix/bin/zabbix_get -s 127.0.0.1 -k command_1
3990478848
[root@centos8 ~]#



######

在Zabbix server(127.0.0.1)中创建一个新的监控项:
名称: ccc
键值: command_1
图片52.png
注释:这里的“单位”不会影响计算结果。



给监控项“ccc”创建图形:
图片53.png

监控项: Zabbix server: ccc
图片54.png
注释:可以自定义图形的绘画风格、颜色等等。



查看主机Zabbix server的图形“ccc image”:
图片55.png

使用“过滤器”:
图片56.png

图片57.png

图片58.png
笺注:监控项“ccc”的返回值是以字节为初始单位的,所以结果匹配。





######

给监控项“ccc”创建一个触发器:(返回值大于2000MB就告警)

自定义触发器名称: ccc is bigger than 2000MB
图片59.png

插入表达式:( 监控项 Zabbix server: ccc
图片60.png

自动生成的表达式:(触发器的表达式要用到监控项中的键值)
{Zabbix server:command_1.last()}>2000M
图片61.png

本页拖下去:
图片62.png



给监控项“ccc”添加了触发器“ccc is bigger than 2000MB”后,对应图形“ccc image”会自动发生改变:(多了一条告警线,多了一个触发器)
图片63.png

图片64.png



当监控项“ccc”的返回值大于2000MB时,仪表板会如下图显示:(显示对应触发器的名称)
ccc is bigger than 2000MB
图片65.png

图片66.png





######

再给监控项“ccc”创建一个触发器:(返回值大于3GB就告警)

自定义触发器名称: ccc is bigger than 3GB
图片67.png

插入表达式:( 监控项 Zabbix server: ccc
图片68.png

自动生成的表达式:(触发器的表达式要用到监控项中的键值)
{Zabbix server:command_1.last()}>3G
图片69.png

本页拖下去:
图片70.png



给监控项“ccc”添加了触发器“ccc is bigger than 3GB”后,对应图形“ccc image”会自动发生改变:(又多了一条告警线,又多了一个触发器)
图片71.png

图片72.png



当监控项“ccc”的返回值大于3GB时,仪表板会如下图显示:(显示对应触发器的名称)
ccc is bigger than 3GB
图片73.png

图片74.png





相关文章:
Zabbix5.0.12_使用SNMP监控iKuai路由器(SNMPv2c+SNMP OID)

Zabbix使用SNMP监控iKuai路由器(SNMPv3+SNMP OID)
Cacti使用SNMPv3监控Ubuntu18.04.5

返回列表