LINUX開源監控平臺Nagios(性能分析圖表)

Nagios的性能分析圖表

Nagios
監控的側重點在此時服務是否正常,是一個瞬時狀態。通過對這個狀態的監控和告警,管理員可以第一時間對主機或者服務的故障做處理。但是我 們往往也非常關心主機的性能以及服務的響應時間等情況,這些情況是一個持續的變化曲線,並非一個實時的值,如果通過查看日誌數據來分析的話,既繁瑣有抽 象,所以,我們希望Nagios可以幫我們做這份工作,然後將報表提交給我們,這樣就非常方便了。這就是我今天要介紹的Nagios的相關開源項目—— PNPhttp://ederdrom.de/doku.php/nagios/pnp_en)。

PNP
是一個小巧的開源軟件包,它是基於PHPPERL,利用rrdtoolNagios採集的數據繪製成圖表。如果你要安裝PNP,那麼準備工作有如下3項:

1
、整合ApachePHP(本文使用版本:Apache 2.2.3  PHP 5.1.6
2
、安裝rrdtools (本文使用版本:RRDTools 1.2.23
3
、安裝Perl (本文使用版本: Perl5

關於這3項工作的方法,網絡上有很多精彩的文章介紹,我就不多說了,下面介紹一下PNP的工作原理,順便將安裝配置的內容也描述如下。

要介紹PNP工作原理,首先要說明一下Nagios提供的數據接口,也就是PNP的數據來源。在前面的文章中,我提到過,在定義hostservice 中都有一個定義項,名爲process_perf_data,其值可以定義爲01,其作用是是否啓用Nagios的數據輸出功能。如果你將此項賦值爲 1,那麼Nagios就會將收集的數據寫入到某個文件中,以備提取。所以,如果你想讓Nagios將數據輸出的話,首先要將Nagios的主配置文件 nagios.cfg中相關的配置修改:

 

代碼:

process_performance_data=1
service_perfdata_command=process-service-perfdata  #默認此句被註釋掉了

如果想要對某個監控對象做數據圖表,則需在所對應的host或者service定義中(一般寫在hosts.cfg或者services.cfg文件中),包含如下的定義:

 

代碼:

process_perf_data 1

這 樣,Nagios就會調用相應的命令來輸出數據了。Nagioscommand定義中默認有一項“process-service- perfdata”,該命令聲明瞭Nagios輸出哪些值到輸出的文件中。不過其定義相對簡單,PNP提供了一個perl腳本,更詳盡的定義了一個輸出數 據的方法。如果要使用PNP的話,我們需要在command的定義中,將“process-service-perfdata”命令對應的執行命令行的內 容替換成該腳本:

 

代碼:

define command{
command_name process-service-perfdata
command_line /usr/local/nagios/libexec/process_perfdata.pl
}

這樣設置了之後,Nagios就會利用PNP提供的腳本進行相關的工作了。

細心的看管大概已經發現了,剛剛定義命令時用到的腳本“process_perfdata.pl”現在還不存在。我們現在就來安裝,也就PNP的軟件包 (本文用的版本是pnp-0.3.3.tar.gz)。安裝方法很簡單,過程也很順利(我的系統安裝時選擇了開發工具,謝天謝地!)

 

代碼:

./configure --with-rrdtool=/usr/local/rrdtool/bin/rrdtool --with-perfdata-dir=/usr/local/nagios/share/perfdata/
make all
make install

安裝結束之後,再去檢查一下Nagios的插件目錄(libexec),就會發現多了一個名爲“process_perfdata.pl”的腳本。

ok
,現在執行一下Nagios配置檢查命令

 

代碼:

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

如果沒有什麼錯誤,那麼我們重新啓動Nagios

 

代碼:

/etc/init.d/nagios restart

驗收一下成果,在瀏覽器的地址欄中輸入:

http://IP/nagios/pnp/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章