为 Icinga2 创建自定义插件

为 Icinga2 创建自定义插件

我是使用 icinga 和 nagios 进行服务器管理的新手。我在一台机器上安装了 icinga,并设置了所有基本功能。我尝试的下一步是检查某些服务是否在端口上运行8080, 8081 and 8082。我为此编写了一个快速的 python 脚本。我将该文件放在 下/usr/local/lib/myscript.py。我做的下一步是在 下创建一个命令/etc/nagios-plugins/config/testone.cfg。我的命令如下所示

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
        }

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

有人可以指导我完成这些步骤吗?

答案1

Icinga不要与和混淆Icinga2。它们是不同的工具。 配置格式与和Icinga2不同。因此配置有很大的不同IcingaNagios对象在 中icinga2。请参阅官方迁移文档:网址

因此,对于您的情况,您需要使用CheckCommand而不是commandservice定义也需要改变。

所有配置文件都在目录中,并且插件目录应该在文件/etc/icinga2中定义。/etc/icinga2/constants.conf

在重新启动/重新加载之前使用命令检查Icinga2配置文件是否存在语法错误:/etc/init.d/icinga2 checkconfig

答案2

获取更多信息的一个好方法是运行此命令: 。它的作用与7171u 指出的icinga2 daemon -C几乎相同。/etc/init.d/icinga2 checkconfig

相关内容