Nagios图像绘制插件PNP4Nagios部署和测试
注:本篇博客Nagios版本Nagios-3.5.1
2. 关于PNP4Nagios
3. 部署PNP4Nagios
3.1 下载PNP4Nagios
3.2 编译安装
3.3 目录文件说明
4. 配置Nagios
4.1 配置说明
4.2 配置Nagios主配置文件
4.3 配置Nagios对象模板command.cfg文件
4.4 配置Nagios对象模板template.cfg文件
4.5 配置主机和服务监控
5. 测试
6.总结
1. 概述
本篇博客主要介绍在Nagios3.5和Nagios4.4系统中部署pnp4nagios0.4和pnp4nagios0.6。
Nagios展示的实时数据,无历史数据存储和展示功能。通过pnp4nagios来实现Nagios历史数据的绘制。
2. 关于PNP4Nagios
PNP4Nagios目前有两个主要版本0.6版本和0.4版本。
3. 部署PNP4Nagios
PNP4Nagios利用了rrdtool工具来收集和处理图像。因此系统中需要安装rrdtool以及rrdtool-perl模块。
有关rrdtool的部署,本篇不做详细介绍。参阅博客《RRDTool的部署和测试.md》,博客园地址:
3.1 下载PNP4Nagios
官方网站:https://docs.pnp4nagios.org/
注意官方网站的提示,PNP4Nagios的Broker Module模式无法应用在Nagios Core 4.x上

3.2 编译安装
执行命令解压:tar -zxvf tar -zxvf nagiosgraph-1.5.2.tar.gz -C /tmp/;
进入目录进行configure:cd /tmp/pnp4nagios-0.6.26;
执行命令:
./configure \
--prefix=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26 \
--sysconfdir=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/etc \
--localstatedir=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var \
--with-nagios-user=nagios \
--with-nagios-group=nagios \
--with-perl_lib_path=/usr/local/globle/softs/rrdtool/1.7.0/lib/perl \
--with-rrdtool=/usr/local/globle/softs/rrdtool/1.7.0/bin/rrdtool \
--with-perfdata-logfile=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/process_perfdata \
--with-perfdata-dir=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var \
--with-perfdata-spool-dir=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var \
--with-httpd-conf=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/etc \
--with-base-url=/pnp4nagios \
--with-init-dir=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/etc/init.d \
--with-debug \
执行命令make all;
执行命令make fullinstall
至此,已经完成了PNP4Nagios的编译和安装。
3.3 目录文件说明
在路径/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26下,能够看到以下目录:
bin,etc,lib,libexec,man,share,var
bin目录存放npcd可执行文件
lib目录存放npcdmod.o模块文件
libexec目录存放process_perfdata.pl等perl脚本
etc比较重要,存放了配置PNP4Nagios的配置文件,包括:
process_perfdata.cfg,npcd.cfg,nagios.cfg,misccommands.cfg,rra.cfg
以及编译时指定的init.d启动脚本目录
注:上过的.cfg文件,实际是以.cfg-sample存在,配置时拷贝一份或者重命名即可
4. 配置Nagios
4.1 配置说明
PNP4Nagios有四种运行模式:
- Synchronous mode
- Bulk mode
- Bulk with NPCD mode
- Module mode
这四种模式的配置,在配置文件nagios.cfg和missconmmands.cfg中都有提到。
实际上nagios.cfg和miscommands.cfg就是源码提供的不同模式下对Nagios整合PNP4Nagios配置的示例。
nagios.cfg的内容,为在四种模式时,对Nagios主配置文件nagios.cfg的修改示例;而miscommands.cfg的内容,为在四种不同模式下,
对Nagios的command模板的修改示例;
4.2 配置Nagios主配置文件
本篇博客主要配置的是PNP4Nagios的第三种模式,即Bulk with NPCD mode。
这要求PNP4Nagios能够以独立进程npcd运行,并且能够处理Nagios抛出的临时状态文件。
修改Nagiso的主配置文件,内容如下:
#打开性能文件输出
process_performance_data=1
#定义用于输出的命令对象
host_perfdata_command=process-host-perfdata
service_perfdata_command=process-service-perfdata
#定义存放性能数据的文件
host_perfdata_file=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/host-perfdata
service_perfdata_file=/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/service-perfdata
#定义存放性能数据的模板
host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$
service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$
#定义存放性能数据的模式
host_perfdata_file_mode=a
service_perfdata_file_mode=a
#定义输出性能数据的时间
host_perfdata_file_processing_interval=15
service_perfdata_file_processing_interval=15
#定义处理性能数据的命令对象
host_perfdata_file_processing_command=process-host-perfdata-file
service_perfdata_file_processing_command=process-service-perfdata-file
4.3 配置Nagios对象模板command.cfg文件
上面对Nagios的主配置文件修改过程种,配置了处理性能文件的命令对象host_perfdata_file_processing_command和service_perfdata_file_processing_command,
这两个命令,需要在Nagios的命令模板种定义方可使用。
修改配置文件:vim /usr/local/globle/softs/monitor/nagios/3.5.1/etc/objects
#这段命令的定义,可以参照示例配置文件/usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/etc/misccommands.cfg
#或者官方文档地址:
define command {
command_name process-service-perfdata-file
command_line /bin/mv /usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/service-perfdata /usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/service-perfdata.$TIMET$
}
define command {
command_name process-host-perfdata-file
command_line /bin/mv /usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/host-perfdata /usr/local/globle/softs/monitor/nagios/pnp4nagios/0.6.26/var/host-perfdata.$TIMET$
}
4.4 配置Nagios对象模板template.cfg文件
因为需要在Nagios的web站点展示性能数据图,因此需要定义一个主机和服务模板,将模板添加到主机监控即可
修改配置文件:/usr/local/globle/softs/monitor/nagios/3.5.1/etc/objects/templates.cfg
#这段配置可以参考官方文档地址:http://docs.pnp4nagios.org/pnp-0.6/webfe
define host {
name hosts-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
register 0
}
define service {
name services-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
register 0
}
4.5 配置主机和服务监控
上面的配置完成之后,在需要配置性能数据输出的对象配置上,进行配置。如本篇博客配置
define host {
use linux-server,hosts-pnp
host_name node11
alias node11
address 192.168.80.11
}
define service {
use local-service,services-pnp ; Name of service template to use
host_name node11
service_description Root Partition
check_command check_nrpe!check_disk
notifications_enabled 1
}
define service {
use local-service,services-pnp ; Name of service template to use
host_name node11
service_description Current Users
check_command check_nrpe!check_users
notifications_enabled 1
}
define service {
use local-service,services-pnp ; Name of service template to use
host_name node11
service_description Total Processes
check_command check_nrpe!check_total_procs
notifications_enabled 1
}
5. 测试
重启Nagios便可在监控站点上看到node11的性能监控数据。
6.总结
PNP4Nagios可以理解为PNP for Nagios,即为Naigos监控对象配置性能数据可视化。
该插件弥补了Nagios实时监控的短板,能够给监控着对于监控对象性能以很直观的认知。
Nagios图像绘制插件PNP4Nagios部署和测试的更多相关文章
- Nagios数据存储插件NDOUtils部署和测试
1. 概述 NDOUTILS,Nagios Data Output Utils,Nagios数据输出工具,允许用户从Nagios导出状态和事件信息到数据库中,便于以后的检索和加工 它包括几个部分: N ...
- slurm-16.05.3任务调度系统部署与测试(1)
1.概述2.同步节点时间3.下载并解压文件4.编译安装munge-0.5.125.配置munge6.编译安装slurm-16.05.37.配置slurm8.配置MySQL数据库环境9.启动slur ...
- ImageDrawer.js图片绘制插件
ImageDrawer.js图片绘制插件有以下一些可用的配置参数. Duration:整个动画或每个步骤的绘制时间(以秒为单位) Background:在绘图时将颜色放在图片上 Callback:绘画 ...
- LDAP-openldap服务部署和测试(YUM安装)
1. 概述2. 服务端部署过程2.1 软件包说明2.2 部署过程2.3 配置过程3. 测试4. 生成LDIF格式文件4.1 安装migrationtools工具4.2 用migrationtools生 ...
- Openstack入门篇(十一)之neutron服务(控制节点)的部署与测试
1.Neutron的介绍 Neutron 为整个 OpenStack 环境提供网络支持,包括二层交换,三层路由,负载均衡,防火墙和 *** 等.Neutron 提供了一个灵活的框架,通过配置,无论是开 ...
- 20 个具有惊艳效果的 jQuery 图像缩放插件
jQuery相对与Flash的魔力已经贯穿整个网络.尽管,Flash层被认为是用于网页设计的首选,然而随着jQuery的出现,以及他的酷似Flash的交互式特效使得网页更加的优雅——Flash开始靠边 ...
- 13个JavaScript图表(JS图表)图形绘制插件【转】
现在网络上又有越来越多的免费的(JS 图表)JavaScript图表图形绘制插件.我之前给一家网站做过复杂的图形,我们用的是 highchart.在那段时间,没有很多可供选择的插件.但现在不同了,很容 ...
- 使用jenkins 插件自动部署项目至tomcat
前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https:/ ...
- [异常解决] 初玩SAE遇到的小问题——注册&创建项目+MyEclipse装插件直接部署+一个简单的JSP部署实现
① 新浪SAE快速上手教程:http://jingyan.baidu.com/season/43090 上面一个链接是针对PHP的相关介绍,如果用java还有点不一样,具体请看新浪SAE官网:http ...
随机推荐
- eclipse下载教程
Eclipse 是一个开放源代码的.基于 Java 的可扩展开发平台. Eclipse 是 Java 的集成开发环境(IDE),当然 Eclipse 也可以作为其他开发语言的集成开发环境,如C,C++ ...
- SQL Server 2012 读写分离设置 - AlsoIn
原文转至:http://www.tuicool.com/articles/a6rmiam/ 引用: http://technet.microsoft.com/zh-cn/library/jj16176 ...
- mybatis学习系列一
1引入dtd约束(6) Mybatis git地址:https://github.com/mybatis/mybatis-3/wiki/Maven 指导手册:http://www.mybatis.or ...
- LeetCode题解之Balanced Binary Tree
1.题目描述 2.问题分析 DFS. 3.代码 bool isBalanced(TreeNode* root) { if (root == NULL) return true; && ...
- Java 获取表格中某一个单元格的值
需求 搜索页面返回表格样搜索结果, 获取搜索结果中某个单元格的具体值. 以下图为例, 下表是搜索返回的结果, 第一行是各个列的名字, 其它是具体的返回值. 方法1: 根据用户输入的表头名来确定是第几列 ...
- Spark编译
Spark的运行版本使用mvn编译,已经集成在源码中.如果机器有外网或者配置了http代理,可以直接调用编译命令来进行编译. windows&Linux命令如下: ./build/mvn \ ...
- tkinter内嵌Matplotlib系列(一)之解读官网教材
目录 目录 前言 (一)小目标 1.首页卷面: 2.绘制一条函数曲线: 3.绘制多条曲线: (二)官方教材 1.对GUI框架的支持: 2.内嵌于tkinter的说明文档: (三)对官方教程的解读 目录 ...
- ABAP 在被访问的程序中获取访问程序的全局变量
前些日子接到过一个看起来比较普通的需求: 存在一个系统标准函数组FG01,内含函数模块FM00,FM01……等等.在系统程序中,FM00会调用FM01,通过FM01获取获取某些数据. 需求要求,复制一 ...
- Redis的安装和Jedis的使用
Redis的安装和学习资料 Redis的安装可以参考 https://www.cnblogs.com/dddyyy/p/9763098.html Redis的学习可以参考https://www.cnb ...
- Arcgis10.3在添加XY数据时出现问题
准备通过excel表格(xls格式)中的经纬度生成点数据,但是选择数据的时候报错:连接到数据库失败,常规功能故障,外部表不是预期的格式.如下图所示: 解决方法: 将xls格式的表格另存为csv格式,重 ...