2016-08-11 45 views
0

我正在使用两台VM。远程服务未从Nagios监控服务器运行

第一:Ubuntu的14.04.3 LTS(192.168.1.102)

第二:CentOS的7(192.168.1.105)

在192.168.1.102我有Nagios的核心V4.1.1,NagiosQL V3.2.0和NRPE v2.15已安装。

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

我已经使用NRPE插件使用下面的链接

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

我能够检查Apache的阿波罗服务于192.168运行或不添加192.168.1.105主机给Nagios监控服务器(192.168.1.102)。使用以下脚本从192.168.1.102

#!/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阿波罗服务没有运行,然后我想运行此服务的1.105(Nagios的监控服务器)。为此,我修改上面的脚本如下

#!/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 

回答

0

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

  1. 使用'哪个服务'并确定它是'/ usr/sbin/service'。我位于不同的文件夹中。
  2. 确保上面的路径/命令在/ etc/sudoers文件中正确设置。
  3. 然后修改你的脚本实际使用的 '服务' 命令,如:

$ servicestatus =须藤/ sbin目录/服务阿波罗经纪业务开始

+0

这样“的nagios ALL = NOPASSWD :/ usr/sbin/service apollo-broker-service“ – user3441151