为Icinga2创build自定义插件

我是icinga和nagios用于服务器pipe理的初学者。 我在机器上安装了icinga,并设置了所有的基础知识。 我尝试的下一步是检查某些服务是否在端口8080, 8081 and 8082运行。 我为此写了一个快速的Python脚本。 我将该文件放在/usr/local/lib/myscript.py下。 我做的下一步是在/etc/nagios-plugins/config/testone.cfg下创build一个命令。 我的命令是这样的

 define command{ command_name check_restarts command_line python /usr/local/lib/myscript.py -w 3 -c 5 -p 8080 command_line python /usr/local/lib/myscript.py -w 3 -c 5 -p 8081 command_line python /usr/local/lib/myscript.py -w 3 -c 5 -p 8082 } 

然后,我在/etc/icinga2/conf.d/services.conf下向services.conf添加了一个服务。 但是,当我重新启动icinga时出现一个错误,当我尝试sudo service icings2 status时,显示消息Backend icinga not running在UI上Backend icinga not running ,并且错误指向services.conf

任何人都可以请指导我在这些步骤?

不要与IcingaIcinga2混淆。 他们是不同的工具。 Icinga2configuration格式与IcingaNagios不同。 所以在icinga2中configuration对象有很大的改变。 请参阅官方迁移文档: URL

所以你的情况,你需要使用CheckCommand而不是command 。 另外service定义需要改变。

所有的configuration文件都在/etc/icinga2目录下,而插件目录应该在/etc/icinga2/constants.conf文件中定义。

检查Icinga2configuration文件的语法错误之前重新启动/重新加载命令: /etc/init.d/icinga2 checkconfig

获取更多信息的好方法是运行以下命令: icinga2 daemon -C 。 它几乎与/etc/init.d/icinga2 checkconfig指出的/etc/init.d/icinga2 checkconfig相同。