摘 要:簡述Nagios及其工作原理,重點研究該系統可采用的多種報警方式,并結合實例給出部分配置與實現方法。最后討論和分析各報警方法的特點與應用前景,為有效實現網絡監控與管理提供應用參考。
關鍵詞:Nagios;網絡監控;報警
引言
隨著各行業信息化進程的快速發展,機房規模、設備數量、服務類型均不斷加大和豐富。保障系統的穩定、可靠是高質量服務的基礎和重要任務,而龐大而繁雜的網絡環境運維是每位管理員面臨的艱難挑戰,因此科學的監控方法與管理模式是系統維護的重要組成部分,有效的監控管理系統是故障快速響應與處理的必要手段。具有一個能夠完成對主機或服務進行檢測的自動化工具就非常重要,Nagios(Nagios Ain't Gonna Insist On Sainthood)就是實現對遠程主機、服務以及網絡全面監控的開源管理軟件,其在眾多監控系統中具有成本低廉、結構簡單、使用靈活、功能強大、可維護性強等諸多特點[1]。當發生故障時,基于Nagios的監控系統能夠以多種報警方式通知維護人員,并且準確地描述故障點位置,為高效地處理故障提供保障。本文以SUSE Linux 10.2、Nagios 3.2.3、apache2.2.3、php5.2.5為配置環境,對Nagios系統各種報警功能進行測試與應用描述。
1 Nagios及其工作原理
Nagios是一款基于GPLv2許可開發的開源網絡監控軟件[2,3],其在Linux/Unix環境下運行,基于瀏覽器的接口允許從任意平臺上進行操作控制。Nagios采取靈活的模塊化設計,其本身不包含任何監控機制,主要利用其眾多插件對多種系統的主機和服務進行檢查[4,5]。當被監控設備工作狀態發生異常變化時,Nagios可通過Web頁面、聲音、電子郵件、短信等[6-10]多種報警方式通知管理員,從而縮短故障的響應和排查時間,提升服務質量與效率[11]。
2 報警方式與實現
2.1 Web頁面報警
Nagios提供web界面查看和管理,其Web頁面報警即登錄后通過瀏覽器觀看被監控的對象及相關日志。Nagios定義了4種監控狀態,代表不同級別的告警,具體參見表1,除OK代表正常不用關心外,其余3種都要引起重視。
2.7 其它報警方式
Nagios的報警方式較為靈活,除以上常用報警方式外還有如MSN等即時通訊軟件結合使用,即時通訊軟件的服務器端分私有協議和基于開放的XMPP(Jabber)協議,MSN是基于微軟研發的私有協議,報警信息與MSN結合,需要用MSN的機器人的PHP程序[7]。
3 特點分析與討論
通常在Nagios監控應用時,在保證報警信息快速、準確,一般會采用多種報警同時觸發的方式。Web、郵件報警方式需要維護人員定時查看記錄,時效性不理想,不過目前公共郵箱有接收到郵件后即時發送短信功能(如139郵箱等),可以結合這一功能以郵件和短信郵箱功能較好實現故障告警信息的接收,實際應用中,該類故障告警從接收郵件或網絡延時會消耗一定的時間。聲音報警每次都需要網絡驗證,且聲音告警必須在全部監控點為正常狀態時才不發出告警音,否則將會總發出告警音(特別是報警音次數設置較多更為明顯)。
短信貓、飛信告警相對實用性較強,短信貓方式從硬件設備到SIM卡短信發送都將產生一定費用,增加了運行成本。使用飛信則可以節約我們的設備和短信費用,但由于飛信版本不定期進行升級,在升級期間飛信客戶端無法使用,這對監控實時性要求較高的系統來說則不夠完美,另外目前的開源版本需要輸入驗證碼,配置和應用上增加了一定的繁瑣程度。該兩種方式也可結合郵件報警一并觸發。
Nagstamon報警對于管理員在工作時間的監控管理非常實用,其能夠在第一時間發現故障的服務(如果是短信通知的話,一般都是監測3次都失敗時才發送短信,但nagstamon是第一次發現時就發出提醒)。對于MSN等即時通訊軟件在日常工作時間的監控也是一種很好的備用報警方式。
4 結語
Nagios利用其強大的服務檢測和報警功能,對于及時發現系統運行時的問題和隱患,對于節省信息化維護的費用,保障信息系統的正常運轉都具有重要意義。Nagios系統的應用將有效的解放勞動力,通過歷史監測數據更可為改進和優化系統提供基礎依據。靈活的報警方式可準確、及時的判斷故障信息點,為快速進行故障處理、提高工作效率提供保障。在實際應用中,Nagios對服務監控存在誤報的情況,因此需要對針對網絡的實際情況對監控腳本的參數進行優化調整,從而實現最佳的監控服務和報警功能。
參考文獻
[1]高俊峰.高性能Linux服務器構建實戰:運維監控、性能調優與集群應用:機械工業出版社 2012.
[2]Barth W: Nagios : system and network monitoring. U.S. ed. Munich,San Francisco: Open Source Press,No Starch Press,2006.
[3]Barth W: Nagios : system and network monitoring. 2nd ed. San Francisco,Munich: No Starch Press ,Open Source Press,2008.
[4]李晨光.Linux系統網絡管理模塊的實現.鐵路計算機應用2008,17:35-8.
[5]尤國君.淺談基于Nagios的網管系統.價值工程2010,29:254-5.
[6]宋化,劉可,張亦梅,李垠.Nagios在地震網絡監控中的應用.長江科學院院報2011,28:36-41.
[7]宋磊,王靜文.OpenBSD下基于Nagios的網絡服務監控報警系統的研究.電腦編程技巧與維護2009:112-3.
[8]楊昌武,曹龍漢.飛信報警方式的Nagios網絡監控系統在企業中的應用.網絡安全技術與應用2012,7:013.
[9]李剛,王曉磊,孫路強,姚蘭予,周利霞,齊士超,姚會琴,劉文兵.基于Nagios軟件的綜合短信聯動告警系統在地震行業中的應用研究.地震研究2012,35:133-8.
[10]李正,呂堅,付榮國.淺談基于Nagios的故障告警系統.江西通信科技2011:16-8.
[11]劉彥波,邵興華,李則河.淺談基于linux環境的網絡監控技術.經濟技術協作信息2009:134-.
[12]李晨光.Linux系統網絡管理模塊的實現.鐵路計算機應用2008,17:35-8.
[13]魏根芽.基于Linux的Nagios服務器監控系統的研究與實現.計算機與現代化2010:170-2.
[14]劉穎,劉景,鄭海燕.Cacti在校園網絡流量監測中的應用.電腦與電信2008:10-1.
[15]姚會琴,李悅,高遜,楊爽.NagVis等開源監控軟件在天津地震前兆臺網的應用研究.震災防御技術ISTIC2012,7.
[16]張雷.基于飛信報警方式的Nagios網絡監控系統的研究與實現.考試周刊2011:144-5%@1673-8918.
作者簡介:高東輝(1980-),男,工程師,主要從事地震信息網絡與應急指揮技術系統運維、管理與建設工作。