申明:關於MRTG,cacti,nagios,ntop,zabbix 的一個簡單的功能和優缺點的綜合介紹,參考網上的一些文章和其他部落格,包括圖片剪下,只是自己做了次搬運工,並非完全原創,這裡向摘抄學習的的各位朋友致敬!
MRTG:MRTG是一款早起的使用perl開發的,通過SNMP協議實現管理工作站與裝置代理程式進程間的通訊,以完成對裝置的管理和運行狀態的監視。MRTG安裝配 置簡單、 圖形介面直觀,因為廣受當時網路管理員的喜愛。
MRTG缺點:1、使用文本式的資料庫、資料不能重複利用
2、只能按日、周、月、年來查看資料
3、只能畫兩個DS(一條線和一個塊)
4、每次取資料都必須要繪製一次圖,浪費系統資源
5、沒有管理功能
RRDtool:有鑒於MRTG的缺點,MRTG的作者開發rrdtool來代替MRTG了,該軟體是強大的繪圖引擎,很多語言都可以調用rrdtool來繪圖。
(round robin database):
官方地址: http://oss.oetiker.ch/rrdtool/
一些列由Tobi Oetiker建立的資料庫工具。他也被設計處理時間序列資料像頻寬、溫度、CPU負載等。這些資料被儲存在一些列資料庫中,因此系統儲存足跡足以持續的留下
優點:1、rrdtool是一個效能優良的資料記錄器,同時也是一個功能強大的繪圖引擎。
2、 它使用rrd的資料存放區格式,使用得資料可以重複使用;
3、在繪圖方面,它可以定義任意時間段進行繪圖,能繪出多個DS。
缺點:1、雖然提供了強大的資料存放區及繪圖功能,但rrdtool卻沒有提供類似於MRTG中整合的資料擷取功能;
2、同時,它提供了過多的參數,以至於在命令列介面使用起來極為不便;
3、 此外,rrdtool也沒有提供管理功能
cacti(仙人掌):http://www.cacti.net/
1、Cacti就是rrdtool的一個forefront,它內建了快速的獲資料取工具、優秀的繪圖模板以及許多設計精良的資料擷取指令碼,從而可以通過結合rrdtool強大的資料抓取、資料存放區和繪圖功能,輕鬆實現主機負載、網路流量等資訊的走勢圖的繪製 。
2、cacti是用php語言實現的一個軟體,它的運行需要網站伺服器(如apache)及PHP環境的支援。同時,cacti還需要Mysql配合PHP程式儲存一些變數資料並對變數資料進行調用,如:主機名稱、主機ip、snmp團體名、連接埠號碼、模板資訊等變數。
3、rrdtool的對主機負載、網路流量等資訊的統計需要通過SNMP協議實現。經過SNMP抓取到的資料存放區於由rrdtool產生的rrd檔案中,這些檔案通常位於cacti的rra目錄中。rrdtool對資料的更新和儲存就是對rrd檔案的處理,rrd檔案是大小固定的歸檔檔案(Round Robin Archive),它能夠儲存的資料筆數在建立時就已經定義。
4、基於PHP、mysql、snmp(UDP:161)、rrdtool開發的一款持續監測的流量監測圖形分析工具
cacti工作原理:
Cacti的執行個體應用
---網路設定
---主機系統
(1)網路介面流量(進與出的頻寬)
(2)監控CPU的負載、記憶體等等
(3)監控磁碟的空間、進程數等等
---cacti常見的監測對象
(1)伺服器資源:CPU、記憶體、磁碟、進程、串連數等
(2)伺服器類型:WEB、Mail、FTP、資料庫、中介軟體等
(3)網路介面:流量、轉寄速度、丟包率
(4)網路裝置效能、設定檔(對比與備份)、路由數
(5)安全裝置效能、串連數、攻擊數
(6)裝置運行狀態:風扇、電源、溫度
(7)機房運行環境:電流、電壓、溫濕度
nagios簡介: 中文支援:田朝陽
Nagios是一款用於系統和網路監控的應用程式並遵循GPL協定。它可以在你設定的條件下對主機和服務進行監控,在狀態變差和變好的時候給出警示資訊
Nagios最初被設計為在Linux系統之上運行,然而它同樣可以在類Unix的系統之上運行 ,並且有 C 語言編譯器,程式主題為ANSI C編製。
Nagios更進一步的特徵包括:
1、監控網路服務(SMTP、POP3、HTTP、NNTP、PING 等);
2、監控主機資源(處理器負荷、磁碟利用率等);
3、簡單地外掛程式設計使得使用者可以方便地擴充自己服務的檢測方法;
4、並行服務檢查機制;
5、具備定義網路分層結構的能力,用"parent"主機定義來表達網路主機間的關係,這種關係可被用來發現和明晰主機宕機或不可達狀態;
6、當服務或主機問題產生與解決時將警示發送給連絡人(通過 EMail、簡訊、使用者定義方式);
7、具備定義事件控制代碼功能,它可以在主機或服務的事件發生時擷取更多問題定位;
8、自動的日誌復原;
9、可以支援並實現對主機的冗餘監控;
10、可選的 WEB 介面用於查看當前的網路狀態、通知和故障曆史、記錄檔等
組成:
Nagios通常由一個主程式(Nagios)、一個外掛程式程式(Nagios-plugins)和四個可選的ADDON(NRPE、NSCA、 NSClient++和NDOUtils)組成。Nagios的監控工作都是通過外掛程式實現的,因此,Nagios和Nagios-plugins是伺服器端工作所必須的組件。而四個ADDON中
(1)NRPE:用來在監控的遠程Linux/Unix主機上執行指令碼外掛程式以實現對這些主機資源的監控
(2)NSCA:用來讓被監控的遠程Linux/Unix主機主動將監控資訊發送給Nagios伺服器(這在冗餘監控模式中特別要用到)
(3)NSClient++:用來監控 Windows主機時安裝在Windows主機上的組件
(4)NDOUtils:則用來將Nagios的配置資訊和各event產生的資料存入資料庫,以實現這些資料的快速檢索和處理
這四個ADDON中,NRPE和NSClient++工作於用戶端,NDOUtils工作於伺服器端,而NSCA則需要同時安裝在伺服器端和用戶端
NTOP簡介:
一. MRTG基於SNMP擷取資訊,對於連接埠的流量,MRTG能提供精確統計,但對於三層以上的資訊則無從得知了。而這正是NTOP的強項。NTOP能夠更加直觀地將網路使用量的情況和每個節點電腦的網路頻寬使用詳細情況顯示出來。NTOP是一種網路嗅探器,嗅探器在協助監測網路資料轉送、排除網路故障等方面有著不可替代的作用。可以通過分析網路流量來確定網路上存在的各種問題,如瓶頸效應或效能下降;也可以用來判斷是否有駭客正在攻擊網路 系統。如果懷疑網路正在遭受攻擊,通過嗅探器截獲的資料包可以確定正在攻擊系統的是什麼類型的資料包,以及它們的源頭,從而可以及時地做出響應,或者對網 絡進行相應的調整,以保證網路啟動並執行效率和安全。
二. 管理員通過NTOP還可以很方便地確定出哪些通訊量屬於某個特定的網路通訊協定、佔主要通訊量的是哪個主機、 各次通訊的目標是哪個主機、資料包發送時間、各主機間資料包傳遞的間隔時間等。這些資訊為網管員判斷網路問題及最佳化網路效能,提供了十分寶貴的資訊。
NTOP提供以下一些功能:
① 自動從網路中識別有用的資訊;
② 將截獲的資料包轉換成易於識別的格式;
③ 對網路環境中的通訊失敗進行分析;
④ 探測網路環境下的通訊瓶頸;
⑤ 記錄網路通訊時間和過程;
⑥ 自動識別用戶端正在使用的作業系統;
⑦ 可以在命令列和Web兩種方式下運行。
看出來ntop作為監控工具與前兩者cacti和nagios的區別,ntop在監控方面,它的角度是從分析網路流量來確定網路上存在的各種問題,說白了就類似個抓包監控工具,只不過通過歸納繪圖實現更多的功能
zabbix:分布式系統監測
官方首頁:http://www.zabbix.com/
關於zabbix的資料正在整理中,後期發上來