我在一些分布式窗口服务器上安装了NSClient++,我正在使用Icinga来监视这些服务器。我还在每台服务器上附加了一个UPS,它可以在调度关机之前执行自定义命令。我想要创建一个批处理脚本,它调用NSCA客户端通知我的中央服务器主机正在运行电池电源。从nsc.ini看来,NSCAClient只可能定期检查本地命令/服务并将结果提交给中央服务器。做我想做的事有可能吗?如果有,怎么做?
发布于 2014-09-11 20:45:44
是的。
您可以从命令行使用NSCA和NRPE (如果您有更新版本的NSClient++),这意味着您可以随意提交数据。这将适用于0.4.2和0.4.3 (可能还有0.4.1)
nscp nsca --command wicked_command --result WARNING --message "Wh000t I am wicked" --host 127.0.0.1 --log debug --source-host MyHost
对于更多选项,请运行:
nscp nsca -- --help # <0.4.2
nscp nsca --help # >0.4.3
如果您想测试这一点,可以使用以下配置:
[/modules]
SimpleFileWriter = enabled
NSCAServer = enabled
[/settings/default]
allowed hosts = 127.0.0.1
[/settings/NSCA/server]
inbox = FILE
然后启动nsclient++ (在测试模式下)并发出上面的命令,并为发送到NSCA的每个命令(使用上面的命令)写入一个文件output.txt。
发布于 2014-09-11 06:46:51
NSClient++文档非常彻底,所以您可能需要从那里开始。
https://serverfault.com/questions/627784
复制