zabbix snmp类型 无需安装agent也能监控(51)

凉白开 zabbix1 85,2297字数 1740阅读5分48秒阅读模式

概述

如果我们需要监控打印机、路由器、UPS等设备,肯定不能使用zabbix agentd,因为他们不能安装软件的,还好他们一般都支持SNMP协议,这样我可以使用SNMP来监控他们.如果你希望使用SNMP agent来获取这些设备的信息,那么在安装zabbix server的时候你需要增加snmp的支持.

备注:SNMP检查基于UDP协议文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

注意事项

  • 如果监控基于SNMPv3协议的设备,确保msgAuthoritativeEngineID(通常叫做snmpEngineID 或“Engine ID”)是唯一的.
  • 以前SNMPv3协议只支持MD5和DES加密,从zabbix 2.2开始支持SHA与AES加密协议.

 文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

配置SNMP监控

使用SNMP来监视设备,需要完成以下步骤文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

1. 创建主机

创建一个使用SNMP接口的主机(请参考zabbix创建主机),创建主机过程中你可以选择相应的模板,路由器、交换机这些设备的监控itme,zabbix已经默认自带了文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

2. 找出你想监控的SNMP字符串(或者OID)

如果你想获取SNMP字符串,你可以使用命令snmpwalk来实现,当然在安装zabbix的时候你需要增加snmp的支持文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

# snmpwalk -v 2c -c public .

2c表示SNMP标准版本,snmp推出了v1,v2,v3版本,你也可以 写成1,表示使用1版本.上面的命令会获取到一个SNMP的列表,包含键值,默认情况下我们snmp不加密,使用public作为共同体即可,这些列表中 有你需要的一些监控数据.但是线上环境我们不可能获取所有的键值,如果需要获取特定的数据,例如像获取交换机第三个端口的入口流量,需要使用IF-MIB::ifInOctets.3字符串,如下:文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

IF-MIB::ifInOctets.3 = Counter32: 3409739121

然后使用snmpget命令来获取IF-MIB::ifInOctets.3的OID。命令如下文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

# snmpget -v 2c -c public -On 10.62.1.22 IF-MIB::ifInOctets.3

最后一个数字3表示端口3,如果你想监控端口23那就写上23. 请参考: Dynamic indexes.
会输出如下值:文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 3472126941

同理,OID的最后一个数字3表示端口号,要特别注意的是3COM的端口号1是101,3是是103,但是cisco还是不变,1号还是数字1.文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

创建监控项item

回 到zabbix的主机列表中,在你需要配置的主机那行,点击监控项item,在右上角点击“create item”,和普通的监控项创建方法差不多,仅有几个地方不同,type选择SNMP v2或者v1,v3,一般选择v2,snmp community使用默认的public,port不填写默认为161. SNMP OID写上OID,例如”.1.3.6.1.2.1.2.2.1.10.3"。然后其他内容和其他item type一样,然后保存即可。最后去看看是否获取到了数据。文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

简单实例

参数
Community:public
OID:1.2.3.45.6.7.8.0 (or .1.2.3.45.6.7.8.0)
Key: 例如sysName等,比OID好记文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

OID可以写数字也可以使用字符串. 然而,一些项目中,字符串OID需要转为数字格式,我们可以使用命令snmpget来获取,如下命令:文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

# snmpget -On localhost public enterprises.ucdavis.memory.memTotalSwap.0

其他

  • 如果想使用snmp来监控,从源码编译安装zabbix,一定要加上编译参数--with-net-snmp
  • 从zabbix 2.2.3开始server和proxy都支持使用单个请求获取多个值

下一节讲linux下的snmp安装配置.文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

zabbix snmp监控所有文章

1. zabbix snmp类型 无需安装agent也能监控(51)文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

2. snmp安装配置 zabbix snmp监控准备(52)文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

3. snmp v3的安全配置 snmp认证与加密配置(53)文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

4. SNMP OID列表 监控需要用到的OID 文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

5. zabbix单位符号Unit symbols(32)文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/ 文章源自运维生存时间-https://www.ttlsa.com/zabbix/zabbix-snmp-agent/

weinxin
我的微信
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~
凉白开
  • 本文由 发表于 24/11/2014 01:00:50
  • 转载请务必保留本文链接:https://www.ttlsa.com/zabbix/zabbix-snmp-agent/
  • Linux
  • nagios
  • snmp
  • snmp agent
  • zabbix
  • zabbix SNMP
  • 监控
评论  1  访客  1
    • Dave
      Dave 0

      大侠,可否碰到过,SNMP配置好了,也能监控到了。可第二天来看,SNMP是红色的,显示timeout。
      我用的是V3的协议。

    评论已关闭!