设为首页 收藏本站
查看: 805|回复: 0

Nagios的安装配置与应用之四Nagios性能分析图表的实现

[复制链接]

尚未签到

发表于 2019-1-15 08:14:40 | 显示全部楼层 |阅读模式
  Nagios性能分析图表的作用
  Nagios对服务或主机监控的是一个瞬时状态,有时候系统管理员需要了解主机在一段时间内的性能及服务的响应状态,并且形成图表,这就需要通过查看日志数据来分析。但是这种方式不但烦琐,而且抽象。为了能更直观的查看主机运行状态,我们可以利用PNP来帮助我们完成这个工作。
  PNP的概念、安装环境及安装过程
  PNP是一个小巧的开源软件包,它是基于PHP和Perl的。PNP可以利用rrdtool工具将Nagios采集的数据绘制成图表,然后显示主机或者服务在一段时间内运行的状况。
  PNP环境要求如下:
  a、安装了GD、zlib、jpeg且整合后的Apache和PHP环境。
  b 、安装RDDtool工具
  安装PNP
  RRDtool是一个图表生成工具,可以从http://www.mrtg.org/rrdtool下载。
  安装还是老方法:
  [root@Nagios ]#tar zxvf rrdtool-1.4.7.tar.gz
  [root@Nagios ]#cd rrdtool-1.4.7
  [root@Nagios rrdtool-1.4.7]#./configure --prefix=/usr/local/rrdtool
  [root@Nagios rrdtool-1.4.7]#make
  [root@Nagios rrdtool-1.4.7]#make install
  接着下载PNP,我用的是pnp-0.4.13.tar.gz。
  在安装之前,检查模块是否存在:

  不存在,做一个软链接继续检查,如下图示:

  继续,接着链接,接着检查,如下图所示:

  如果不做上面的一系列动作,在编译PNP的时候会出现如下的错误报告:
WARNING: The RRDs Perl Modules are not found on your system
           Using RRDs will speedup things in larger installations.
接着进行编译安装PNP,注意下图红色箭头所注的安装选项:

  [root@Nagios pnp-0.4.13]# make all
  [root@Nagios pnp-0.4.13]# make install
  [root@Nagios pnp-0.4.13]# make install-config
  [root@Nagios pnp-0.4.13]# make install-init
  安装完成。PNP默认文件的放置情况如下图所示:
  如果没有上面截图所示的动作,下图红框部分将出现RRDs Perl Modules: ***NOT FOUND***

  配置PNP
  1、创建默认配置文件
  在PNP安装完成后,默认安装目录下自带了模板配置文件,因此,只需将模板文件复制一份作为PNP配置文件即可。操作如下图所示:

  2、修改process_perfdata.cfg文件
  打开Nagios下的process_perfdata.cfg文件,修改相关内容。操作如下图示:

  修改nagios配置文件
  1、增加小太阳图标
  修改templates.cfg,增加一个定义PNP的host和service。修改后的内容如下图所示:


  2、修改nagios.cfg
  如果想让nagios将数据输出,首先要修改nagios的主配置文件nagios.cfg,找到如下几项,如有注释的将其去掉。修改后的信息如下:
  process_performance_data=1
  host_perfdata_command=process-host-perfdata
  service_perfdata_command=process-service-perfdata
  3、修改commands.cfg
  process-host-perfdata和process-service-perfdata指令声明了nagios输出哪些值到输出文件中。不过这些定义相对简单,而PNP提供了一个Perl脚本,非常详细地定义了一个输出数据的方法,process_perfdata.pl就是PNP自带的一个脚本,这个脚本在PNP安装完成后会自动生成。因此,可以将process-host-perfdata和process-service-perfdata指令中对应的执行命令的内容替换成此脚本。修改后的内容如下图所示:

  4、修改hosts.cfg文件和services.cfg文件
  将hosts-pnp和services-pnp引用到hosts.cfg和services.cfg中,修改后的hosts.cfg内容如下图示:

  修改后的services.cfg内容如下图示:

  以上是监控linux的范例。
  下面是监控windows主机的
  1、下载windows端软件包NSClient++-0.3.8-Win32.msi
  2、双击安装即可,指定nagios的IP地址,密码就不用填了,然后一直下一步即可。如下图示:

  在防火墙中添加12489的例外端口,如下图示:

  在nagios服务器端执行命令测试,如果返回数据,表示NSClient++安装正常,如下图示:

  3、在监控端配置对windows主机的各种系统资源的监控配置:
  a)首先在nagios.cfg中配置相关的配置文件的位置,找到
  cfg_file=/usr/local/nagios/etc/objects/windows.cfg  #将此段路径前面的注释去掉
  b)配置上面定义的windows.cfg文件,定义要监控的host和service,这里分别配置了AC.Green和ysadsrv02.ks-pcba.com如下图示:


  c)配置完成后使用命令检查配置文件是否有错:
  #/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  d)沒有錯誤報告的話,重啟nagios服务:
  #/etc/init.d/nagios restart
  4、使用http://ip/nagios进行访问或者http://ip/nagios/pnp,查看配置的结果,如下图示:

  点击旁边的小太阳,我以AC.GREEN为例如下图示:

  至此,PNP配置结束了。
  在配置或者点击小太阳的过程中,可能会遇到各种错误,下面分别一一列出,以供以后参考:
  a)时区问题:
  报错
  Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Chongqing' for 'CST/8.0/no DST' instead in /usr/local/nagios/share/pnp/include/function.inc.php on line 565
  这是因为PHP所取的时间是格林威治标准时间,和我们当地时间会有出入。
  #/usr/local/nagios/share/pnp/include/function.inc.php
  加入如下图所示的一行:

  Deprecated: Function eregi() is deprecated in /usr/local/nagios/share/pnp/include/function.inc.php on line 1502
  问题的根源是php中有两种正则表示法,一个是posix,一个是perl,php6打算废除posix的正则表示法,所以后来就加了个preg_match。此问题解决办法可以在ereg前面加过滤符,将ereg()变成@ereg()。但是这种问题还是没有从根源上解决,php5.2版本之前ereg使用正常,在5.3之后,就要用preg_match来代替ereg。注意,posix和perl的很明显的区别就是是否加斜杠,后者不能少了“/”。所以改法为:
[root@nagios ~]#vim /usr/local/nagios/share/pnp/include/function.inc.php
1502 if($level == 2 && $type == "complete" && eregi("^NAGIOS_",$tag)){
改为
1502 if($level == 2 && $type == "complete" && preg_match("/^NAGIOS_/",$tag)){

   Deprecated: Assigning the return value of new by reference is deprecated in /usr/local/nagios/share/pnp/include/function.inc.php on line 1026

  删除上图标记中的&.
  还有下图中的错误:

  出现上图中的提示,需要手动在/usr/local/nagios/share/perfdata下手动建立redhat文件夹,并使用命令将拥有者权限修改一下:chown nagios:nagcmd redhat.类似情况作类似的动作即可!

  出现上图中的情况,一者检查一下配置是否有问题,二来耐心等待一下,一般出图没有那么快。多数情况下是需要等待!
  另外在配置NSCliet++  的时候,查看网上有好多要修改安装路径下NSClient++下面的NSC.ini文件,然后再修改window的一些服务等等。我装完了没有作这些动作,如果有需要可以自行到网上查阅!




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-663380-1-1.html 上篇帖子: 云计算管理三大利器之Nagios 下篇帖子: Nagios的安装配置与应用之五监控远程Linux服务器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表