Nagios整合pnp绘制性能分析图表

简介:

  Nagios监控的侧重点在此时服务是否正常,是一个瞬时状态。通过对这个状态的监控和告警,管理员可以第一时间对主机或者服务的故障做处理。但是我们往往也非常关心主机的性能以及服务的响应时间等情况,这些情况是一个持续的变化曲线,并非一个实时的值,如果通过查看日志数据来分析的话,既繁琐又抽象,所以,我们希望Nagios可以帮我们做这份工作,然后将报表提交给我们,这样就非常方便了。这就是需要用到的Nagios的相关开源项目—— PNP

Pnp是一个基于phpperl,用rrdtoolnagios采集的数据绘制图表的工具,所以安装pnp之前必须先安装phpperlrrdtool。

注意:安装nagios可以参考文章部署Nagios监控系统,本文是在rhel6.0上进行安装,参考是注意系统的版本。

1、安装phpperl相关软件包

[root@localhost /]#yum -y install php-* perl-*

2、安装rrdtool

安装rrdtool之前确保安装了这些库zlib libpng freetype libart_lgpl,如下图所示:

195705649.jpg

安装rrdtool时必须要安装cgilib这个库,以下是正确的安装方法:

[root@localhost /]#tar zxf /media/cgilib-0.5.tar.gz -C /usr/src/

[root@localhost /]#cd /usr/src/cgilib-0.5

[root@localhost cgilib-0.5]#cp libcgi.a /usr/local/lib

[root@localhost cgilib-0.5]#cp cgi.h /usr/include/

安装rrdtool绘图工具:

释放rrdtool软件包并进行编译前的配置,编译后安装rrdtool

[root@localhost /]#tar zxf /media/rrdtool-1.2.27.tar.gz -C /usr/src/

[root@localhost /]#cd /usr/src/rrdtool-1.2.27

[root@localhost rrdtool-1.2.27]#./configure --prefix=/usr/local/

[root@localhost rrdtool-1.2.27]#make && make install

3、安装pnp

释放pnp软件包并进行编译前的配置

[root@localhost /]#tar zxf /media/pnp-0.4.14.tar.gz -C /usr/src

[root@localhost /]#cd /usr/src/pnp-0.4.14

[root@localhost pnp-0.4.14]#./config --with-rrdtool=/usr/local/bin/rrdtool

注意:./configure 完成后会出现RRDs Perl Modules: *** NOT FOUND***,说RRDs PerlModules在大量安装时可以加速,暂忽略之,继续

如果使用加速功能,用下面的命令:

201117199.jpg根据提示需要继续编译并安装pnp,分别执行以下命令:

[root@localhost pnp-0.4.14]#make all

[root@localhost pnp-0.4.14]#make install

[root@localhost pnp-0.4.14]#make install-config

[root@localhost pnp-0.4.14]#makeinstall-init

安装结束之后,再去检查一下Nagios的插件目录(libexec),就会发现多了一个名为“process_perfdata.pl”的脚本。

让apache的首页默认页支持php格式 ,编辑httpd.conf,在DirectoryIndex后面加上index.php

[root@localhost /]#vim /etc/httpd/conf/httpd.conf

...//省略部分内容

201401838.jpg

重启httpd服务

[root@localhost /]#service httpd restart

访问http://localhost/nagios/pnp/index.php?host=localhost能看到图形,如果nagios尚未采集数据,看到可能是下面的样式

201535967.jpg

4、修改nagios.cfg文件,将绘图功能加入nagios

首先要说明一下Nagios提供的数据接口,也就是PNP的数据来源。在定义hostservice 中都有一个定义项,名为process_perf_data,其值可以定义为01,其作用是是否启用Nagios的数据输出功能。如果你将此项赋值为 1,那么Nagios就会将收集的数据写入到某个文件中,以备提取。

所以如果你想让Nagios将数据输出的话,首先要将Nagios的主配置文件 nagios.cfg中相关的配置修改,修改结果如下:

[root@localhost /]#vim /usr/local/nagios/etc/nagios.cfg

...//省略部分内容

202238851.jpg

202254925.jpg

202310669.jpg

202325137.jpg

202337708.jpg

5、编辑commands.cfg将原来的command_line后的内容替换为下图的内容(下图中的配置项默认存在,只需修改即可)

[root@localhost /]#vim /usr/local/nagios/etc/objects/commands.cfg

...//省略部分内容

202533453.jpg

6、编辑templates.cfg添加pnp

[root@localhost /]#vim /usr/local/nagios/etc/objects/templates.cfg

...//省略部分内容

202827195.jpg

7、修改hosts.cfg配置文件,添加templates.cfg文件中定义的模板:host-pnpsrv-pnp

部分修改如下图所示:

[root@localhost /]#vim /usr/local/nagios/etc/objects/hosts.cfg

202947285.jpg

8、修改services.cfg配置文件,添加templates.cfg文件中定义的模板:host-pnpsrv-pnp

部分修改如下图所示:

[root@localhost /]#vim /usr/local/nagios/etc/objects/services.cfg

203153717.jpg

9、配置pnp

203402322.jpg

重载nagios.cfg配置文件
[root@localhost /]/etc/init.d/nagios reload
访问nagios页面。就可以在nagios的每项监控项目上看到小太阳了.

203528431.jpg

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

203656203.jpg

上图右侧可以看到绘图的时间范围——Timeranges,最短4小时。但有时我们需要查看更短时间范围的曲线时,默认的页面就办不到了,需要手工修改一下配置文件:

在配置里增加30分钟和1小时、2小时的时间间隔.
[root@localhost /]#vim /usr/local/nagios/etc/pnp/config.php

...//省略部分内容

204200505.jpg

此外,配置文件的第86行为默认打开时以哪个时间范围显示图表。

204248408.jpg

按上面的配置,默认打开时,图表的时间范围是1小时内的。可酌情修改。

204336707.jpg



本文转自yun5277 51CTO博客,原文链接:http://blog.51cto.com/dengqi/1287550,如需转载请自行联系原作者

相关文章
|
Kubernetes API 数据库
Crossplane - 比 Terraform 更先进的云基础架构管理平台?
Crossplane - 比 Terraform 更先进的云基础架构管理平台?
|
弹性计算 监控 Linux
跨云厂商网络接入&数据迁移
从华为云、腾讯云接入/搬站到阿里云网络时,暴露数据库公网 IP 有安全隐患,使用传统的 IPSec VPN 配置 VPN 网关过程繁琐,且连接带宽和速度不稳定,传输大量数据耗时很久。通过将 SAG vCPE 镜像部署在您网络的宿主机中,使宿主机作为一个 CPE(Customer-premises equipment)设备为您提供上云服务,突破了物理的限制,更加灵活地帮您将网络接入阿里云。
跨云厂商网络接入&数据迁移
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
261483 0
|
存储 容灾 NoSQL
同城双活的必修课 - 落地经验与关键挑战解析
同城双活作为一种容灾架构,通过在同一城市建立两个数据中心,以确保在一个数据中心发生故障时,系统能够快速切换到另一个数据中心,从而提高系统的可用性
1666 2
同城双活的必修课 - 落地经验与关键挑战解析
|
网络协议 安全 网络安全
常见的网络传输协议有几种
常见的网络传输协议涵盖多个层次,包括传输层(如TCP、UDP、SCTP)、应用层(如HTTP/HTTPS、FTP、SMTP、DNS、SSH)、网络层(如IP、ICMP、ARP)、数据链路层(如Ethernet、PPP、Wi-Fi)及安全协议(如SSL/TLS、IPSec)。这些协议各具特色,适用于不同场景,如TCP用于可靠传输,UDP适合实时应用,而HTTP/HTTPS则服务于网页浏览和数据交换。通过这些协议的协同工作,现代互联网和局域网得以实现多样化的应用和服务。
|
NoSQL Redis 监控
redis-shake数据同步&迁移&备份导入导出工具使用介绍
redis-shake是阿里云Redis&MongoDB团队开源的用于redis数据同步的工具。
72326 4
redis-shake数据同步&迁移&备份导入导出工具使用介绍
|
Java Maven 数据安全/隐私保护
Nexus【应用 01】上传jar包到私有Maven仓库的两种方法:手动 Upload 和 mvn deploy 命令(配置+操作流程)
Nexus【应用 01】上传jar包到私有Maven仓库的两种方法:手动 Upload 和 mvn deploy 命令(配置+操作流程)
4833 0
|
Kubernetes 网络虚拟化 网络架构
k8s 网络组件详细 介绍
k8s 网络组件详细 介绍
|
Cloud Native 安全 网络协议
有没有一些开源的工具可以帮助我抵御DDoS攻击?
开源DDoS防护工具包括: 1. ExaBGP:多功能BGP工具,用于流量保护。 2. DDoS-Ripper:DDoS攻击服务器,产生大量流量。 3. mCaptcha:无感知验证码,防御垃圾信息和DDoS。 4. Gatekeeper:首个开源DDoS防护系统。 5. Curiefense:统一的云原生应用保护平台,内置DDoS防护。 6. XDP-Firewall:利用Linux XDP快速阻断恶意流量的防火墙。
1797 1
|
监控 数据安全/隐私保护 Windows
Nagios 监控Windows服务器(详细篇)
1. 监控内容 windows服务器的内部参数包括以下 a. 内存使用状况 b. CPU负载 c. 磁盘使用状况 d. 服务状态 e. 运行的进程 2. 监控原理 在windows服务器内安装NSClient++的监控引擎,nagios服务器通过check_nt来获取监控数据 3.
1742 0