日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

zabbix 监控项自动发现过滤_Zabbix5.2由浅入深之官方自动发现规则初探(网络篇)

發布時間:2023/11/27 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 zabbix 监控项自动发现过滤_Zabbix5.2由浅入深之官方自动发现规则初探(网络篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天的主題是官方模板的自動發現規則分析,在監控工作中常常會遇到一些可變化的OID值,也就是父OID+索引,而索引本身是變化的,如果監控設備數量固定,一個個寫問題不大,但在規模增加到一定程度手動添加已然不現實,而且不太靈活,所以官方在2.X版本后新增加自動發現規則功能。

正文

在開始之前呢,首先我們要了解什么樣的情況下需要用到自動規則,我舉個例子,以端口名稱為例。OID為1.3.6.1.2.1.31.1.1.1.1,該OID解釋如下。

OID介紹

用snmpwalk測試,順帶還是提下snmpwalk的使用方法吧,斜體為變量,也就是你自己的環境

snmpwalk -v snmp版本 -c 團體字密碼 IP地址 OID,如果沒有snmpwalk,CentOS需要裝net-snmp-utils,ubuntu環境需要裝snmp。

snmwalk -v 2c -c huawei@123?10.240.43.2 1.3.6.1.2.1.31.1.1.1.1

通過上圖我們看到查詢的結果有59條規則,如果用這個OID去加監控項一定有問題,得出是多個值,所以根本就不知道要檢查什么。所以自動發現規則應運而生。

Interfaces SNMP

Zabbix 5.2版本模板名稱叫Inerface SNMP,如果是5.2以下(不包含5.2)叫Template Module Interfaces SNMPv2。自動發現規則(Discover rules)位置如下圖紅框所示。

進入到該規則里

自動發現規則的內容與監控項很類似,需要注意的是SNMP OID項的固定格式

discovery[{#MACROS1},OID1,{#MACROS2},OID2....]
  • 名字(Name):自定義即可
  • 類型(Type):選擇SNMP AGENT
  • 鍵值(Key):其實也可以隨便寫,方便記,但是在同一臺設備里必須要保持唯一性。
  • SNMP OID:簡單來說就是設備里各個組件的編碼,例如windows里的注冊表
  • 更新周期(Update interval):多久更新一次,如果監控項需要發現,可以在被監控主機里點擊惡心excute now。
  • 自定義時間間隔(Custom intervals):可以更加靈活的控制更新
  • 資源周期不足(Keep lost resources period):這個中文翻譯有點問題,這里的意思是代表如果該監控選項無法發現了,什么時候取消監控,如下圖二

頁面內容

出現監控項無法自動發現保留周期

宏(Macros)

宏其實一直是zabbix比較關鍵的點,類似變量,格式為{$MACROS},值可以為文本,也可以為正則表達式,宏的名稱也可自己隨便取,例如下方的{$NET.IF.IFNAME.MATCHES}可以寫成{$IFNAME.MATCHES},后面的取值就隨意了,根據不同功能寫,例如這里的{$NET.IF.IFNAME.MATCHES}對應的應該是接口名稱,如果我只想匹配g0/0/1口,值就是g0/0/1,如果想匹配所有的g口,那值就是^g,關于正則表達式可以去百度上搜,有很多教程,不需要太復雜,能用就行。

該模板宏一覽

過濾器(Filters)

上篇我們講過,過濾器主要用于過濾一些不想要的規則,組成部分也很簡單,就計算類型和宏。那么我們來解析下該模板里的過濾器,一共包含12個(正反6類)分別是

  • {#IFADMINSTATUS}(端口管理狀態):是否為admin down
    {#IFALIAS}(端口描述)
    {#IFDESCR}(端口名稱)
    {#IFNAME}(端口名稱):這個和上面的重復了,理論上可以不要
    {#IFOPERSTATUS}(端口狀態):down還是up
    {#IFTYPE}(端口類型):是千兆口還是百兆口還是vlan啥的,文末我會貼出該例子的OID詳細解釋。

那么為什么需要用到這么多參數,其實挺簡單的,都是為優化監控項服務的,當然如果你的網絡設備配置都是標準化,那就沒這么折騰了,例如你的交換機上聯口都是固定的,那么過濾就只需要一項,{#IFNAME}的宏取值只用寫該端口即可。但是如果是非標,那么這些就大有用處了,你發現少一項就感覺很困難,我們一般篩選相關端口通過這4個維度

  • 端口名稱
  • 端口類型
  • 端口描述
  • 端口狀態

所以從這個角度思考,官方這個模板的自動發現規則的過濾器還是比較合理的。

過濾器一覽

監控原型

監控原型里面對的就是生成相對應的監控項,原版有9個,和端口相關指標息息相關,分別是端口入出流量、端口類型、端口狀態,端口入出錯包、端口入出丟包、端口速率,其中個人感覺端口類型沒有什么太大必要,當然有需要的可以監控起來。

原版監控原型一覽

以Interface {#IFNAME}({#IFALIAS}): Bits received這個為例,需要注意的是Key和SNMP OID都帶有{#SNMPINDEX}。

官方模板監控項原型一覽

通過主機上查看該接口,有一段描述,ifindex:5

主機獲取

通過snmpwalk原OID+5可以獲取到該接口的信息,那么到這里是不是就明白了自動發現規則的原理,其實zabbix里隱藏了兩個宏,一個叫{#SNMPINDEX},一個叫{#SNMPVALUE},其中snmpindex就是這些具備同OID多個取值后的索引,而SNMPVALUE就是這些多個索引對應的取值,以下圖為例,5為索引,10GE1/0/1為該索引的SNMPVALUE。Zabbix就是利用這個實現了自動發現規則的功能,當然代碼級別實現肯定不會這么簡單,但你要清楚前端的邏輯是什么,其次鍵值為什么要加這個,還記得我當初說的鍵值在同主機下要唯一,所以加上了該宏,保持鍵值唯一,其他的內容就基本沒啥講的

最終效果

最終發現效果

總結

寫了這么多,其實也為后面的制作自動規則服務的,其實大家可以大概的了解是怎么回事了,包括應用場景,可以想到還有框式設備多板卡,多CPU、Wlan等等,可以自己嘗試寫這些自動發現規則,簡單來說流程是找到相對應的OID---監控指標確定---宏的定義---定義過濾器的規則---創建自動發現規則---創建監控原型---創建觸發器---創建圖形,最后用在設備里。還是那句話:路漫漫其修遠兮,吾將上下而求索,我是IT小白Kasar,下期見!(下期制作自動發現規則)

附錄

ifName

ifHCInOctets

ifHCOutOctets

ifAlias

ifDescr

ifType

ifSpeed

ifInDiscards

ifInErrors

ifOutDiscards

ifOutErrors

總結

以上是生活随笔為你收集整理的zabbix 监控项自动发现过滤_Zabbix5.2由浅入深之官方自动发现规则初探(网络篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。