2012年11月18日 星期日

Monit系統監控軟體 本機運作小而美


緊盯網路服務及系統資源 自動告警減輕維運負擔
Monit系統監控軟體 本機運作小而美

身為一個網管人員,想辦法維持企業資訊系統的運作順暢是最基本的職責。但隨著資訊系統的擴大,企業的資訊預算往往不見得會同步地提升,也常使網管人員在資源不足的情況下疲於奔命。在這種情況下,一套能自動監控系統服務的運作狀態,並且可以在系統服務發生問題時立即通知網管人員的自動化監控軟體,將會是最佳的解決方案,例如這裡所要介紹的Monit。

開源碼社群中著名的監控軟體Monit,不但能夠監控系統上的網路服務,甚至還可以監控系統相關的資源運用,例如磁碟用量、CPU使用率等等。

網管人員可利用此監控軟體自動地監控主機的相關服務運作或其他的資源,一旦發現問題,立刻以電子郵件方式通知網管人員,以減輕網管人員日常維運的工作負荷。

下方的表1為本次解決方案所需準備的軟體清單。

表1 解決方案所需軟體


什麼是Monit監控軟體 

Monit是一個功能非常強大的資源監控軟體,主要應用在監控服務主機上的相關資源,可監控的範圍包括檔案系統的變動(如某個目錄或檔案變動)、運作中的程序(Process)的監控以及網路服務(如網站伺服器或郵件伺服器等網路服務)的監控,甚至可監控總體服務主機系統的資源狀況(例如可設定監控系統CPU或記憶體的使用狀況)。

一旦發現所監控的資源發生狀況,Monit監控軟體也會啟動管理所設定相對應的應變措施,例如自動重啟網路服務或寄送警告信至管理者的信箱等功能。

簡而言之,Monit監控軟體是一個小而美的監控程式,除了可即時監控系統上的相關資源外,更可在所監控的資源發生問題時,啟動應變措施,自動重啟系統服務或以E-mail通知管理者。

為了方便管理者掌控系統狀況,Monit監控軟體也提供網站伺服器的功能,方便管理者利用網頁的方式來查看系統相關資源運作的狀況。

安裝Monit監控軟體 

執行以下的指令,至網址「http://mmonit.com/monit/dist/monit-5.5.tar.gz」取得最新版本的Monit監控軟體(筆者所取得的為5.5版),然後編譯安裝:



在安裝成功後,即會產生名為Monit的主程式,Monit程式提供下列啟動程式時所使用的參數,如表2所示。

表2 Monit程式使用參數


如果Monit是以常駐程式(Daemon)的形式來執行,則另外提供如表3所示的參數選項來控制Monit程式的執行。

表3 當Monit以常駐程式形式執行時可採用的參數



在了解Monit相關的程式與常用的啟動參數後,由於Monit監控程式在運作時,需要參照相關的組態檔設定,所以接下來說明Monit監控程式所提供的組態檔相關參數,如表4所示。

表4 Monit組態檔的相關參數



實作Monit監控程式 

在此,以監控網站伺服器為例,利用Monit監控程式來監控網站根目錄內的相關網頁。這裡假設讀者已經建立好網站伺服器,且網站伺服器的網站根目錄為「/usr/local/apach2/htdocs」。

一旦發現相關網頁有變動,就馬上寄發警告信至管理者的信箱,並同時監控網站伺服器的運作,如果察覺網站伺服器停止服務,立即寄發相關警告信至管理的信箱。接下來,設定相關的組態檔(/etc/monit.cf)。Monit監控程式組態檔設定如下圖所示。



以下說明圖中相關參數設定的意義:

·set daemon 60:將Monit監控程式設定為常駐程式形式執行,並且每60秒輪詢檢查一次。
·set mailserver [郵件伺服器位址]:設定郵件伺服器的位置,此郵件伺服器是用來寄發警告信。
·set mail-format:設定所寄發警告信之內文與標題等相關資訊。
·set alert [管理者信箱]:設定當觸發監控的異常情況發生時,所要寄發的管理者信箱。
·set httpd port 2812 and allow admin:admin:啟動Monit監控程式的網站伺服器功能(運作於2812埠),並設定登入的帳號及密碼為admin與admin。這裡為了測試方便,僅使用帳號和密碼來控管,但在實務上建議讀者除了帳號及密碼的控管外,還要再加上來源IP主機的控管。

以下這兩行是設定當所監控的目錄發生變動,例如當目錄內的檔案發生新增、修改或刪除的情況時,將會改變目錄的時間欄位(Timestamp),立即發送警告信通知管理者:



以下設定內容為,當所監控的網站伺服器在10秒後沒有回覆,即判定為停止服務並寄送警告信通知管理者:



在設定完成後,可利用指令「monit -c /etc/monit.cf」來啟動Monit程式。啟動成功後,可利用瀏覽器先瀏覽網頁「http://[IP]:2812/」,測試Monit監控程式是否已經啟動網頁管理的服務。如果一切正常,Monit監控程式會要求輸入帳號與密碼。輸入正確的帳號密碼後,即可看到以下的畫面,代表已成功啟動Monit監控程式。



至此,可以測試更改所監控目錄內的檔案,例如在該目錄下新增或刪除檔案,Monit監控程式將會發出如下圖所示的警告信,告知所監控的目錄已發生變動。這就代表了Monit監控程式已經正常運作。至此,一個可自動監控系統相關資源的監控軟體已建構完成。



結語

Monit監控程式是運作在本機上,可以排除網路的因素,得到更精確的探測結果。Monit監控程式不但能夠檢測服務的運作情形,更可以檢測檔案系統的變動,因此也可當作另一種形式的主機型入侵偵測系統(Host IDS)來應用。

轉載自《網管人;作者:吳惠麟》


沒有留言:

張貼留言