Zabbix 基于SNMP监控
1、介绍
- SNMP:简单网络管理协议;(非常古老的协议)
- 三种通信方式:读(get, getnext)、写(set)、trap(陷阱);
- 端口:
161/udp
162/udp
- SNMP协议:年代久远
v1: 1989
v2c 1993
v3: 1998
- 监控网络设备:交换机、路由器
- MIB:Management Information Base 信息管理基础
- OID:Object ID 对象ID
2、Linux 启用 snmp
[root@node1 ~]# yum install net-snmp net-snmp-utils
配置文件:定义ACL
[root@node1 ~]# vim /etc/snmp/snmpd.conf
启动服务:
[root@node1 ~]# systemctl start snmpd # 被监控端开启的服务
[root@node1 ~]# systemctl start snmptrapd # 监控端开启的服务(如果允许被监控端启动主动监控时启用)
3、配置文件的介绍
开放数据:4步
1、定义认证符,将社区名称"public"映射为"安全名称"
2、将安全名称映射到一个组名
3、为我们创建一个视图,让我们的团队有权利
掩码:我列出一些注释,有很多,可以再网上查询
.1.3.6.1.2.1.
1.1.0:系统描述信息,SysDesc
1.3.0:监控时间, SysUptime
1.5.0:主机名,SysName
1.7.0:主机提供的服务,SysService
.1.3.6.1.2.2.
2.1.0:网络接口数目
2.2.1.2:网络接口的描述信息
2.2.1.3:网络接口类型
……
4、授予对systemview视图的只读访问权
4、测试工具
[root@node1 ~]# snmpget -v 2c -c public HOST OID
[root@node1 ~]# snmpwalk -v 2c -c public HOST OID # 通过这个端口查询到的数据,全列出了
4、配置SNMP监控
1、下载,修改配置文件
[root@node1 ~]# vim /etc/snmp/snmpd.conf
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.2 # 网络接口的相关数据
view systemview included .1.3.6.1.4.1.2021 # 系统资源负载,memory, disk io, cpu load
view systemview included .1.3.6.1.2.1.25
2、在 agent 上测试
[root@node1 ~]# snmpget -v 2c -c public 192.168.30.2 .1.3.6.1.2.1.1.3.0
[root@node1 ~]# snmpget -v 2c -c public 192.168.30.2 .1.3.6.1.2.1.1.5.0
3、在监控页面,给node2加一个snmp的接口
4、在 node2 上加一个 Template OS Linux SNMPv2 模板
- 模板添加成功,生成一系列东西
- 点开一个item 看一下
5、生成一些最新数据的图形 graph了
5、设置入站出站packets 的SNMP监控
1、监控网络设备:交换机、路由器的步骤:
- 把交换机、路由器的SNMP 把对应的OID的分支启用起来
- 了解这些分支下有哪些OID,他们分别表示什么意义
- 我们要监控的某一数据:如交换机的某一个接口流量、报文,发送、传入传出的报文数有多少个;传入传出的字节数有多少个,把OID取出来,保存
2、定义入站出站的item监控项
interface traffic packets(in)
interface traffic packets(out)