基于Linux系統(tǒng)的Nagios網(wǎng)絡(luò)管理模塊的實現(xiàn) |
發(fā)布時間: 2012/8/13 12:03:27 |
隨著計算機網(wǎng)絡(luò)的普及,網(wǎng)絡(luò)管理已成為信息時代中最重要的問題之一。在現(xiàn)有的技術(shù)條件下,人們希望有一個更加穩(wěn)定可靠的網(wǎng)絡(luò)環(huán)境。計算機網(wǎng)絡(luò)管理系統(tǒng)就是應(yīng)這樣的需求而產(chǎn)生的。它對網(wǎng)絡(luò)上的各種設(shè)備進(jìn)行管理,通過監(jiān)視和控制這些設(shè)備,及時地向管理人員報告網(wǎng)絡(luò)狀態(tài),并且簡化網(wǎng)絡(luò)故障的處理,減少故障造成的損失,提高網(wǎng)絡(luò)的服務(wù)質(zhì)量和效率。面對企業(yè)大大小小的服務(wù)器,單憑某個網(wǎng)管工具或某個人,已經(jīng)不能勝任如此大的工作量同時也無法滿足業(yè)務(wù)緊迫性的要求。各類企業(yè)之間以及企業(yè)內(nèi)部的服務(wù)也越來越普遍,對于企業(yè)管理員的任務(wù)也是隨之更加繁重。即使是一個小公司,在他們所使用的計算機系統(tǒng)中,也應(yīng)該包含有不少數(shù)量的,運行著許多服務(wù)和軟件包的硬件。大公司則更有成百上千的同類設(shè)施需要管理和運行。在管理員不可能及時去注意每一個服務(wù)和軟件的情況下,為了對這些眾多的服務(wù)和軟件進(jìn)行有效的管理。
一般來說,是采取發(fā)生問題后進(jìn)行解決的方法,即基于反應(yīng)的解決方案。但是這種解決方案通常的效率都是非常低的,如果反應(yīng)及時,只需少數(shù)的幾分鐘就可以解決問題,但如果發(fā)現(xiàn)問題晚了,就會浪費時間帶來更多損失。比如,察看及時地話,通過日志就可以發(fā)現(xiàn)某個服務(wù)是否運行異常,然后解決掉,但如果是在此服務(wù)異常運行已經(jīng)很嚴(yán)重時,要恢復(fù)它,不僅困難還會帶來不小的損失。因此,一個完成此類檢測功能的自動化工具對于網(wǎng)絡(luò)管理員就顯得非常重要。Nagios 是一個運行于 Linux 系統(tǒng)上的開源網(wǎng)絡(luò)管理監(jiān)測系統(tǒng)。它強大的功能可以實現(xiàn)對網(wǎng)絡(luò)上的服務(wù)器進(jìn)行全面的監(jiān)控,包括服務(wù)(apache、mysql、ntp、ftp、disk、qmail 和 http 等等)的狀態(tài),服務(wù)器的狀態(tài)。 2.Nagios 系統(tǒng) 2.1 Nagios 系統(tǒng)介紹 Nagios是一個用來監(jiān)視系統(tǒng)和網(wǎng)絡(luò)的開源應(yīng)用軟件,它通常運行于一個主服務(wù)器上,這個服務(wù)器運行 Liunx 或 Unix 操作系統(tǒng)。Nagios 利用其眾多的插件實現(xiàn)對本機和遠(yuǎn)端服務(wù)的監(jiān)控,當(dāng)被監(jiān)控對象出現(xiàn)異常,Nagios 就會及時給管理人員告警。它是一個基于 TCP/IP協(xié)議的軟件包,包含有nagios主程序和它的各個插件,配置非常靈活,可以監(jiān)視的項目很多,也可以通過自定義 shell 腳本進(jìn)行監(jiān)控服務(wù),非常適合各類企業(yè)的網(wǎng)絡(luò)應(yīng)用。 2.2 Nagios 系統(tǒng)的主要特點 Nagios 系統(tǒng)的特點主要有下面幾點: 1.監(jiān)控主機資源和網(wǎng)絡(luò)服務(wù) 2.允許用戶通過設(shè)計實現(xiàn)簡單的插件來監(jiān)控自己特定的服務(wù) 3.當(dāng)被監(jiān)控對象出現(xiàn)問題時,會及時通知管理人員 4.事先定義事件處理程序,當(dāng)對象出現(xiàn)問題時自動調(diào)用對應(yīng)的處理程序 5.通過 web 頁面來監(jiān)視對象狀態(tài),警告提示和日志文件。 如下圖 1 為 Nagios 的結(jié)構(gòu)圖:
在被監(jiān)控主機上安裝 Nagios 代理程序。通過 Nagios 主程序和 Nagios 代理程序之間的通訊,監(jiān)視對象的狀態(tài)。 2.3在Linux上運行 Nagios 系統(tǒng) Nagios 系統(tǒng)是運行在 Linux 或者 Unix 操作系統(tǒng)之上的,安裝前確認(rèn)操作系統(tǒng)支持 TCP/IP協(xié)議并且有 C 語言編譯器(如,gcc 等)。如果沒有 web 服務(wù)器,例如 apache,預(yù)先安裝之。在 Nagois 官方網(wǎng)站下載 Nagios 主程序、插件和安裝文檔,最新版本是 Nagios 3.0rc2。Nagios 是開源項目,它的安裝也比較簡單,按照文檔一步步執(zhí)行就可以順利完成。 如果 Nagios 安裝在/usr/local 目錄下,完成后執(zhí)行如下命令: /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
service nagios start (后面也可跟這些:restart, stop, reload.),也可以這樣啟動: /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
現(xiàn)在訪問nagios的服務(wù)器web界面,界面如下圖2。 3. 運用 Nagios 實現(xiàn)對網(wǎng)絡(luò)上服務(wù)器的監(jiān)控 3.1實現(xiàn)原理 處于網(wǎng)絡(luò)中的各種服務(wù)器需要管理和維護(hù),管理員不可能及時對每一臺的狀態(tài)都進(jìn)行監(jiān)控,這時候當(dāng)然需要借助軟件的功能來實現(xiàn)了。Nagios的功能是監(jiān)控服務(wù)和主機,但是他 自身并不包括這部分功能,所有的監(jiān)控、檢測功能都是通過各種插件來完成的。啟動 Nagios后,它會周期性的自動調(diào)用插件去檢測服務(wù)器狀態(tài),同時 Nagios 會維持一個隊列,所有插件返回來的狀態(tài)信息都進(jìn)入隊列,Nagios每次都從隊首開始讀取信息,并進(jìn)行處理后,把狀態(tài)結(jié)果通過 web 顯示出來。Nagios 提供了許多插件,利用這些插件可以方便的監(jiān)控很多服務(wù)狀態(tài)。安裝完成后,在nagios 主目錄下的/libexec 里放有 nagios 自帶的可以使用的所有插件,如,check_disk 是檢查磁盤空間的插件,check_load是檢查CPU負(fù)載的,等等。每一個插件可以通過運行./check_xxx –h 來查看其使用方法和功能。Nagios 可以識別 4 種狀態(tài)返回信息,即 0(OK)表示狀態(tài)正常、1(WARNING)表示出現(xiàn)一定的異常、2(CRITICAL)表示出現(xiàn)非常眼中的錯誤、3(UNKNOWN)表示被監(jiān)控的對象已經(jīng)停止了。Nagios 根據(jù)插件返回來的值,來判斷監(jiān)控對象的狀態(tài),并通過 web 顯示出來,以供管理員及時發(fā)現(xiàn)故障。 本文出自:億恩科技【www.allwellnessguide.com】 服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |