Nagios监控ActiveMQ插件开发和部署注意事项

前提,监控服务器是Ubuntu14 操作系统。被监控服务器是RHEL6.5 RHEL7 

1、自定义插件可以使用bash、python等脚本来实现。

2、通过nrpe插件来实现监控服务器和被监控主机之间的通信

3、一定要注意监控脚本的所属用户、用户组,都应该是nagios

4、自定义插件,需要先在被监控主机上部署、同时修改/etc/nagios/nrpe.cfg 添加监控命令配置,如下示例:(被监控主机需要重启服务才能生效 service nrpe restart)

command[check_activemq_queues]=sudo /usr/lib64/nagios/plugins/libexec/check_activemq_queues.sh

5、监控服务器上要添加上对应的command (/etc/nagios3/commands.cfg)

define command{ 
        command_name    check_activemq_queues 
        command_line    /usr/lib/nagios/plugins/check_activemq_queues.sh $ARG1$ $ARG2$ $ARG3$
        }

6、监控服务器上同样需要包含这个监控脚本。在这个目录下 /usr/lib/nagios/plugins/ 同样需要注意脚本的属主。

7、监控服务器上,添加新增的监控服务配置,在/etc/nagios3/servers/ 下面的对应服务器配置上,增加一个服务定义。

define service{
        use                             generic-service         
        host_name                       xx.xx.xx
        service_description             ActiveMQ status
        check_command                   check_nrpe_1arg!check_activemq_queues
        }
check_nrpe_1arg这个参数,指定监控服务器对执行的脚本,不传入自定义参数,直接执行脚本。 这个配置在监控服务器和被监控主机上需要协调好,否则会出现通信错误。

8、监控服务器需要重新加载配置文件生效。service nagios3 reload

常见错误分析:

错误提示: NRPE: Unable to read output

解决方法:通常是权限问题导致的,执行nagios的脚本是通过nagios用户来执行的。需要检查nagios脚本的属主和组。如果之前没有通过创建nagios用户来部署nagios,就会出现这个问题。

原文地址:https://www.cnblogs.com/geektown/p/5006665.html