下载地址:
Rrtool地址:httposs.oetiker.chrrdtool
Pnp地址:http://docs.pnp4nagios.org/
需要 rrtool 支持
yum install rrdtool gd gd-devel php-gd
安装pnp4nagios
tar zxvf pnp4nagios-0.6.21.tar.gz cd pnp4nagios-0.6.21 ./configure
报错
configure:error: Perl Module Time::HiRes not available
解决方法
yum installperl-Time-HiRes
make make install make install-config make install-init make install-webconf //apache服务器需要
安装目录: /usr/local/pnp4nagios
创建配置文件
cd /usr/local/pnp4nagios/etc mv misccommands.cfg-sample misccommands.cfg mv nagios.cfg-sample nagios.cfg mv rra.cfg-sample rra.cfg cd /usr/local/pnp4nagios/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 mv check_nwstat.cfg-sample check_nwstat.cfg
service npcd restart
修改nagios.cfg
process_performance_data=1 //由0改为1 host_perfdata_command=process-host-perfdata //前面的注释拿掉 service_perfdata_command=process-service-perfdata //注释拿掉
修改commands.cfg
# 'process-host-perfdata' command definition define command{ command_name process-host-perfdata command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA } # 'process-service-perfdata' command definition define command{ command_name process-service-perfdata command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl }
修改配置文件templates.cfg,添加以下内容
define host { name hosts-pnp register 0 action_url /pnp4nagios/graph?host=$HOSTNAME$ process_perf_data 1 } define service { name srv-pnp register 0 action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$ process_perf_data 1 }
修改服务器配置文件localhost.cfg
define host{ use linux-server,hosts-pnp host_name localhost alias localhost address 127.0.0.1 } define service{ use local-service,srv-pnp host_name localhost service_description PING check_command check_ping!100.0,20%!500.0,60% }
配置apache
pnp4nagios4.10版本apache至此不需要做任何配置,直接就可以访问了,升级到0.6后发现必须rewrite了
安装pnp4nagios 时使用make install-webconf
这个会在/etc/httpd/ conf.d/中生成pnp4nagios.conf文件将其复制到http.conf文件中
# SAMPLE CONFIG SNIPPETS FOR APACHE WEBSERVER Alias /pnp4nagios"/usr/local/pnp4nagios/share" <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 <IfModulemod_rewrite.c> #Turn on URL rewriting RewriteEngineOn OptionssymLinksIfOwnerMatch #Installation directory RewriteBase/pnp4nagios/ #Protect application and system files from being viewed RewriteRule"^(?:application|modules|system)/" - [F] #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] </IfModule> </Directory>
修改/etc/nagios/cgi.cfg里的用户名是无效的
#default_user_name=guest
设置项,取消注释,修改为
default_user_name=nagiosadmin
service nagios restart service httpd restart
进入后点击小太阳出现PNP4Nagios Environment Tests
将/usr/local/pnp4nagios/share 中的install.php 删除即可
点击小太阳出现
Please check the documentation for information about the followingerror.
session_start():open(/var/lib/php/session/sess_4m6ehg7pt0d113hvoni3es4c62, O_RDWR) failed: Permissiondenied (13)
file [line]:
/usr/local/pnp4nagios/lib/kohana/system/libraries/Session.php[159]:
Back
解决方案:
默认的php是apache的组,而我的httpd.conf中将httpd的服务改成了nagios用户和组
所以将php权限改为nagios 即可
cd /var/lib chown -R nagios.nagios php/