Linux学习笔记:为Nagios 4.1.1安装出图插件pnp 0.6.25

Nagios 4.1.1的部署安装可参考http://coosh.blog.51cto.com/6334375/1741257

前言:

Nagios客户端默认是没有自带出图的插件的,需要另外安装,这里介绍最常见的插件pnp。在老男孩老师的视频中,他所推荐的是0.4版本,并且建议不必选用更新的版本。虽说我同意他的观点,但本着研究学习的精神,我还是安装了最新的0.6.25,安装过程中碰到了很多问题,并一一解决了,这里做一下记录。

前期准备:

安装Nagios和部署这里不再赘述,找到http://docs.pnp4nagios.org/ ,页面是手册,下载的链接在上方。另外,pnp必须使用rrd-tool、perl,因此最直接就是yum install rrdtool*  perl* ,并且需要注意打开apache的mod_rewrite功能(默认是已经打开了的)

下载安装

tar -xvzf pnp4nagios-HEAD.tar.gz
cd pnp4nagios
./configure
*** Configuration summary for pnp4nagios-0.6.2 23-12-2009 ***
  General Options:
  -------------------------         -------------------
  Nagios user/group:                nagios nagios
  Install directory:                /usr/local/pnp4nagios
  HTML Dir:                         /usr/local/pnp4nagios/share
  Config Dir:                       /usr/local/pnp4nagios/etc
  Location of rrdtool binary:       /usr/bin/rrdtool Version 1.2.12
  RRDs Perl Modules:                FOUND (Version 1.2012)
  RRD Files stored in:              /usr/local/pnp4nagios/var/perfdata
  process_perfdata.pl Logfile:      /usr/local/pnp4nagios/var/perfdata.log
  Perfdata files (NPCD) stored in:  /usr/local/pnp4nagios/var/spool
  Web Interface Options:  -------------------------         -------------------
  HTML URL:                         http://localhost/pnp4nagios/
  Apache Config File:               /etc/apache2/conf.d/pnp4nagios.conf
  Review the options above for accuracy.  If they look okay,
  type ‘make all‘ to compile.
make all
make fullinstall

以上代码是官方提供的安装方法,假如Nagios是用源码默认配置安装,并且其他都通过yum安装,那么照着官方的方法即可完成,安装好后的路径是/usr/local/pnp4nagios/,运行时它所使用的用户名和组均是nagios

当我装完后尝试访问pnp的页面时发现无法出图,在/usr/local/pnp4nagios/var/perfdata目录下没有生产数据文件,百思不得其解,百度一番后,发现原来0.6版的pnp与nagios 4.1.1有点“不兼容”,不能使用默认的同步模式,要改为Bulk模式(块模式)。

#################################################################################

#    打开pnp4nagios的log功能,其实这一步是可选的,并非一定要打开,但如果碰到了问题,打开了log功能会很方便排错,所以建议打开。    #

#################################################################################

vi /usr/local/pnp4nagios/etc/process_perfdata.cfg

#把log_level改为2

# Loglevel 0=silent 1=normal 2=debug

#

LOG_LEVEL = 2

慎重起见重启一下httpd和nagios服务

然后可以在tail /usr/local/pnp4nagios/var/perfdata.log里看到日志信息

我所碰到的问题是Cant find Nagios Environment. Exiting ....

然后百度一番,发现要改为使用Bulk模式

参考官方手册http://docs.pnp4nagios.org/pnp-0.6/config#bulk_mode

作如下修改/usr/local/nagios/etc/nagios.cfg文件

process_performance_data=1

enable_environment_macros=1

service_perfdata_command=process-service-perfdata

host_perfdata_command=process-host-perfdata

service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata

service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$

service_perfdata_file_mode=a

service_perfdata_file_processing_interval=15

service_perfdata_file_processing_command=process-service-perfdata-file

host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdata

host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$

host_perfdata_file_mode=a

host_perfdata_file_processing_interval=15

host_perfdata_file_processing_command=process-host-perfdata-file

作如下修改/usr/local/nagios/etc/objects/commands.cfg 文件

define command{

command_name    process-host-perfdata

command_line    /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl

}

define command{

command_name    process-service-perfdata

command_line    /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA

}

define command{

command_name    process-service-perfdata-file

command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/service-perfdata

}

define command{

command_name    process-host-perfdata-file

command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/host-perfdata

}

重启httpd和nagios服务即可。由于采集需要一定的时间,不能立即在网页界面看到数据,但一般几秒后,就可以观察 /usr/local/pnp4nagios/var/perfdata目录下是否有对应的主机名的目录生成,如果有,一般就是正常的了。如果仍不正常,就查看log文件去排错。

效果图

时间: 2024-10-25 15:32:19

Linux学习笔记:为Nagios 4.1.1安装出图插件pnp 0.6.25的相关文章

Linux学习笔记:Nagios的配置

安装方法请参考 Linux学习笔记:Nagios的安装 客户端 由于我的安装是使用xinetd这个daemon的,所以需要调整相关的配置文件 [[email protected] ~]# vi /etc/xinetd.d/nrpe  service nrpe {         flags           = IPv4         socket_type     = stream         port            = 5666         wait           

Linux学习笔记:Nagios的安装

Nagios的官方Quickstart网址https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/quickstart-fedora.html 关于Nagios与其他服务器的关系图(最简单的描述) 之所以是最简单,是因为这里只是介绍最普遍的部署方式,还有一种集群模式这里暂不研究 方式一: 1)在Nagios服务器上部署Nagios Core套件 2)在Client端上安装Nagios Plugin套件和NRPE套件

慕课linux学习笔记(一)centOS的安装

在VMware8上安装centos6.3 准备的文件 新建虚拟机 选择新建一个空的虚拟机 选择linux和centos 分配20G的硬盘空间 ' 修改配置 调整内存空间 桥接:虚拟机和真实机通讯使用的是真实机的网卡,要占用真是IP NAT:虚拟网卡VMnet8 HOST ONLY :VMnet1 只能和虚拟机通讯,不能上网 安装CentOS 简体中文 进行分区 必须分区: / (根分区) Swap分区(交换分区,内存2倍(>4G时等于就好),不超过2GB) 推荐分区: / boot (启动分区,

Linux学习笔记4-CentOS7中redis3.2.9安装教程

redis下载地址:http://www.redis.cn/download.html 1.将下载过来的redis-3.2.9.tar.gz文件复制到/usr/local文件夹下 2.tar xzf redis-3.2.9.tar.gz命令解压缩 3.切换到解压后的文件redis-3.2.9下,编译redis make 如果报gcc找不到的错误(这是因为你的系统没有安装gcc,所以执行 yum install gcc 命令安装gcc) 此时你需要把之前编译的残余删除掉,执行 make distc

linux学习笔记九:一般Tarball软件安装流程(以ntp-4.2.4p7.tar.gz为例)

1.将源码解压到/usr/local/src cd/usr/local/src tar-zxvf /root/ntp-4.2.4p7.tar.gz 2.查看README/INSTLL文件 cdntp-4.2.4p7/ moreINSTALL 3.生成makefile文件,指定将来要安装到/usr/local/ntp目录中.如不指定,则默认安装到/usr/local目录中. ./configure--help|more   查看编译时可用的参数 ./configure--prefix=/usr/l

linux学习笔记-nagios监控的简单配置

第1章 nagios监控工具介绍及原理 1.1nagios监控工具介绍与优势 Nagios是一款开源的网络及服务的监控工具,其功能强大,灵活性强.能有效监控Window,Linux和Unix的主机各种状态信息,交换机.路由器等网络设置,主机端口及URL服务等.根据不同业务故障界别发出告警信息给管理员,当故障恢复时也会发出恢复消息. Nagios服务端可以在linux和类unix的系统上运行,目前无法再windows上运行. 官方网站地址:http://www.nagios.org/ 官方快速安装

linux学习笔记(一)-文件目录相关的命令&&文件通配符

一.几个命令概述 1.查看目录以及目录底下的文件:ls(-a显示隐藏文件:-d显示目录本身:-l显示详细内容:-R递归显示,即把子目录的文件也显示出来:-h以更加被人类理解的格式显示,比如显示文件大小的时候用M为单位显示:-i显示文件索引ID) 2.查看文件内容:cat,head,tail,less,more,tac cat:将文件连接起来,输出在屏幕上,可接多个文件(-E:显示隐藏的换行符:-n:显示出行号) head:默认查看文件的前10行(-n#:查看文件的前#行.空白行也是一行) tai

Linux学习笔记四:Linux的文件搜索命令

1.文件搜索命令  which 语法:which [命令名称] 范例:$which ls  列出ls命令所在目录 [[email protected] ~]$ which ls alias ls='ls --color=auto' /bin/ls 另外一个命令:whereis [名称名称],也可以列出命令所在目录. [[email protected] ~]$ whereis ls ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/ma

Linux学习笔记——例说makefile 增加系统共享库

0.前言 从学习C语言开始就慢慢开始接触makefile,查阅了很多的makefile的资料但总感觉没有真正掌握makefile,如果自己动手写一个makefile总觉得非常吃力.所以特意借助博客总结makefile的相关知识,通过例子说明makefile的具体用法. 例说makefile大致分为4个部分 1.只有单个C文件 2.含有多个C文件 3.需要包括头文件路径 4.增加宏定义 5.增加系统共享库 6.增加自定义共享库 7.一个实际的例子 [代码仓库]--makefile-example