zabbix專題:第十章 zabbix之SNMP方式監控
(SNMP基本都是監控網絡設備,本文介紹點理論知識)
概述
如果我們需要監控打印機、路由器、UPS等設備,肯定不能使用zabbix agentd,因爲他們不能安裝軟件的,還好他們一般都支持SNMP協議,這樣我可以使用SNMP來監控他們.如果你希望使用SNMP agent來獲取這些設備的信息,那麼在安裝zabbix server的時候你需要增加snmp的支持.
備註:SNMP檢查基於UDP協議
配置SNMP監控
使用SNMP來監視設備,需要完成以下步驟
創建主機
創建一個使用SNMP接口的主機,創建主機過程中你可以選擇相應的模板,路由器、交換機這些設備的監控itme,zabbix已經默認自帶了找出你想監控的SNMP字符串(或者OID)
如果你想獲取SNMP字符串,你可以使用命令snmpwalk來實現,當然在安裝zabbix的時候你需要增加snmp的支持
# snmpwalk -v 2c -c public .
yum安裝snmp
[root@localhost ~]# yum install net-snmp* -y
snmp配置
[root@localhost ~]# vim /etc/snmp/snmpd.conf
view systemview included .1.3.6.1.2.1.25.1.1 //找到這行,增加下面配置
view systemview included .1 // 這個是新增加的
proc mountd // 找到這些配置,把註釋去掉
proc ntalkd 4
proc sendmail 10 1
disk / 10000
load 12 14 14
啓動snmpd
[root@localhost ~]# service snmpd start
通過snmp獲取數據
需要通過snmp獲取到數據,首先我們需要對應的OID 獲取主機名
[root@localhost ~]# snmpwalk -c public -v 2c 10.1.252.241 sysName
SNMPv2-MIB::sysName.0 = STRING: localhost.localdomain
[root@localhost ~]# snmpwalk -c public -v 2c 10.1.252.241 .1.3.6.1.2.1.1.5.0
SNMPv2-MIB::sysName.0 = STRING: localhost.localdomain
獲取服務器剩餘內存
[root@localhost ~]# snmpwalk -c public -v 2c 10.1.252.241 .1.3.6.1.4.1.2021.4.11.0
UCD-SNMP-MIB::memTotalFree.0 = INTEGER: 2222572 kB
[root@localhost ~]# snmpwalk -c public -v 2c 10.1.252.241 memTotalFree
UCD-SNMP-MIB::memTotalFree.0 = INTEGER: 2222572 kB