Zabbix系統數據採集方法總結

轉:http://www.blog.chinaunix.net/uid-9411004-id-4115731.htmlhtml

老文章,直接拿來用了,官網也有最新分類,沒高興翻譯數據庫

在Zabbix系統中有多達十三種數據採集方法,每種方法所使用的原理和場景也不同。下表列出了這十三種數據採集方法的原理及適合的場景。編程

序號安全

方法名稱服務器

描述網絡

1架構

經過Zabbix被監控設備代理(agent)採集數據框架

在被監控設置安裝並運行zabbix被監控設備代理進程(Zabbix系統自帶的一個組件。在編譯配置選項帶--enable-agent選項。)經過該進程收集監控項目的數據,並與Zabbix服務器或監控服務器代理(Proxy)通訊,主動發送或被動接受服務器或服務器代理查詢的數據採集方式。這種方法只適用於採集服務器或工做站上的監控數據,不適合採集路由器、交換機、防火牆等網絡設備的監控數據。tcp

2性能

簡單檢查

這種數據採集方法是指Zabbix服務器(也包括服務器代理)自身經過檢查被監控設備的tcp端口狀態或ICMP的信息來獲取監控數據的數據採集方法。不須要在被監控設備上安裝任何第三方軟件。可是,這種方法只適合收集像服務的端口狀態等狀態數據,不適合採集性能方面的數據。

3

經過SNMP協議採集數據

 

即經過SNMP的查詢和陷入進行監控數據的採集。適合對網絡設備,如防火牆、交換機、路由器等的監控數據的採集。目前Zabbix系統支持SNMP v1 SNMP v2c和SNMP v3版本的協議。經過SNMP協議採集數據不須要在被監控設備上安裝任何第三方軟件,可是須要配置和開啓SNMP服務,並容許監控服務器查詢。這個是咱們目前使用比較多的數據採集方法。缺點是,其通訊協議走的UDP協議,傳輸爲不可靠傳輸,因此存在丟數據的現象。同時,MIB庫通常是跟被監控設備有關,不適合監控自定義的項目。

4

Zabbix系統內部數據採集

 

Zabbix系統內部數據採集方法就是採集和監控Zabbix系統自身狀態和性能數據的方法。Zabbix系統內部數據採集方法是由Zabbix服務器端經過計算獲取的,因此這種數據採集方法不須要安裝任何的客戶端。這個數據採集方法只適用於Zabbix服務器自身的監控,不適用其它設備和主機。主要用於監控Zabbix系統自身的問題。

5

Zabbix陷入

 

Zabbix陷入是指在被監控主機上定時的執行特定的程序或命令,主動向Zabbix系統的服務器端或服務器代理端發送被監控項目的數據的數據採集方法。所以,Zabbix陷入是一種主動模式的數據採集方法,即由被監控主機定時或週期的向Zabbix系統的服務器端或服務器代理端發送所採集到的數據。這個數據採集方法通常只適用於服務器、工做站等咱們能夠在其上安裝和部署腳本程序的設備。這個數據採集方法能夠採集咱們本身定義的個性化的監控項目。缺點是須要本身編寫腳本和程序,因此對編程能力有必定的要求。

6

數據聚合

 

所謂數據聚合(在Zabbix前臺的數據採集型中稱之爲Aggregate Checks)是指並不直接從被監控主機上採集監控數據,而是指根據已定義的監控項目上採集的數據經過必定的計算方法複合出新的監控項目的數據。適合於跨多個被監控設備的數據彙總計算,以生成新監控項目。

7

經過腳本採集數據

 

這種數據採集方法其實很簡單,即由Zabbix服務器端進程根據配置信息,按計劃地執行指定的腳本程序或命令,而後俘獲腳本程序或命令的輸出內容爲對應監控項目的值。這種方法也要求有必定的編程能力。同時,由於腳本是在Zabbix服務器端執行的,因此要求被監控設備要給Zabbix服務器端必定的受權,存在必定的安全風險。

8

數據庫監控

數據庫監控採集方法的原理就是,Zabbix服務器進程直接經過ODBC接口技術,查詢各類不一樣類型的數據庫裏的數據,以採集須要的數據內容。由此咱們能夠看出,數據庫監控是一種經過直接操做被監控系統數據庫的方法來採集數據的。所以,這種數據採集方法能夠採集應用層面的性能數據,能夠監控個性化的項目。同時,由於這個方法是使用了ODBC技術,因此它能夠支持的數據庫種類很是多,幾乎支持市場上主流的數據庫。缺點是,Zabbix系統中只能支持的SQL語句,不能嵌套。

9

經過IPMI代理採集數據

 

智能平臺管理接口(IPMI,Intelligent Platform Management Interface),是管理基於Intel架構的企業系統中所使用的外圍設備所採用的一種工業標準。經過這種方法採集數據的優勢是:它能夠採集到其它方法沒法採集到的硬件狀態信息,例如CPU溫度、風扇轉數等等。缺點是,須要被監控硬件可以支持。而這個通常在購買服務器(這種方法通常只適用於服務器)時是須要單獨購買控制卡的。

10

經過SSH協議採集數據

 

經過SSH協議採集的原理很簡單,zabbix服務器端或服務器代理端根據配置,使用SSH協議鏈接到被監控主機上,而後在被監控主機上執行用戶配置的命令序列或者指定的腳本,Zabbix服務器端或服務器代理端捕獲被執行的命令序列或腳本程序所返回的結果做爲被監控項目所採集的數據。因此,這種方法能夠採集到咱們所須要的個性化的數據。缺點是須要有必定的編程能力,以及被監控設備和Zabbix服務器之間須要經過公鑰私鑰驗證。

11

經過TELNET協議採集數據

 

與「經過SSH協議採集數據」方法是相似的,只是這種方法走的是TELNET協議,因此安全要更低。

 

12

經過JMX協議採集數據

JAVA管理擴展(JMX,Java Management Extensions)是一個可做爲應用程序、設備和系統等植入管理功能的框架。簡單地說,JMX框架在不對現有的應用作修改的狀況下植入到現有的應用中,以對現有的應用的運行狀況進行管理。這種方法通常只適用於採集JAVA應用的數據,而不太適合採集系統級的甚至硬件級的監控數據。要求被監控設備上必須安裝JAVA環境,同是啓動相應的服務。

13

經過計算的方法採集監控數據

 

經過計算的方法獲取監控數據,顧名思義就是將現有的多個被監控項目上所採集的數據進行必定的計算,從而獲取新的數據的數據採集方法。這種數據採集方法與「數據聚合」有相同之處也有不一樣之處,相同之處是這兩個方法本質上都是對現有的監控項目所採集到的數據進行復合計算,以得到新的須要監控的數據。不一樣之處是,這個方法通常只針對單臺被監控設備內部不一樣項目的數據進行計算,不跨主機計算。這種方法咱們目前有少許在使用。

相關文章
相關標籤/搜索