自学Zabbix11.1 Zabbix 配置SNMP监控
自学Zabbix11.1 Zabbix 配置SNMP监控
1. 概述
zabbix采集数据方式:
- 基于专用agent
- 基于SNMP,net-snmp (nms/agent架构)
- 基于脚本(ssh)
如果我们需要监控打印机、路由器、UPS等设备,肯定不能使用zabbix agentd,因为它们不能安装软件的,但是它们一般都支持SNMP协议,这样我可以使用SNMP来监控他们。
如果你希望使用SNMP agent来获取这些设备的信息,那么在安装zabbix server的时候你需要增加snmp的支持。
备注:SNMP检查基于UDP协议
注意事项
- 如果监控基于SNMPv3协议的设备,确保msgAuthoritativeEngineID(通常叫做snmpEngineID 或“Engine ID”)是唯一的
- 以前SNMPv3协议只支持MD5和DES加密,从zabbix 2.2开始支持SHA与AES加密协议
2. 配置SNMP监控
使用SNMP来监视设备,需要完成以下步骤
2.1. 创建主机
创建一个使用SNMP接口的主机,创建主机过程中你可以选择相应的模板,路由器、交换机这些设备的监控itme,zabbix已经默认自带了。

2.2. 找出你想监控的SNMP字符串(或者OID)
如果你想获取SNMP字符串,你可以使用命令snmpwalk来实现,当然在安装zabbix的时候你需要增加snmp的支持
|
1
|
# snmpwalk -v 2c -c public .
|
2c表示SNMP标准版本
snmp推出了v1,v2,v3版本,你也可以 写成1,表示使用1版本.上面的命令会获取到一个SNMP的列表,包含键值,
默认情况下我们snmp不加密,使用public作为共同体即可,这些列表中有你需要的一些监控数据.但是线上环境我们不可能获取所有的键值
如果需要获取特定的数据,例如像获取交换机第三个端口的入口流量,需要使用IF-MIB::ifInOctets.3字符串,如下:
|
1
|
IF-MIB::ifInOctets.3 = Counter32: 3409739121
|
然后使用snmpget命令来获取IF-MIB::ifInOctets.3的OID。命令如下
|
1
|
# snmpget -v 2c -c public -On 10.62.1.22 IF-MIB::ifInOctets.3
|
最后一个数字3表示端口3,如果你想监控端口23那就写上23. 请参考: Dynamic indexes.
会输出如下值:
|
1
|
.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 3472126941
|
同理,OID的最后一个数字3表示端口号,要特别注意的是3COM的端口号1是101,3是是103,但是cisco还是不变,1号还是数字1.
2.3 创建监控项item
回 到zabbix的主机列表中,在你需要配置的主机那行,点击监控项item,在右上角点击“create item”,和普通的监控项创建方法差不多,仅有几个地方不同,type选择SNMP v2或者v1,v3,一般选择v2,snmp community使用默认的public,port不填写默认为161. SNMP OID写上OID。然后其他内容和其他item type一样,然后保存即可。最后去看看是否获取到了数据。



3. 简单实例
参数:
- Community:public
- OID:1.2.3.45.6.7.8.0 (or .1.2.3.45.6.7.8.0)
- Key: 例如sysName等
OID可以写数字也可以使用字符串. 然而,一些项目中,字符串OID需要转为数字格式,我们可以使用命令snmpget来获取,如下命令:
|
1
|
# snmpget -On localhost public enterprises.ucdavis.memory.memTotalSwap.0
|

其他:
- 如果想使用snmp来监控,从源码编译安装zabbix,一定要加上编译参数--with-net-snmp
- 从zabbix 2.2.3开始server和proxy都支持使用单个请求获取多个值
自学Zabbix11.1 Zabbix 配置SNMP监控的更多相关文章
- zabbix 配置SNMP监控
什么是SNMP? 简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol).数据库模型(database schema)和一组 ...
- 自学Zabbix11.5 Zabbix SNMP监控实例
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.5 Zabbix SNMP监控实例-监控网络设备内存使用情况 1. zabb ...
- 自学Zabbix11.4 Zabbix SNMP认证与加密配置 SNMPv3
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.4 Zabbix SNMP认证与加密配置 SNMPv3 1. 增加snmp ...
- 自学Zabbix11.6 Zabbix SNMP自定义OID
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.6 Zabbix SNMP自定义OID 为什么要自定义OID? 前面已经讲过 ...
- 自学Zabbix11.2 Zabbix SNMP安装
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.2 Zabbix SNMP安装 1. yum安装snmp 1 # yum i ...
- 自学Zabbix11.3 Zabbix SNMP 常用OID列表
点击返回:自学Zabbix之路点击返回:自学Zabbix4.0之路点击返回:自学zabbix集锦 自学Zabbix11.3 Zabbix SNMP 常用OID列表 点击获取CISCO设备OID 系统参 ...
- zabbix通过snmp监控网络设备
首先需要在zabbix的server端或proxy端安装snmpd服务 安装: yum -y install net-snmp* 查看版本: [root@Check3 ~]# snmpd -v NET ...
- zabbix通过snmp监控linux主机
1.安装net-snmp [root@db01 ~]# yum install -y net-snmp 2.修改配置文件 [root@db01 ~]# vim /etc/snmp/snmpd.conf ...
- zabbix通过snmp监控windows主机
1.开启Windows的snmp功能 2.配置snmp服务 设置snmp服务社区名称及允许的主机,设置完成后重启snmp服务 3.在zabbix server上测试 测试需要使用命令snmpwalk, ...
随机推荐
- sql server2016里面的json功能 - 转
测试一下基本的,从查询结果里面构造一个json 的格式 create table t1(ID int identity,name nvarchar(50),Chinese int ,Math int) ...
- c#基础系列2---深入理解 String
"大菜":源于自己刚踏入猿途混沌时起,自我感觉不是一般的菜,因而得名"大菜",于自身共勉. 扩展阅读:深入理解值类型和引用类型 基本概念 string(严格来说 ...
- OC与JS的交互(iOS与H5混编)
大神总结WKWebView的坑:https://mp.weixin.qq.com/s/rhYKLIbXOsUJC_n6dt9UfA 在开发过程中,经常会出现需要iOS移动端与H5混编的使用场景. iO ...
- ACM找bug方案
测试数据和一些常见的数据都通过了然而还是wrong,可以试试下面的一些解决方案: 1.数据爆掉 ① 可以改变数据类型,以容纳 ② 修改当前算法,比如a*a/b可以改写成a/b*a 2 特殊情况,例 ...
- Linux内核分析 笔记八 进程的切换和系统的一般执行过程 ——by王玥
一.进程切换的关键代码switch_to的分析 (一)进程调度与进程调度的时机分析 1.不同类型的进程有不同的调度需求 第一种分类: I/O-bound:频繁地进行I/O,花费很多的时间等待I/O操作 ...
- 《Linux内核》第七周 进程的切换和系统的一般执行过程 20135311傅冬菁
进程的切换和系统的一般执行过程 一.内容总结与分析 进程调度与进程调度时机 进程调度需求的分类: 第一种分类方式: I/O -bound(频繁进行I/O,通常会花很多时间等待I/O操作) CPU-bo ...
- 关于QQ的NABCD模型
关于QQ的NABCD模型 N--Need 随着电脑的普及,人们在网络上进行交流的时间越来越多,由于现有的交流工具还不是那么的完善,还不能够完全满足人们在交流时的需求.因此为了满足人们更多的需求,我们设 ...
- Python学习笔记 -- 第四章
高阶函数 变量可以指向函数 f=abs f(-10) 10 变量f指向abs函数,直接调用abs()函数和调用f()完全相同 传入参数 变量可以指向函数,函数的参数可以接收另一个函数的参数,这种函数成 ...
- vue js 在组件中对数组使用splice() 遇到的坑。。。
遇到的问题: 用el-dialog写了个子组件 要实现在子组件中增删数据 点击确定后把值返回给父组件 父组件在每次点开子组件时都会把自己的值传进去. //父组件传值 this.$refs.transf ...
- c++中常见概念、关键字等的区别
(1).重载,覆盖和隐藏的区别: 重载主要是函数的重载,函数名相同,返回类型相同,但是函数形参不同,被调用时,根据函数形参决定调用原函数还是重载函数. 覆盖主要用在继承多态中,函数前加virtual关 ...