renyanping 发表于 2019-1-14 12:05:38

nagios 图形化界面之一 (pnp)

      如今,监控系统是琳琅满目,有Nagios、Cacti、Zabbix、Centreon、Munin等,也有系统集成如FAN等。个人在经过不同监控的安装测试后,还是比较倾向于Nagios的监控,简单命令;而且结合PNP + nagios等插件可以实现图表的功能。
  Nagios、Pnp使用的是RRDtool工具来实现画图的。
  

  用 PNP 绘制历史曲线
  Pnp 是一个基于 php 和 perl,用 rrdtool将 nagios 采集的数据绘制图表的工具,所以安装
pnp 之前必须先安装 php、perl和 rrdtool。
  1、准备工作
光盘中提供如下软件包

  yum install php*
  yum install perl*

  yum install cairo-devel
      yum install glib2-devel
      yum install pango pango-devel
  yum install libpng libpng-devel
  yum install libxml2-devel
安装过程略
  
其他安装包需要从互联网下载:
      rrdtool-1.4.5.tar.gz   
      pnp-0.4.14.tar.gz
      cgilib-0.6.tar.gz

  

  2、 安装 PNP
2.1 . 安装 cgilib

  tar zxvf cgilib-0.6.tar.gz
                  cd cgilib-0.6
                  cp libcgi.a /usr/local/lib
                  cp cgi.h /usr/include
  

  2.2.安装 rrdtool
  tar zxvf rrdtool-1.4.5.tar.gz
               cd rrdtool-1.4.5
               ./configure --prefix=/usr/local/rrdtool
               make
               make install
  

  2.3.安装 pnp
  tar zxvf pnp-0.4.14.tar.gz
               cd pnp-0.4.14
               ./configure -- with-rrdtool=/usr/local/rrdtool/bin/rrdtool
               make all
               make install
               make install-config
               make install- init
  
       注意: ./configure完成后会出现安装结果,注意下面的红色粗体字, 说RRDs Perl Modules
在大量安装时可以加速,暂忽略之,继续。
*** Configuration summary for pnp 0.4.14 09-09-2013 ***


http://blog.运维网.com/attachment/201309/191911584.png
  

http://blog.运维网.com/attachment/201309/191908944.png
  

  如果使用加速功能,从网上找到解决方法(未测试过) ,用下面的命令:
      ln -sv /usr/local/rrdtool/lib/perl/5.10.1/x86_64-linux-thread-multi/auto/RRDs/RRDs.so /usr/lib/perl5/

  ln -sv /usr/local/rrdtool/lib/perl/5.10.1/x86_64-linux-thread-multi/RRDs.pm /usr/lib/perl5/
  之后继续 make all


  2.4.让 apache 的首页默认页支持 php 格式
               编辑 httpd.conf,在 DirectoryIndex 后面加上 index.php:
                        DirectoryIndex index.html index.html.var index.php
               重新启动 apache 服务

访问 http://localhost/nagios/pnp/index.php?host=localhost 能看到图形
如果 nagios 尚未采集数据,看到可能是下面的样式。这个是安装 rrdtool-1.2.30 的提示,
http://blog.运维网.com/attachment/201309/191625922.png

  

  
  
  3、 将绘图功能加入 nagios
  3.1.编辑 nagios.cfg

http://blog.运维网.com/attachment/201309/192004742.png
  

  3.2.修改绘图命令
  将原来的 command_line 后的内容替换为下面的内容

http://blog.运维网.com/attachment/201309/192006751.png
  
  3.3.修改监控目标主机文件
在目标主机配置文件中加入如下所示的红色粗体字

http://blog.运维网.com/attachment/201309/192008293.png
  

  如果你要监控的目标主机都需要绘制曲线的话,可以在 1.4 节中介绍的模板中添加上述
红色字体,这样就不用每个主机都添加了,又节省好大一笔工作量。赚了。
重启 nagios, 打开监控页面后,就能看到监控目标主机旁边有红色的类似小太阳的图标。
每个 service 后面都带图标是因为测试时,在每项服务后面都加了上面的那两行命令,但使用中发现没什么用,每次点击单个服务后的太阳图标,照样把其他服务的历史曲线带出来。

http://blog.运维网.com/attachment/201309/192011218.png
  

  当 nagios 获取到数据以后,点击红色的太阳图标就能看到绘图曲线了
  

http://blog.运维网.com/attachment/201309/192013493.png
  

  3.4.自定义图表时间范围
      上图右侧可以看到绘图的时间范围——Timeranges,最短 4 小时。但有时我们需要查看
更短时间范围的曲线时,默认的页面就办不到了,需要手工修改一下配置文件:
                           /usr/local/nagios/etc/pnp/config.php
      关于时间范围定义的默认配置是这样的:
  

http://blog.运维网.com/attachment/201309/192015858.png
  在配置里增加 30 分钟和 1 小时、2 小时的时间间隔,在上述配置的前面增加下面的内
容,注意将 view[]的数字重新排序。
http://blog.运维网.com/attachment/201309/192017661.png
  

  此外,配置文件的第 86 行为默认打开时以哪个时间范围显示图表。
                         $conf['overview-range'] = 1;
         按上面的配置,默认打开时,图表的时间范围是 1 小时内的。可酌情修改。

      上述参数修改完毕后重新启动 nagios 就可以了,打开页面在右侧 Timeranges 下可以看
到新增加了 3 个时间范围——30 分钟、1 小时、2 小时。依次点击查看。
最近半小时的曲线图

http://blog.运维网.com/attachment/201309/194532767.png
  

  最近 1 小时的曲线图

http://blog.运维网.com/attachment/201309/194535757.png
  

  最近两小时的曲线图

http://blog.运维网.com/attachment/201309/194530113.png
  

  

  

  




页: [1]
查看完整版本: nagios 图形化界面之一 (pnp)