您的位置:首页 > 移动开发 > IOS开发

完整nagios安装最新pnp版绘图-sync模式

2012-01-13 16:04 597 查看
最近搞了搞nagios并对最新版本的pnp加了图形,现就配置过程,写成文档如下,以备忘,也给广大同行一个借鉴参考。

一、下载安装
http://pnp4nagios.org 下载地址
tar -xzvf pnp4nagios-0.6.16.tar.gz
cd pnp4nagios-0.6.16
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-rrdtool=/usr/local/rrdtool/bin/rrdtool --with-perfdata-dir=/usr/local/nagios/share/perfdata
make all
make install
make install-webconf(可不做,只是安装pnp4nagios.conf文件到此路径: /etc/httpd/conf.d/pnp4nagios.conf下,可自行添加到httpd.conf中)
make install-config
make install-init
二、配置
1、配置nagios.cfg添加以下参数
process_performance_data=1
host_perfdata_command=process-host-perfdata
service_perfdata_command=process-service-perfdata
enable_environment_macros=1
之后找到836行, 注释此语句
#process_performance_data=0
2、将下列配置文件重命名,使之能够被程序识别
cd /usr/local/pnp4nagios/etc
mv nagios.cfg-sample nagios.cfg (可不做)
mv misccommands.cfg-sample misccommands.cfg
mv rra.cfg-sample rra.cfg
cd /usr/local/pnp/etc/pages/
mv web_traffic.cfg-sample web_traffic.cfg
cd ../check_commands/
mv check_all_local_disks.cfg-sample check_all_local_disks.cfg
mv check_nrpe.cfg-sample check_nrpe.cfg
service npcd restart
3、修改nagios下配置文件 commands.cfg
添加下面两行在文件的末行 ,并删除或注释掉原有对process-host-perfdata和process-service-perfdata进行定义的字段
define command {
command_name process-service-perfdata
command_line /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl
}
define command {
command_name process-host-perfdata
command_line /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
}
4、修改配置文件templates.cfg
define host {
name hosts-pnp
register 0
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
process_perf_data 1
}
define service {
name srv-pnp
register 0
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
process_perf_data 1
}
5、回到pnp解压目录下,复制鼠标悬停图标显示,预览绘图所需的文件 .
cd /root/soft/pnp4nagios-0.6.16/contrib/ssi
cp * /usr/local/nagios/share/ssi/
悬停在小太阳上就会出现预览图
6、定义监控服务和主机配置文件
修改主机配置文件
define host{
use standard-server,hosts-pnp
host_name localhost-93
alias 192.168.1.93
address 192.168.1.93
}

define host{
use standard-server,hosts-pnp
host_name 192.168.1.46
alias 192.168.1.46
address 192.168.1.46
}

修改服务配置文件
define service {
use service-all,srv-pnp
host_name localhost-93
service_description check-http
check_command check_http
}

define service {
use service-all,srv-pnp
host_name localhost-93
service_description check-disk
check_command check_nrpe!check_disk
}

define service {
use service-all,srv-pnp
host_name localhost-93
service_description check-alive
check_command check-host-alive
}

define service {
use service-all,srv-pnp
host_name localhost-93
service_description check-load
check_command check_nrpe!check_load
}

define service {
use service-all,srv-pnp
host_name localhost-93
service_description Prot-3306
check_command check_tcp!3306!-t 30 -w 10 -c 20

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
重启nagios: service nagios restart
7、修改apache配置文件添加下列
Alias /pnp4nagios "/usr/local/pnp4nagios/share" (也不能随便改路径否则无法点击小 太阳无法找到pnp4nagios访问,如果要改需要修改PHP文件)

<Directory "/usr/local/pnp4nagios/share">
AllowOverride None
Order allow,deny
Allow from all
#
# Use the same value as defined in nagios.conf
#
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
<IfModule mod_rewrite.c>
# Turn on URL rewriting
RewriteEngine On
Options FollowSymLinks
# Installation directory
RewriteBase /pnp4nagios/
# Protect application and system files from being viewed
RewriteRule ^(application|modules|system) - [F,L]
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT,L]
</IfModule>
</Directory>
重启apache: /usr/local/apache/bin/httpd -k restart
三、测试
wget http://verify.pnp4nagios.org/verify_pnp_config
chmod +x verify_pnp_config
perl verify_pnp_config --mode sync --config=/usr/local/nagios/etc/nagios.cfg --pnpcfg=/usr/local/pnp4nagios/etc
[INFO] ========== Starting Environment Checks ============
[INFO] My version is: verify_pnp_config-0.6.16-R.31
[INFO] Reading /usr/local/nagios/etc/nagios.cfg
[OK ] Running product is 'nagios'
[OK ] object_cache_file is defined
[OK ] object_cache_file=/usr/local/nagios/var/objects.cache
[INFO] Reading /usr/local/nagios/var/objects.cache
[OK ] resource_file is defined
[OK ] resource_file=/usr/local/nagios/etc/resource.cfg
[INFO] Reading /usr/local/nagios/etc/resource.cfg
[INFO] Reading /usr/local/pnp4nagios/etc/process_perfdata.cfg
[INFO] Reading /usr/local/pnp4nagios/etc/pnp4nagios_release
[OK ] Found PNP4Nagios version "0.6.16"
[OK ] Effective User is 'nagios'
[OK ] User nagios exists with ID '503'
[OK ] Effective group is 'nagios'
[OK ] Group nagios exists with ID '504'
[INFO] ========== Checking Sync Mode Config ============
[OK ] process_performance_data is 1 compared with '/1/'
[OK ] enable_environment_macros is 1 compared with '/1/'
[OK ] service_perfdata_command is defined
[OK ] service_perfdata_command=process-service-perfdata
[OK ] host_perfdata_command is defined
[OK ] host_perfdata_command=process-host-perfdata
[INFO] Nagios config looks good so far
[INFO] ========== Checking config values ============
[OK ] Command process-service-perfdata is defined
[OK ] '/usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl'
[OK ] Command looks good
[OK ] Script /usr/local/pnp4nagios/libexec/process_perfdata.pl is executable
[OK ] Command process-host-perfdata is defined
[OK ] '/usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA'
[OK ] Command looks good
[OK ] Script /usr/local/pnp4nagios/libexec/process_perfdata.pl is executable
[INFO] ========== Starting global checks ============
[OK ] status_file is defined
[OK ] status_file=/usr/local/nagios/var/status.dat
[INFO] Reading /usr/local/nagios/var/status.dat
[INFO] ==== Starting rrdtool checks ====
[OK ] RRDTOOL is defined
[OK ] RRDTOOL=/usr/local/rrdtool/bin/rrdtool
[OK ] /usr/local/rrdtool/bin/rrdtool is executable
[OK ] RRDtool 1.4.5 Copyright 1997-2010 by Tobias Oetiker <tobi@oetiker.ch>
[OK ] USE_RRDs is defined
[OK ] USE_RRDs=1
[OK ] Perl RRDs modules are loadable
[INFO] ==== Starting directory checks ====
[OK ] RRDPATH is defined
[OK ] RRDPATH=/usr/local/nagios/share/perfdata
[OK ] Perfdata directory '/usr/local/nagios/share/perfdata' exists
[WARN] 11 hosts/services are not providing performance data
[WARN] 'process_perf_data 1' is set for 12 hosts/services which are not providing performance data!
[OK ] 'process_perf_data 1' is set for 131 of your hosts/services
[INFO] ==== System sizing ====
[OK ] 130 hosts/service objects defined
[HINT] Use at least mode 'bulk' to reduce I/O
[INFO] ==== Check statistics ====
[WARN] Warning: 2, Critical: 0
[WARN] Checks finished...
1、pnp 编译错误
configure: error: Perl Module Time::HiRes not available
解决:
yum instal perl*
2、编译时候出现
RRDs Perl Modules: *** NOT FOUND ***
解决:
cp /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/auto/RRDs /RRDs.so /usr/lib/perl5/5.8.5/i386-linux-thread-multi/
cp /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/* /usr/lib/perl5/5.8.5/i386-linux-thread-multi/
3、php5.1.6无GD模块
快速添加
yum install php-gd
重启apache
http://www.boutell.com/gd/faq.html

四、生成的图像



附件:http://down.51cto.com/data/2359664
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息