nagios4.1.1 + pnp4nagios 0.6.25 的集成 生成图表

来源:互联网 发布:php 手机回收网站源码 编辑:程序博客网 时间:2024/05/02 00:05

参考 
1. http://www.aboutmonitoring.com/nagios4-check_mk-pnp4nagios-nagvis/ 
2. http://blog.csdn.net/TCH8502/article/details/22151525 
3. https://docs.pnp4nagios.org/pnp-0.6/verify_pnp_config 
4. http://blog.chinaunix.net/uid-261392-id-2138990.html 
5. 官方文档 https://docs.pnp4nagios.org/pnp-0.6/start (重要)

需要 rrtool 支持 
yum install rrdtool gd gd-devel php-gd

(1)安装 
#tar -zxvf php4nagios-*.tar.gz 
#cd php4nagios 
#./configure –with-nagios-user=nagios –with-nagios-group=nagios (如果单独编译安装的rrdtoool,则使用–with-rrdtool=/usr/local/rrdtool-1.2.xx/bin/rrdtool这样的形式) 
#make all 
#make install 
#make install-webconf 
#make install-config 
#make install-init 

#make fullinstall
(使用这条命令替换所有的make命令, make fullinstall) 
#service httpd restart

(2)配置
pnp4nagios有5种模式,配置方法分别如下
  • Synchronous Mode: (不讨论,参考官网https://docs.pnp4nagios.org/pnp-0.6/config)
  • Bulk Mode:(不讨论,参考官网https://docs.pnp4nagios.org/pnp-0.6/config)
  • Bulk Mode with NPCD:(我使用这种模式)
  • Bulk Mode with NPCD and npcdmod(不讨论,参考官网https://docs.pnp4nagios.org/pnp-0.6/config)
  • Gearman Mode(不讨论,参考官网https://docs.pnp4nagios.org/pnp-0.6/config)
Bulk Mode with NPCD模式的详细配置过程
  1. vim /usr/local/nagios/etc/nagios.cfg
    • 修改内容

      •  process_performance_data=0

         process_performance_data=1
    • 增加内容
      ## service performance data#service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdataservice_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=aservice_perfdata_file_processing_interval=15service_perfdata_file_processing_command=process-service-perfdata-file## host performance data starting with Nagios 3.0# host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdatahost_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$host_perfdata_file_mode=ahost_perfdata_file_processing_interval=15host_perfdata_file_processing_command=process-host-perfdata-file
  2. vim /usr/local/nagios/etc/objects/commands.cfg

    增加command

    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$}
  3. 启动npcd

    /usr/local/pnp4nagios/bin/npcd -d -f /usr/local/pnp4nagios/etc/npcd.cfg
  4. 重启nagios

    systemctl restart nagios
  5. 检查数据文件是否存在

    ls -la /usr/local/pnp4nagios/var/service-perfdata
  6. 下载verify_pnp_config

    wget http://verify.pnp4nagios.org/verify_pnp_config
  7. 检查pnp4nagios 在bulk+npcd模式下 是否配置正确

    perl /home/nagios/verify_pnp_config --mode bulk+npcd --config=/usr/local/nagios/etc/nagios.cfg --pnpcfg=/usr/local/pnp4nagios/etc输出内容:[root@nagios_server objects]# perl /home/nagios/verify_pnp_config --mode bulk+npcd --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.25-R.40[INFO]  Start Options: /home/nagios/verify_pnp_config --mode bulk+npcd --config=/usr/local/nagios/etc/nagios.cfg --pnpcfg=/usr/local/pnp4nagios/etc[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.25"[OK  ]  ./configure Options '--with-nagios-user=nagios' '--with-nagios-group=nagios'[OK  ]  Effective User is 'nagios'[OK  ]  User nagios exists with ID '1001'[OK  ]  Effective group is 'nagios'[OK  ]  Group nagios exists with ID '1001'[INFO]  ========== Checking Bulk Mode + NPCD Config  ============[OK  ]  process_performance_data is 1 compared with '/1/'[OK  ]  service_perfdata_file is defined[OK  ]  service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata[OK  ]  service_perfdata_file_template is defined[OK  ]  service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$[OK  ]  PERFDATA template looks good[OK  ]  service_perfdata_file_mode is defined[OK  ]  service_perfdata_file_mode=a[OK  ]  service_perfdata_file_processing_interval is defined[OK  ]  service_perfdata_file_processing_interval=15[OK  ]  service_perfdata_file_processing_command is defined[OK  ]  service_perfdata_file_processing_command=process-service-perfdata-file[OK  ]  host_perfdata_file is defined[OK  ]  host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdata[OK  ]  host_perfdata_file_template is defined[OK  ]  host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$[OK  ]  PERFDATA template looks good[OK  ]  host_perfdata_file_mode is defined[OK  ]  host_perfdata_file_mode=a[OK  ]  host_perfdata_file_processing_interval is defined[OK  ]  host_perfdata_file_processing_interval=15[OK  ]  host_perfdata_file_processing_command is defined[OK  ]  host_perfdata_file_processing_command=process-host-perfdata-file[INFO]  Nagios config looks good so far[INFO]  ========== Checking config values ============[OK  ]  npcd daemon is running[OK  ]  /usr/local/pnp4nagios/etc/npcd.cfg is used by npcd and readable[INFO]  Reading /usr/local/pnp4nagios/etc/npcd.cfg[OK  ]  perfdata_spool_dir is defined[OK  ]  perfdata_spool_dir=/usr/local/pnp4nagios/var/spool[OK  ]  1 files found in /usr/local/pnp4nagios/var/spoolservice_perfdata_file_processing_command at /home/nagios/verify_pnp_config line 462.[OK  ]  Command process-service-perfdata-file is defined[OK  ]  '/bin/mv /usr/local/pnp4nagios/var/service-perfdata /usr/local/pnp4nagios/var/spool/service-perfdata.$TIMET$'[OK  ]  Command looks goodhost_perfdata_file_processing_command at /home/nagios/verify_pnp_config line 462.[OK  ]  Command process-host-perfdata-file is defined[OK  ]  '/bin/mv /usr/local/pnp4nagios/var/host-perfdata /usr/local/pnp4nagios/var/spool/host-perfdata.$TIMET$'[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]  host_query =[INFO]  service_query =[INFO]  Reading /usr/local/nagios/var/status.dat[INFO]  ==== Starting rrdtool checks ====[OK  ]  RRDTOOL is defined[OK  ]  RRDTOOL=/bin/rrdtool[OK  ]  /bin/rrdtool is executable[OK  ]  RRDtool 1.4.8  Copyright 1997-2013 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/pnp4nagios/var/perfdata[OK  ]  Perfdata directory '/usr/local/pnp4nagios/var/perfdata' exists[WARN]  2 hosts/services are not providing performance data[WARN]  'process_perf_data 1' is set for 3 hosts/services which are not providing performance data![OK  ]  'process_perf_data 1' is set for 77 of your hosts/services[INFO]  ==== System sizing ====[OK  ]  76 hosts/service objects defined[INFO]  ==== Check statistics ====[WARN]  Warning: 2, Critical: 0[WARN]  Checks finished...

(3)集成到nagios的web页面中

  • 在/usr/local/nagios/etc/objects/templates.cfg 模板中加入
    define host{        name   host-pnp        register   0        action_url    /pnp4nagios/graph?host=$HOSTNAME$&srv=_HOST_        }
  • 在被监控主机对应的cfg文件中,在define host use 一下模板中定于的 host-pnp 就会 在web上显示一个图表的标记
例如:
vim /usr/local/nagios/etc/objects/oa_server.cfg 

define host{ use    windows-server,host-pnp; Inherit default values from a template, host-pnp 就是调用在templates.cfg 中定于的显示图像的功能 ...}



(4)配置apache

pnp4nagios4.10版本apache至此不需要做任何配置,直接就可以访问了,升级到0.6后发现必须rewrite了

安装pnp4nagios 时使用make install-webconf
这个会在/etc/httpd/ conf.d/中生成pnp4nagios.conf文件将其引入到/usr/local/apach2/conf/http.conf文件中

# 使用 pnp4nagiosInclude /etc/httpd/conf.d/pnp4nagios.conf


访问http://server_ip/pnp4nagios  (所有红色的内容都要修正成绿色)

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 酷派手机收不到验证码怎么办 苹果想把图片上的字盖上怎么办 婴儿自己把眼珠子抠红了怎么办 如果美陆战队员进入台湾那怎么办? 顺产生完小孩吸不通奶怎么办 耐克空军一号白色底发黄怎么办 中行网银u盾丢了怎么办 有人用你的手机号码不停注册怎么办 获得公开你微信头像的权限是怎么办 手机能进的网站电脑进不去怎么办 苹果8p下不了微信怎么办 苹果手机版本过底不能下微信怎么办 手机打开视频跳转到qq是怎么办 淘宝店铺显示服务竟然出错了怎么办 母羊下完羊羔把羊衣吃了怎么办? 移植后56天有黑色东西怎么办 我家的金丝熊浑身都是尿怎么办 一键启动车钥匙丢了怎么办 把爷爷的遗物弄丢了怎么办 如果你娶了一个傻子你怎么办 在国外订机票手机收不到信息怎么办 网上买机票名字写错了怎么办 买机票名字错了一个字怎么办 微店没收到货却显示已收货怎么办? 手机存的照片误删了怎么办 魔兽世界把要用的装备分解了怎么办 邻居家的狗见到我就叫怎么办 我的世界玩的时间长会卡应该怎么办 网易我的世界密码账号都忘了怎么办 我的世界创建世界画面乱码了怎么办 网易我的世界云端存档不够用怎么办 玩刺激战场带耳机声音有延迟怎么办 我的世界手机版狼变色怎么办 我的世界开了光影太阳太刺眼怎么办 我的世界饥饿值掉的慢怎么办 我的世界合装备过于昂贵怎么办 我的世界故事模式屏幕是黑的怎么办 人物只剩下轮廓的图用ps怎么办 两年义务兵考军校分数不够怎么办 大学生兵考上军校后原学籍怎么办 我的世界工业附魔到精准采集怎么办