優點:
-
支持多平台的企業級分布式開源監控軟件
-
安裝部署簡單,多種數據采集插件靈活集成
-
可實現復雜多條件告警
-
自帶圖畫功能,可將得到的數據繪制成圖形
-
提供多種API接口,支持調用腳本
-
出現問題時可以自動遠程執行命令(需要對agent設置執行權限)
缺點:
-
項目批量修改不方便
-
中文資料少,服務支持有限
-
入門容易,但是深沉次需求需要非常熟悉zabbix並進行大量的二次開發,難度較大
-
系統級別告警、告警郵件、自定義項目告警需要自己設置,過程繁瑣
-
缺少數據匯總功能,數據報表也需要進行二次開發
1、Zabbix Server
2、Zabbix Database Storage
主要用於存儲數據,所有配置信息和Zabbix收集到的數據都被存儲在數據庫中。常用的存儲設備有MySQL、Oracle、SQLite等。
3、Zabbix Web 界面
這是Zabbix提供的GUI接口,通常(但不一定)與Zabbix Server運行在同一台物理機器上。
4、Zabbix Proxy代理服務器
這是一個可選組件,常用於分布監控環境中,代理Server可以替Zabbix Server收集性能和可用性數據,匯總后統一發往Zabbix Server端。
5、Zabbix Agent監控代理
Zabbix Agent部署在被監控主機上,能夠主動監控本地資源和應用程序,並負責收集數據發往Zabbix Server端或Zabbix Proxy端。
在zabbix監控系統中,有一些常用的術語,這些術語可能和其它監控系統的叫法不同,但含義相同,這里做下簡單介紹。
主機(host)
表示要監控的一台服務器或者網絡設備,可以通過IP或主機名指定。
主機組(host group)
監控項(item)
表示一個監控的具體對象,例如監控服務器的CPU負載、磁盤空間等,item是zabbix進行數據收集的核心,相對某個監控對象,每個item都由"key"來標識
觸發器(trigger)
其實就是一個監控閾值表達式,用於評估某監控對象接收到的數據是否在合理范圍內;如果接收的數據大於閾值時,觸發器狀態將從"OK"轉變為"Problem",當接收到的數據低於閾值時,又轉變為"OK"狀態。
應用集(Applications)
一組監控項組成的邏輯集合。
動作(action)
指對於監控中出現的問題事先定義的處理方法,例如發送通知,何時執行操作、執行的頻率等等;
報警媒介類型(media)
表示發送通知的手段,告警通知的途徑,如Email、Jabber或者SMS等;
模板(template)
一組可以被應用到一個或多個主機上的實體集合,一個模板通常包含了應用集、監控項、觸發器、圖形、聚合圖形、自動發現規則、Web場景等幾個項目;模板可以直接鏈接到某個主機。 模板是學習zabbix的一個難點和重點,為了實現批量、自動化監控,通常會將具有相同特征的監控項匯總到模板中,然后在主機中直接引用即可,實現快速監控部署。