之前总有人抱怨nconf还需要手动执行脚本,配置才可以生效,太麻烦了,后来也说过可以通计划任务来解决,但是最快也要1分钟才会执行一次,不够及时,想一生成nagios配置文件就可以看到结果,今天这个问题可以彻底解决了!点nconf里的【 Generate Nagios config 】生成Nagios配置文件的同时自动执行脚本,使Nagios的配置文件生效,这样就省的再手动执行一次脚本了,一次性web方式搞定了。
解决办法
1、修改 deployment.ini 配置文件
文件在此目录下 /var/www/html/nconf/config,修改 deployment.ini 文件里第一个中括号下的内容,去掉前面的“分号”符号,并增加要执行的脚本,具体配置如下
修改前:
- ;[extract config]
- ;type = local
- ;source_file = “/var/www/html/nconf/output/NagiosConfig.tgz”
- ;target_file = “/tmp/”
- ;action = extract
修改后:
- [extract config]
- type = local
- source_file = “/var/www/html/nconf/output/NagiosConfig.tgz”
- target_file = “/tmp/”
- action = extract
- reload_command = “sudo /var/www/html/nconf/ADD-ONS/deploy_local.sh”
2、至此直接点击nconf里的【 Generate Nagios config 】生成配置文件会报以下错误
system call FAILED sudo /var/www/html/nconf/ADD-ONS/deploy_local.sh
sudo: sorry, you must have a tty to run sudo
修改 /etc/sudoers 文件,此文件默认是不可修改的,可以通过直接运行 visudo 来修改
- 1)前面加#号注释掉以下行
- #Defaults requiretty //注释掉
- 2)在这后面添加相关权限
- root ALL=(ALL) ALL
- //在此行下面添加下面内容
- apache ALL=NOPASSWD:/sbin/sudo,/var/www/html/nconf/ADD-ONS/deploy_local.sh
至此修改完毕,出现以下结果就对了
system call OK sudo /var/www/html/nconf/ADD-ONS/deploy_local.sh
Running configuration check…done.
Reloading nagios configuration…done
原创文章,作者:wwh,如若转载,请注明出处:https://www.wuwenhui.cn/148.html