Nconf点生成Nagios配置文件的同时自动执行脚本

   之前总有人抱怨nconf还需要手动执行脚本,配置才可以生效,太麻烦了,后来也说过可以通计划任务来解决,但是最快也要1分钟才会执行一次,不够及时,想一生成nagios配置文件就可以看到结果,今天这个问题可以彻底解决了!

点nconf里的【 Generate Nagios config 】生成Nagios配置文件的同时自动执行脚本,使Nagios的配置文件生效,这样就省的再手动执行一次脚本了,一次性web方式搞定了。

一、修改 deployment.ini 配置文件
文件在此目录下 /var/www/nconf/config,修改 deployment.ini 文件里第一个中括号下的内容,去掉前面的“分号”符号,并增加要执行的脚本,具体配置如下

修改前:

  1. ;[extract config]

  2. ;type        = local

  3. ;source_file = "/var/www/nconf/output/NagiosConfig.tgz"

  4. ;target_file = "/tmp/"

  5. ;action      = extract



修改后:


  1. [extract config]

  2. type        = local

  3. source_file = "/var/www/nconf/output/NagiosConfig.tgz"

  4. target_file = "/tmp/"

  5. action      = extract

  6. reload_command = "sudo /var/www/nconf/ADD-ONS/deploy_local.sh"



二、至此直接点击nconf里的【 Generate Nagios config 】生成配置文件会报以下错误

解决办法如下:

修改 /etc/sudoers 文件,此文件默认是不可修改的,可以通过直接运行 visudo 来修改

1)前面加#号注释掉以下行

#Defaults    requiretty

   

   至此还是会报错,错误如下:


2)在这后面添加相关权限


## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

apache ALL=NOPASSWD:/sbin/sudo,/var/www/nconf/ADD-ONS/deploy_local.sh

3)重新点击按纽“Deploy”,即执行成功。


你可能感兴趣的:(nconf)