首页 文章

远程服务未从Nagios Monitoring Server运行

提问于
浏览
0

我正在使用两台VM .

第一:Ubuntu 14.04.3 LTS(192.168.1.102)

第二名:CentOS 7(192.168.1.105)

在192.168.1.102上,我安装了Nagios Core v4.1.1,NagiosQL v3.2.0和NRPE v2.15 .

在192.168.1.105,我安装了Apache Apollo和NRPE v2.15 .

我已经将192.168.1.105主机添加到Nagios Monitoring Server(192.168.1.102)使用NRPE插件使用以下链接

http://www.tecmint.com/how-to-add-linux-host-to-nagios-monitoring-server/

我可以使用192.168.1.102下面的脚本检查Apache Apollo服务是否在192.168.1.105(Nagios Monitoring Server)上运行

#!/bin/bash

if pidof -x "apollo" >/dev/null; then
echo "Apollo MQTT is Running."
exit 0
else
echo "Apollo MQTT is Stopped."
exit 2
fi

但我希望如果我的Apache Apollo服务没有运行,那么我想运行这项服务 . 为此我修改了上面的脚本如下

#!/bin/bash

if pidof -x "apollo" >/dev/null; then
echo "Apollo MQTT is Running."
exit 0
else
echo "Apollo MQTT is Stopped."
servicestatus=sudo /etc/init.d/apollo-broker-service start
$servicestatus
exit 2
fi

但是当我尝试使用以下命令从192.168.1.102 Nagios运行此脚本时

/usr/local/nagios/libexec/check_nrpe -H 192.168.1.105 -c check_service_apollomqtt

然后输出在下面

Apollo MQTT is Stopped.
Starting apollo-broker-service
Could not start apollo-broker-service

我已在192.168.1.105 / etc / sudoers文件中添加以下行

nagios ALL = NOPASSWD: /usr/sbin/service

1 回答

  • 0

    您的脚本根本没有使用服务命令 .

    • 使用'which service'并确定它是'/usr/sbin/service' . 我的位于不同的文件夹中 .

    • 确保在/ etc / sudoers文件中正确设置了上面的路径/命令 .

    • 然后修改您的脚本以实际使用'service'命令,如:

    $servicestatus=sudo /sbin/service apollo-broker-service start

相关问题