一 Zabbix簡介 1.1 概述 Zabbix是一個企業級的高度集成開源監控軟體,提供分散式監控解決方案。可以用來監控設備、服務等可用性和性能。 1.2 所支持監控方式 目前由zabbix提供包括但不限於以下事項類型的支持 二 Zabbix優勢 自由開放源代碼產品,可以對其進行任意修改和二次開發, ...
一 Zabbix簡介
1.1 概述
Zabbix是一個企業級的高度集成開源監控軟體,提供分散式監控解決方案。可以用來監控設備、服務等可用性和性能。1.2 所支持監控方式
目前由zabbix提供包括但不限於以下事項類型的支持1 Zabbix agent checks #這些客戶端來進行數據採集,又分為Zabbix agent(被動模式:客戶端等著伺服器端來要數據),Zabbix agent (active)(主動模式:客戶端主動發送數據到伺服器端) 2 SNMP agent checks #SNMP方式,如果要監控印表機網路設備等支持SNMP設備的話,但是又不能安裝agent的設備。 3 SNMP traps 4 IPMI checks #IPMI即智能平臺管理介面,現在是業界通過的標準。用戶可以利用IPMI監視伺服器的物理特性,如溫度、電壓、電扇工作狀態、電源供應以及機箱入侵等。 5 Simple checks #簡單檢查,選擇此方式後icmping主機判斷主機是否存活 6 VMware monitoring #VMware監控 7 Log file monitoring #監控日誌文件 8 Calculated items #監控項的計算 9 Zabbix internal checks #內部檢查允許監控Zabbix的內部流程。 換句話說,您可以監視與Zabbix伺服器或Zabbix代理到底發生了什麼。 10 SSH checks #SSH檢查。Zabbix伺服器必須執行SSH檢查最初的配置SSH2的支持。 11 Telnet checks #Telnet檢查。Telnet檢查表現為缺少代理的監控。 Zabbix代理不需要遠程登錄檢查。 12 External checks #Zabbix伺服器執行的外部檢查是檢查通過運行shell腳本或二進位。外部檢查不需要任何代理被監控主機上運行。 13 Aggregate checks #總體檢查Zabbix伺服器通過直接從項目收集彙總信息資料庫查詢。 14 Trapper items #陷阱項目接受傳入的數據,而不是查詢它。對於您可能要“推”到Zabbix的任何數據都是有用的。 15 JMX monitoring #java管理擴展,是java平臺上為應用程式、設備、系統等植入管理功能的框架。JMX可以跨越一系列異構操作系統平臺、系統體系架構和網路傳輸協議,靈活地開發無縫集成的系統、網路和服務管理應用。 16 ODBC checks #ODBC監控對應資料庫監控Zabbix前端項目類型。ODBC是一個C編程語言中間件API用於訪問資料庫管理系統(DBMS)。 ODBC的概念是由微軟,後來移植到其他平臺。
二 Zabbix優勢
- 自由開放源代碼產品,可以對其進行任意修改和二次開發,採用GPL協議;
- 安裝和配置簡單;
- 搭建環境簡單,基於開源軟體構建平臺;
- 完全支持Linux、Unix、Windows、AIX、BSD等平臺,採用C語言編碼,系統占用小,數據採集性能和速度非常快;
- 數據採集持久存儲到資料庫,便於對監控數據的二次分析;
- 非常豐富的擴展能力,輕鬆實現自定義監控項和實現數據採集;
三 Zabbix架構及服務
3.1 部署架構
Client/Server:通用架構 Client/Node/Server和Client/Proxy/Server:分散式架構,Zabbix-Server將採集的數據持久的存儲到資料庫中,前端UI展示,Agent採集數據是,Proxy做代理,Server處理數據。 採集方式:SNMP、SSH、Telent、IPMI等多種協議。3.2 相關服務
- zabbix_server:Zabbix服務端的核心程式;
- zabbix_proxy:Zabbix代理服務程式,用於分散式監控proxy模式中;
- zabbix_agent(d):Zabbix專用客戶端程式(守護進程),收集客戶端數據;
- zabbix_java_gateway:Zabbix的Java採集服務端,用於JMX的監控方式;
- zabbix_sender:Zabbix的trapping模式,將採集到的數據通過定時任務主動發送給zabbix_server;
- zabbix_get:Zabbix的一個數據獲取測試命令。
四 Zabbix運行流程
五 Zabbix特性
5.1 數據收集
- 可用、性能檢測;
- 支持Agent、SNMP、SSH、Telnet等;
- 自定義的檢測;
- 自定義收集數據的頻率;
- 服務端/代理端和客戶端模式。
5.2 靈活的觸發器
- 可用定義非常靈活的告警閥值和多種告警相關聯的條件。
5.3 高度可定製的告警
- 發送通知,告警級別、動作升級、收件人和媒體類型;
- 通知可用使用遠程命令的自動調用和執行。
5.4 實時的繪圖功能
- 監控項將數據實時繪製在圖形上。
5.5 Web監控能力
- Zabbix可用模擬瀏覽器請求一個網站,並檢查返回值和響應時間。
5.6 多種可視化展示
- 自定義監控的展示圖,將多種監控數據集中展示到一張圖中;
- 網路拓撲圖;
- 自定義的Screens和Slide shows將多種圖形集中展示;
- 報表功能;
- 資源使用情況的監控展示。
5.7 歷史數據的存儲
- 數據存儲在資料庫中;
- 歷史數據的存放周期可配置;
- 定期刪除過期的歷史數據。
5.8 配置簡易
- 第一步:添加設備
- 第二步:應用模板即可完成監控
5.9 使用模板
- 模板可以分組;
- 模板具有可繼承性。
5.10 網路發現
- 支持自動發現網路設備和伺服器;
- Agent自動註冊;
- 支持自動發現實時動態監控項的批量監控,自動發現文件系統、網路介面、SNMP OID。
5.11 快速的訪問介面
- Web頁面基於PHP;
- 遠程訪問;
- 日誌審計。
5.12 API功能
- 應用API功能可以方便地和其他系統結合,包括手機客戶端的使用。
5.13 系統許可權
- 不同的用戶展示監控的資源不同;
- 對用戶的身份認證。
5.14 程式特性
- 用C語言編寫,其性能和記憶體開銷非常小。
5.15 大型環境的支持
- 利用Zabbix-Proxy方式即可輕鬆構建遠程監控。