Nagios SNMP 主機監控

結合SNMP服務 Nagios監控能力更全面

2012-06-07
Nagios程式常用來即時監控系統服務狀態,但對於檢測系統磁碟剩餘容量是否仍在安全範圍內卻力有未逮,而另一個軟體SNMP可以提供更詳細的系統資訊,剛好能夠補其不足。為此,本文將實作結合SNMP服務的Nagios,讓網管工作更安全更輕鬆。

·硬狀態(Hard State):
硬狀態是指當發生超出可容錯的範圍(如上例的被監控主機連續五次都沒有回覆ICMP訊息),即進入所謂的硬狀態,而必須通知聯絡人或執行所設定的指令,此狀態即表示Nagios已經確認所監控的主機或服務已發生異常情況。

在了解相關Nagios的相關名詞的意義後,即可繼續進行安裝作業。首先,在系統上新增Nagios使用者帳號(這是Nagios預設執行的權限),然後下載最新版本的Nagios:


套件安裝成功之後,可至下列網址取得Plug-in的檢查程式。


Plug-in安裝完成後,可檢查在「/usr/local/nagios/plugins/libexec/」目錄下是否有相關的檢查Plug-in程式存在,例如是否有可檢查HTTP服務的check_http。

由於本解決方案目標僅在於與SNMP服務配合,延伸Nagios的監控功能,因此繼續安裝SNMP的Plug-in程式。連接至網址「http://nagios.manubulon.com/nagios-plugins-snmp-0.6.0.tgz」(C語言版)取得SNMP的Plug-in程式。下載解壓縮後執行下列的指令,即可安裝Nagios的SNMP Plug-in:


在安裝完成後,檢查在「/usr/local/nagios/plugins/libexec/」目錄下是否有相關的Plug-in程式,例如可利用SNMP服務檢查被控端磁碟空間的check_snmp_storage。

Nagios的每個Plug-in程式都是一獨立的程式,可單獨拿來執行。由於此次的解決方案的設定目標僅在於利用check_snmp_storage檢查磁碟空間是否已超過所設定的使用率,因此這裡僅利用以下的表格簡單介紹一下check_snmp_storage的用法。

check_snmp_storage的用法

常用範例如下,可以監控本機端且社群名稱為public的SNMP服務,當「/home」目錄使用超過80%時發出警告(Warn),而使用超出90%即發出嚴重錯誤(Critical)。


簡介SNMP

「簡易網路管理協定(Simple Network Management Protocol,SNMP)」是目前在網路上常用來進行網路管理的通訊協定。主要的目的是管理網路上各式各樣的設備。

由於SNMP是基於TCP/IP網環境中所發展出來的通訊協定,因此SNMP在應用上必須使用TCP/IP通訊協定。SNMP主要分為管理端(Manager)、代理者(Agent)和管理資訊庫(Management Information Base,MIB)三個元件。

管理端(Manager)通常被稱為網路管理工作站(Network Management Station,NMS)。利用SNMP通訊協定向代理者查詢所需的相關資訊,如網路設備運作狀態、系統硬體的配置(CPU使用率、硬碟利用率等等)。

管理者在取得此類的資訊之後,即可進行統計分析並利用相關工具進行處理,繪出簡單易懂的統計圖表供使用者瀏覽,此類工具以MRTG為代表,而SNMP定義了五種Manager與Agent的溝通型式,如下表所示。

Manager與Agent的五種溝通型式

而代理者(Agent),通常是一個執行程式,負責將該被監控設備節點的設定資料和運作現狀以資料結構的方式儲存,當代理者程式收到管理端所發出的SNMP Get-request、Get-next-request查詢指令時,便透過SNMP Get-response方式以相對應的管理資訊庫(MIB)資料來回應管理端相關的資訊。

此外,代理者在某種特殊的情況下,如系統發生錯誤或關機,即可主動地以Trap的方式發送訊息通知管理端。

至於管理資訊庫(MIB),由於SNMP通訊協定的原始要求在於適用各種類型的網路設備,所以它所管理的資訊亦隨著網路設備的不同而有所出入,但在現實環境中,每種網路或設備對其資料的表達方式亦存在大小不同的差異。

對此,必須採用一套抽象的語法來描述所有類型的資訊,所以SNMP定義了MIB,利用階層性的描述來說明所有受管理設備資訊的屬性,並稱這些設備為SNMP物件(Object)。

MIB可分為標準(Standard)MIB及私人(Private)MIB兩大類,標準MIB適用於所有網路設備,而私人MIB則由設備廠商自行定義,以反映該設備的獨特的數值(如各家廠適標榜獨特的功能),合法的私人MIB就跟網址一樣,必須向有關單位申請,以確保每一個私人MIB都是世上獨一無二的。

MIB採用樹狀結構,為一種階層式分類,其中每個節點皆有各自特定的類型,以易於人類辨識的單字標記,並附有物件身分編號,亦即物件識別碼(Object Identifier,OID),樹狀末端的所有葉片為SNMP定義的物件,如下頁圖中( )所示:


▲管理資訊庫(MIB)的樹狀結構。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!