聊聊Zabbix 自動發現
哈嘍大家好,我是咸魚
昨天老大讓我初始化一批服務器,吭哧吭哧弄完之后需要把這批機器添加到 zabbix 上去
但是我發現一臺一臺添加效率好低,而且特別繁瑣,當時我沒有想出有什么好的方法,今天上網搜了一下相關資料之后,發現 zabbix 還有個自動發現功能
手動添加監控主機的效率會非常低下,而 Zabbix 的自動發現功能可以幫助減輕工作量,提高效率
自動發現(Auto Discovery)是 Zabbix 的一個重要功能之一,它通過 Zabbix 自動掃描網絡或設備,檢測到新的主機或服務時自動添加到監控系統中
自動發現允許系統管理員輕松地動態添加、監控新的主機和服務,而不需要手動配置監控項
那么我們來看看如何通過 zabbix 的自動發現功能來實現自動地添加新主機吧
1.添加自動發現規則
首先我們登錄 zabbix 的 web 界面(以我為例,我的 zabbix-server 版本為 Zabbix 6.4.2,不同 zabbix 版本界面會不一樣)
然后左側點擊 Data collection ——> Discovery 進入到自動發現界面
圖片
配置自動發現規則
圖片
圖片
2.添加自動發現動作
自動發現規則是不過是去掃描對應機器,我們還需要為其添加相應的動作(即掃描到這個機器之后下一步該干什么)
首先左側Alerts ——> Actions——> Discovery actions ,然后右上角點擊新建動作
圖片
【動作執行的條件】選擇前面我們定義的【自動發現規則】
圖片
接著我們去配置動作的內容(即【要干什么】)
圖片
圖片
自動發現規則和動作觸發器添加完畢后,zabbix-server 會周期對指定網段進行掃描,當發現符合檢查的主機后就會觸發相關的動作,主機就會被自動添加
ps.出現告警
添加完之后,我發現 zabbix-server 有告警
圖片
圖片
看告警信息我們可以得知 discovery 進程的使用率超過了 75%
需要注意的是:每個 discovery 任務在一定時間內會占用一個 discovery 進程
先看一下 zabbix-server 配置文件( zabbix_server.conf ),發現默認配置只有 1 個 discovery(被注釋,默認生效)
而且我配置的自動發現間隔太短了(間隔為 2s),導致 discovery 進程的使用率在短時間內急劇上升,從而觸發了告警
如何解決?
方法一:延長掃描間隔
通過延長掃描間隔時間來降低平均時間內進程的占用率
方法二:把 discovery 進程數量調高
編輯 zabbix server 配置文件 /etc/zabbix/zabbix_server.conf
找到 StartDiscoverers,把注釋去掉,值給個 2 或者 3 即可,然后重啟 zabbix server 服務
圖片