Nagios整合pnp繪製效能分析圖表

科技小先鋒發表於2017-11-07

  Nagios監控的側重點在此時服務是否正常,是一個瞬時狀態。通過對這個狀態的監控和告警,管理員可以第一時間對主機或者服務的故障做處理。但是我們往往也非常關心主機的效能以及服務的響應時間等情況,這些情況是一個持續的變化曲線,並非一個實時的值,如果通過檢視日誌資料來分析的話,既繁瑣又抽象,所以,我們希望Nagios可以幫我們做這份工作,然後將報表提交給我們,這樣就非常方便了。這就是需要用到的Nagios的相關開源專案—— PNP

Pnp是一個基於phpperl,用rrdtoolnagios採集的資料繪製圖表的工具,所以安裝pnp之前必須先安裝phpperlrrdtool。

注意:安裝nagios可以參考文章部署Nagios監控系統,本文是在rhel6.0上進行安裝,參考是注意系統的版本。

1、安裝phpperl相關軟體包

[root@localhost /]#yum -y install php-* perl-*

2、安裝rrdtool

安裝rrdtool之前確保安裝了這些庫zlib libpng freetype libart_lgpl,如下圖所示:

195705649.jpg

安裝rrdtool時必須要安裝cgilib這個庫,以下是正確的安裝方法:

[root@localhost /]#tar zxf /media/cgilib-0.5.tar.gz -C /usr/src/

[root@localhost /]#cd /usr/src/cgilib-0.5

[root@localhost cgilib-0.5]#cp libcgi.a /usr/local/lib

[root@localhost cgilib-0.5]#cp cgi.h /usr/include/

安裝rrdtool繪圖工具:

釋放rrdtool軟體包並進行編譯前的配置,編譯後安裝rrdtool

[root@localhost /]#tar zxf /media/rrdtool-1.2.27.tar.gz -C /usr/src/

[root@localhost /]#cd /usr/src/rrdtool-1.2.27

[root@localhost rrdtool-1.2.27]#./configure –prefix=/usr/local/

[root@localhost rrdtool-1.2.27]#make && make install

3、安裝pnp

釋放pnp軟體包並進行編譯前的配置

[root@localhost /]#tar zxf /media/pnp-0.4.14.tar.gz -C /usr/src

[root@localhost /]#cd /usr/src/pnp-0.4.14

[root@localhost pnp-0.4.14]#./config –with-rrdtool=/usr/local/bin/rrdtool

注意:./configure 完成後會出現RRDs Perl Modules: *** NOT FOUND***,說RRDs PerlModules在大量安裝時可以加速,暫忽略之,繼續

如果使用加速功能,用下面的命令:

201117199.jpg根據提示需要繼續編譯並安裝pnp,分別執行以下命令:

[root@localhost pnp-0.4.14]#make all

[root@localhost pnp-0.4.14]#make install

[root@localhost pnp-0.4.14]#make install-config

[root@localhost pnp-0.4.14]#makeinstall-init

安裝結束之後,再去檢查一下Nagios的外掛目錄(libexec),就會發現多了一個名為“process_perfdata.pl”的指令碼。

讓apache的首頁預設頁支援php格式 ,編輯httpd.conf,在DirectoryIndex後面加上index.php

[root@localhost /]#vim /etc/httpd/conf/httpd.conf

…//省略部分內容

201401838.jpg

重啟httpd服務

[root@localhost /]#service httpd restart

訪問http://localhost/nagios/pnp/index.php?host=localhost能看到圖形,如果nagios尚未採集資料,看到可能是下面的樣式

201535967.jpg

4、修改nagios.cfg檔案,將繪圖功能加入nagios

首先要說明一下Nagios提供的資料介面,也就是PNP的資料來源。在定義hostservice 中都有一個定義項,名為process_perf_data,其值可以定義為01,其作用是是否啟用Nagios的資料輸出功能。如果你將此項賦值為 1,那麼Nagios就會將收集的資料寫入到某個檔案中,以備提取。

所以如果你想讓Nagios將資料輸出的話,首先要將Nagios的主配置檔案 nagios.cfg中相關的配置修改,修改結果如下:

[root@localhost /]#vim /usr/local/nagios/etc/nagios.cfg

…//省略部分內容

202238851.jpg

202254925.jpg

202310669.jpg

202325137.jpg

202337708.jpg

5、編輯commands.cfg將原來的command_line後的內容替換為下圖的內容(下圖中的配置項預設存在,只需修改即可)

[root@localhost /]#vim /usr/local/nagios/etc/objects/commands.cfg

…//省略部分內容

202533453.jpg

6、編輯templates.cfg新增pnp

[root@localhost /]#vim /usr/local/nagios/etc/objects/templates.cfg

…//省略部分內容

202827195.jpg

7、修改hosts.cfg配置檔案,新增templates.cfg檔案中定義的模板:host-pnpsrv-pnp

部分修改如下圖所示:

[root@localhost /]#vim /usr/local/nagios/etc/objects/hosts.cfg

202947285.jpg

8、修改services.cfg配置檔案,新增templates.cfg檔案中定義的模板:host-pnpsrv-pnp

部分修改如下圖所示:

[root@localhost /]#vim /usr/local/nagios/etc/objects/services.cfg

203153717.jpg

9、配置pnp

203402322.jpg

過載nagios.cfg配置檔案

[root@localhost /]/etc/init.d/nagios reload
訪問nagios頁面。就可以在nagios的每項監控專案上看到小太陽了.

203528431.jpg

nagios獲取到資料以後,點選紅色的太陽圖示就能看到繪圖曲線了

203656203.jpg

上圖右側可以看到繪圖的時間範圍——Timeranges,最短4小時。但有時我們需要檢視更短時間範圍的曲線時,預設的頁面就辦不到了,需要手工修改一下配置檔案:

在配置裡增加30分鐘和1小時、2小時的時間間隔.
[root@localhost /]#vim /usr/local/nagios/etc/pnp/config.php

…//省略部分內容

204200505.jpg

此外,配置檔案的第86行為預設開啟時以哪個時間範圍顯示圖表。

204248408.jpg

按上面的配置,預設開啟時,圖表的時間範圍是1小時內的。可酌情修改。

204336707.jpg


本文轉自yun5277 51CTO部落格,原文連結:http://blog.51cto.com/dengqi/1287550,如需轉載請自行聯絡原作者


相關文章