使用Nagios實現網絡監控
如何使用Nagios實現網絡監控?
一個系統管理員怎樣才能夠監控眾多的機器和服務,以便在人們受到危害之前,盡早的發現并解決問題?該問題的答案是Nagios。
Nagios是一個開放源碼的網絡監控工具。它不僅免費,而且功能強大,并具有極強的可定制性。雖然學習和實施它比較復雜,但它在記錄你們組織的IT基礎架構如何運行方面,會節省大量的時間。
在這個分成兩部分的專欄中,在***部分,我將重點討論Nagios的有效性和它的體系結構。而在第二部分,我將提供配置的例子和建議。查看第二部分
為了理解Nagios的有效性,通常要考慮一個典型的IT基礎架構由一個或多個系統管理員負責。即使是一個小公司,在他們所使用的計算機系統中,也應該包含有一定數量的,運行著許多服務和軟件包的硬件。大公司則有成百上千的同類設施需要維護和運行。因此,不管是小公司,還是大公司,都需要分散式的操作,也就是擁有分散的IT基礎架構,這種架構在物理上沒有掌握所有機器信息的能力。
自然地,每一件硬件都將運行***一套軟件產品。這就需要面對眾多的硬件和軟件需要監控,但管理員并不能注意到每一個特殊的項目;在這種情況下,默認只能采取發生問題后進行解決的方案,也就是基于反應的問題解決方法。而更糟糕的是,此種問題通常來自于終端用戶的抱怨,這無疑為使IT部門的工作受到質疑。
除了顯而易見的公共關系問題,這種基于反應的問題解決方案效率非常低下。如果及早發現問題,只需幾分鐘就能夠解決,但若是發現的晚了,則將浪費更多的時間。舉例來說,若是發現的早,通過日志就可以在磁盤空間用完之前,解決數據庫空間不足的問題,并很容易就能夠修復,但若是在系統暫定之后再進行修復,由于日記文件已經無法記錄,因此將變得非常困難。
因此,一個能夠幫助系統管理員進行此類操作的自動化工具就成為必需品。此類工具被分類到網絡管理軟件的類目中,都具有以下Nagios監控主要功能:
①能夠記住基礎設施中運行的所有服務器和機器;
②在小問題變大之前發出警告;
③從一個中心地點運行,以減少必須到每臺物理機器才能解決問題的需求;
④提供一個有關全系統狀態,未解決問題等的直觀視圖。
而這里還有兩個阻礙網絡管理軟件被廣泛采用Nagios監控的主要原因:
—它的花費太貴;
—它需要為一個給定的環境進行有效的配置工作。
Nagios是一個開放源碼的網絡管理工具,因此它解決了***個主要問題。當然,即使是Nagios也需要大量的合理配置,不過在這篇文章以下的敘述中,我會提出幾個建議,以減少配置的負擔。
Nagios的體系結構
Nagios應用軟件運行在一個中心式的服務器上面,此服務器運行Linux或Unix操作系統。每一件硬件都必須由一個運行的Nagios進程監控,此進程與中心服務器通話。根據中心服務器可以閱讀的配置文件中的指令, Nagios將“伸出并觸摸“遠程進程,并象棋發出指令,運行必要的檢查。由于軟件必須在Linux或Unix上運行,因此遠程機器上的每一個硬件都能夠被加入通話。
根據來自遠程機器的反應,Nagios之后將根據它的配置,采取適當的行動。而根據遠程測試執行的需要,Nagios將通過一臺本地機器能力(例如,測試一個文件是否存在),或運行一個定制的測試程序(叫做插件),來執行測試,測試更多特殊的項目(例如,檢查是否有一組特殊的值被放如數據庫)。如果測試返回的值不正確,Nagios將通過一種或多種方法發出警告――同樣,方法是根據Nagios的配置來選擇的。
下一節我們將進入此篇文章的第二部分。在那里,我們將舉一個Nagios配置的例子。在這里查看第二部分。
【編輯推薦】