轉:http://www.blog.chinaunix.net/uid-9411004-id-4115731.html
老文章,直接拿來用了,官網也有最新分類,沒高興翻譯
在Zabbix系統中有多達十三種數據采集方法,每種方法所使用的原理和場景也不一樣。下表列出了這十三種數據采集方法的原理及適合的場景。
序號 |
方法名稱 |
描述 |
1 |
在被監控設置安裝並運行zabbix被監控設備代理進程(Zabbix系統自帶的一個組件。在編譯配置選項帶--enable-agent選項。)通過該進程收集監控項目的數據,並與Zabbix服務器或監控服務器代理(Proxy)通信,主動發送或被動接受服務器或服務器代理查詢的數據采集方式。這種方法只適用於采集服務器或工作站上的監控數據,不適合采集路由器、交換機、防火牆等網絡設備的監控數據。 |
|
2 |
簡單檢查 |
這種數據采集方法是指Zabbix服務器(也包括服務器代理)自身通過檢查被監控設備的tcp端口狀態或ICMP的信息來獲取監控數據的數據采集方法。不需要在被監控設備上安裝任何第三方軟件。但是,這種方法只適合收集像服務的端口狀態等狀態數據,不適合采集性能方面的數據。 |
3 |
|
即通過SNMP的查詢和陷入進行監控數據的采集。適合對網絡設備,如防火牆、交換機、路由器等的監控數據的采集。目前Zabbix系統支持SNMP v1 SNMP v2c和SNMP v3版本的協議。通過SNMP協議采集數據不需要在被監控設備上安裝任何第三方軟件,但是需要配置和開啟SNMP服務,並允許監控服務器查詢。這個是我們目前使用比較多的數據采集方法。缺點是,其通信協議走的UDP協議,傳輸為不可靠傳輸,所以存在丟數據的現象。同時,MIB庫一般是跟被監控設備有關,不適合監控自定義的項目。 |
4 |
|
Zabbix系統內部數據采集方法就是采集和監控Zabbix系統自身狀態和性能數據的方法。Zabbix系統內部數據采集方法是由Zabbix服務器端通過計算獲取的,所以這種數據采集方法不需要安裝任何的客戶端。這個數據采集方法只適用於Zabbix服務器自身的監控,不適用其它設備和主機。主要用於監控Zabbix系統自身的問題。 |
5 |
|
Zabbix陷入是指在被監控主機上定時的執行特定的程序或命令,主動向Zabbix系統的服務器端或服務器代理端發送被監控項目的數據的數據采集方法。因此,Zabbix陷入是一種主動模式的數據采集方法,即由被監控主機定時或周期的向Zabbix系統的服務器端或服務器代理端發送所采集到的數據。這個數據采集方法一般只適用於服務器、工作站等我們可以在其上安裝和部署腳本程序的設備。這個數據采集方法可以采集我們自己定義的個性化的監控項目。缺點是需要自己編寫腳本和程序,所以對編程能力有一定的要求。 |
6 |
|
所謂數據聚合(在Zabbix前台的數據采集型中稱之為Aggregate Checks)是指並不直接從被監控主機上采集監控數據,而是指根據已定義的監控項目上采集的數據通過一定的計算方法復合出新的監控項目的數據。適合於跨多個被監控設備的數據匯總計算,以生成新監控項目。 |
7 |
|
這種數據采集方法其實很簡單,即由Zabbix服務器端進程根據配置信息,按計划地執行指定的腳本程序或命令,然后俘獲腳本程序或命令的輸出內容為對應監控項目的值。這種方法也要求有一定的編程能力。同時,因為腳本是在Zabbix服務器端執行的,所以要求被監控設備要給Zabbix服務器端一定的授權,存在一定的安全風險。 |
8 |
數據庫監控采集方法的原理就是,Zabbix服務器進程直接通過ODBC接口技術,查詢各種不同類型的數據庫里的數據,以采集需要的數據內容。由此我們可以看出,數據庫監控是一種通過直接操作被監控系統數據庫的方法來采集數據的。因此,這種數據采集方法可以采集應用層面的性能數據,可以監控個性化的項目。同時,因為這個方法是使用了ODBC技術,所以它可以支持的數據庫種類非常多,幾乎支持市場上主流的數據庫。缺點是,Zabbix系統中只能支持的SQL語句,不能嵌套。 |
|
9 |
|
智能平台管理接口(IPMI,Intelligent Platform Management Interface),是管理基於Intel架構的企業系統中所使用的外圍設備所采用的一種工業標准。通過這種方法采集數據的優點是:它可以采集到其它方法無法采集到的硬件狀態信息,例如CPU溫度、風扇轉數等等。缺點是,需要被監控硬件能夠支持。而這個一般在購買服務器(這種方法一般只適用於服務器)時是需要單獨購買控制卡的。 |
10 |
|
通過SSH協議采集的原理很簡單,zabbix服務器端或服務器代理端根據配置,使用SSH協議連接到被監控主機上,然后在被監控主機上執行用戶配置的命令序列或者指定的腳本,Zabbix服務器端或服務器代理端捕獲被執行的命令序列或腳本程序所返回的結果作為被監控項目所采集的數據。所以,這種方法可以采集到我們所需要的個性化的數據。缺點是需要有一定的編程能力,以及被監控設備和Zabbix服務器之間需要通過公鑰私鑰驗證。 |
11 |
|
與“通過SSH協議采集數據”方法是類似的,只是這種方法走的是TELNET協議,所以安全要更低。
|
12 |
JAVA管理擴展(JMX,Java Management Extensions)是一個可作為應用程序、設備和系統等植入管理功能的框架。簡單地說,JMX框架在不對現有的應用做修改的情況下植入到現有的應用中,以對現有的應用的運行情況進行管理。這種方法一般只適用於采集JAVA應用的數據,而不太適合采集系統級的甚至硬件級的監控數據。要求被監控設備上必須安裝JAVA環境,同是啟動相應的服務。 |
|
13 |
|
通過計算的方法獲取監控數據,顧名思義就是將現有的多個被監控項目上所采集的數據進行一定的計算,從而獲取新的數據的數據采集方法。這種數據采集方法與“數據聚合”有相同之處也有不同之處,相同之處是這兩個方法本質上都是對現有的監控項目所采集到的數據進行復合計算,以獲得新的需要監控的數據。不同之處是,這個方法一般只針對單台被監控設備內部不同項目的數據進行計算,不跨主機計算。這種方法我們目前有少量在使用。 |