为nagios装上pnp4nagios功能

nagios的安装不再赘述,直接在nagios服务端进行安装pnp4nagios软件

安装展示图形页面pnpnagios(rrdtool工具用来存储数据并画图,pnpnagios用来展示图形数据)

参考:http://docs.pnp4nagios.org/pnp-0.6/install

http://docs.pnp4nagios.org/pnp-0.6

tar xf pnp4nagios-0.6.25.tar.gz

cd pnp4nagios-0.6.25

yum install rrdtool rrdtool-perl -y

./configure

编译报错:

checking for Perl Module Time::HiRes... no

configure: error: Perl Module Time::HiRes not available

解决办法:

yum -y install perl-Time-HiRes

再次编译

./configure

make all

make install

make install-webconf

make install-config

make install-init

make fullinstall

安装后出现如下输出:

*** Configuration summary for pnp4nagios-0.6.25 03-01-2015 ***

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.3.8

RRDs Perl Modules:                FOUND (Version 1.3008)

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/httpd/conf.d/pnp4nagios.conf

Review the options above for accuracy.  If they look okay,

type ‘make all‘ to compile.

由于nagios采用的是4.1.1,pnp4nagios采用的是0.6.25

在官方文档有好几种配置pnp4nagios的模式,但是采用sync的模式会一直收集不到数据,而报错,于是改用了Bulk Mode with NPCD,成功出图,这里分析配置过程:

参考:http://www.aboutmonitoring.com/installing-nagios-core-4-pnp4nagios-check_mk-nagvis-centos-7-redhat-7/

1、编辑nagios.cfg文件,修改

process_performance_data=0将这个值改为1

##### Values: 1 = process performance data, 0 = do not process performance data

enable_environment_macros=1

2、然后去掉下面两个注释,使之启用:

#host_perfdata_command=process-host-perfdata

#service_perfdata_command=process-service-perfdata

然后在nagios.cfg配置文件中加入以下:

# service performance data

#

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 performance data starting with Nagios 3.0

#

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

各个文件的使用可以查看官方说明

3、修改commands.cfg

define command{

command_name    process-service-perfdata-file

command_line    /bin/mv /usr/local/pnp4nagios/var/service-perfdata /usr/local/pnp4nagios/var/spool/service-perfdata.$TIMET$

}

define command{

command_name    process-host-perfdata-file

command_line    /bin/mv /usr/local/pnp4nagios/var/host-perfdata /usr/local/pnp4nagios/var/spool/host-perfdata.$TIMET$

}

然后开启npcd服务:

/usr/local/pnp4nagios/bin/npcd -d -f /usr/local/pnp4nagios/etc/npcd.cfg

4、

[[email protected] libexec]# /etc/init.d/nagios checkconfig

Running configuration check...

OK.

[[email protected] libexec]# service httpd restart

停止 httpd:                                               [确定]

正在启动 httpd:

[[email protected] libexec]# /etc/init.d/nagios reload

Running configuration check...

Reloading nagios configuration...

done

5、浏览器访问

http://192.168.1.155/pnp4nagios/

出现报错:PHP GD extensionPHP GD extension not available

解决:

yum -y install php-gd

[[email protected] libexec]# /etc/init.d/nagios checkconfig

Running configuration check...

OK.

[[email protected] libexec]# service httpd restart

停止 httpd:                                               [确定]

正在启动 httpd:

[[email protected] libexec]# /etc/init.d/nagios reload

Running configuration check...

Reloading nagios configuration...

done

再看观察浏览器报错:

Your environment passed all requirements. Remove or rename the /usr/local/pnp4nagios/share/install.php file now.

解决办法:

mv /usr/local/pnp4nagios/share/install.php /usr/local/pnp4nagios/share/install.php.ignore

以上只是解决了收集数据的功能,还必须在每一个host、service上展示相应的图形

设置如下:

编辑templates.cfg模板文件,创建host和service支持pnp4nagios功能:

define host {

name       host-pnp

action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_

register   0

}

define service {

name       srv-pnp

action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$

register   0

}

定义完成之后,最后只需在定义的hosts、services配置文件中加入下操作:

define host{

use                     linux-server,host-pnp    ; Name of host templates to use

; This host definition will inherit all variables that are defined

; in (or inherited by) the linux-server host template definition.

host_name               localhost

alias                   localhost

address                 127.0.0.1

}

define service{

use                     local-service,srv-pnp   ; Name of service template to use

host_name               localhost

service_description     PING

check_command           check_ping!100.0,20%!500.0,60%

}

于是整个配置工作完成,访问浏览器出图如下

至此结合图形展示成功

新建菜鸟学习交流群:584498750

时间: 2024-08-02 20:23:35

为nagios装上pnp4nagios功能的相关文章

深度 | 邢波教授谈人工智能科学路径:为人工智能装上「无穷动」引擎

深度 | 邢波教授谈人工智能科学路径:为人工智能装上「无穷动」引擎 本文由邢波教授 授权转载 微信公众号:猫匣子 作者:邢波 有些人是因为对人工智能的原理不理解而导致,有些人是为了个人名望而宣扬人工智能威胁论,有些人则是为了商业的利益推动人工智能威胁论.——Yann LeCun   人工智能算法本身这个计算任务像登山,它是有明确的目标的,可以用数学描述和比较的目标,它本身有弹性.容错性.随机性.和客观的量化的可评估性 … 人工智能功能的提升和突破来源于理论模型,算法,和计算引擎的不断创新,缺一不

为自动化测试装上精准测试的“翅膀

现代的专业软件测试中心,随着项目的迭代,通常针对每个系统构建了大量的自动化测试用例集,而启动一次全量的自动化测试以CI级触发,使之大比率通过,非常困难.测试工程师们常常需要投入很高的成本,把大量精力花在自动化用例失败排查上面,然而发现有效BUG的概率很低.在反复排查无果.心神俱疲的情况下,几乎对自动化产生绝望之心,视之为鸡肋,用之无用,弃之可惜,让测试中心极为头疼. 如何让自动化用例发挥它们应有的效用,让QA工作不那么沉重呢?星云测试针对这一难题,进行了精准测试与自动化测试无缝对接的技术方案研发

ajax的上拉功能

<div class="footReturn"> <!-- <a id="showcard" onClick="showcard()" class="submit" href="javascript:void(0)">保 存</a> --> <div class="window" id="windowcenter"

struts2中实现文件上传功能

在web项目中,文件上传.头像上传这样的功能经常是要用到的,下面就以在struts2中实现文件上传功能为例子,简单地理一下文件上传功能的编码思路. 项目目录结构 项目源代码 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:x

使用Commons FileUpLoad组件实现文件上传功能

Commons 是Apache开放的源码组织的一个java子项目,该项目主要涉及一些开发中常用的模块,如文件上传,命令行处理,数据库连接池等.FileUpLoad就是其中的一个用于处理HTTP文件上传的子项目.Commons FileUpLoad组建具有以下几个特点: 1.使用简单:Commons FileUpLoad组件可以方便的嵌入JSP文件中,在JSP文件中仅编写少量代码就可完成文件上传功能,十分方便. 2.能够全程控制上传的内容:使用Commons FileUpLoad组件提供的对象及操

黑客在PS4成功装上Linux:然后玩嗨了

据外媒报道,日前一个名为OsirisX的高手在网上放出视频,并称他给PS4装上Linux系统后,成功运行了Steam OS平台的游戏<堡垒>.黑客在PS4成功装上Linux索尼跟微软推出的PS4/Xbox One均采用类似PC的硬件架构,这使得主机运行Linux系统成为可能.OsirisX在视频中称,他能够做到以中低画质运行这款游戏,不过要求PS4系统固件版本为1.76,成功越狱后安装的是ARCH Linux系统,他采用了轻量简洁的ARCH Linux系统,并且自己编译了各种驱动. 据悉,PS

HTML 5 File API:文件拖放上传功能

即将到来的 html5 规范有几个特性,以致使 HTML 远远超出其本身作为一种标记语言的能力,并为 Web 开发者提供了一些强大的脚本工具.负责监督 HTML5 发展进程的 W3C 组织,刚刚出版了一份强有力的规格草案 – HTML5 File API 接口功能. 该 API 的设计初衷,是改善基于浏览器的 Web 应用程序处理文件上传的方式,使文件直接拖放上传成为可能.草案定义了新的输入选项 <input type=”file”> 来处理文件上传. 更为惊喜的是,该 API 为开发者提供了

nodejs 实现简单的文件上传功能

首先需要大家看一下目录结构,然后开始一点开始我们的小demo. 文件上传总计分为三种方式: 1.通过flash,activeX等第三方插件实现文件上传功能. 2.通过html的form标签实现文件上传功能,优点:浏览器兼容好. 3.通过xhr level2的异步请求,可以百度formData对象. 这里使用2做个练习. node插件请看下package.json文件 { "name": "upload", "version": "0.1

vmware centos 7 刚装上不能上网

实验室的集群越来越不好用,今天决定装个虚拟机.好久不用vmware啊. 既然要装新的,为什么不尝试一下centos 7 呢 装上vmware 12,又去六维上搞个centos 7的iso,好家伙,7个G,下了不到一个小时. 从一台电脑传到另一台电脑,又二十几分钟,都是小事 装了小半个小时,好吧. 不能上网,我崩了.于是开始漫漫百度之路. 下面节省时间,直接截图. 嗯.找到了,心想干嘛不直接给我设置成yes呢? 好. service network restart 报错了. 接续百度: 3种方法都