Zabbix4.0配置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的支持

      2c表示SNMP標准版本
      snmp推出了v1,v2,v3版本,你也可以 寫成1,表示使用1版本.上面的命令會獲取到一個SNMP的列表,包含鍵值,
      默認情況下我們snmp不加密,使用public作為共同體即可,這些列表中有你需要的一些監控數據.但是線上環境我們不可能獲取所有的鍵值
      如果需要獲取特定的數據,例如像獲取交換機第三個端口的入口流量,需要使用IF-MIB::ifInOctets.3字符串,如下:

      然后使用snmpget命令來獲取IF-MIB::ifInOctets.3的OID。命令如下

     最后一個數字3表示端口3,如果你想監控端口23那就寫上23. 請參考: Dynamic indexes.
     會輸出如下值:

     同理,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來獲取,如下命令:

其他:

    • 如果想使用snmp來監控,從源碼編譯安裝zabbix,一定要加上編譯參數--with-net-snmp
    • 從zabbix 2.2.3開始server和proxy都支持使用單個請求獲取多個值


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM