2016-09-16 49 views
2

我有Ubuntu的EC2实例我想monitor.I还没有NRPE服务器上安装插件,这是使用xinetd的,而是我已经配置并安装在Nagios的server.However插件除了check_ssh没事的时候,我从测试的libexec被执行目录从Nagios服务器。我有elasticsearch,cassandra和tomcat插件和我的老板不需要任何ec2实例除了nrpe.I已经配置所有这些进程接受任何连接。Nagios的插件位置

+0

你检查本地主机NRPE服务状态? '/ usr/lib/nagios/plugins/check_nrpe -H localhost'的结果是什么? –

+0

NRPE是好的,只是想知道我是否可以在nagios机器上安装插件@StanislavIvanov – khakishoiab

+1

插件应该与NRPE代理安装在同一台机器上。代理通过NAGIOS服务器请求调用插件并发送结果。在服务器,你可以仅用于监控的外部提供的服务(平,HTTP,远程SQL,...) –

回答

1

我们可以有两种不同类型的主机检查:

  1. 直接检查(Nagios的 - >命令check_ping(HOSTADDRESS) - >本地插件check_ping(HOSTADDRESS));

在这种情况下,在第二台机器上不需要插件或NRPE或其他东西。 Nagios呼叫本地插件check_ping,这是一个检查,Nagios得到的结果。您可以使用这种类型的检查PING,HTTP GET,SNMP检查,SQL查询等网络上可用的所有内容。

  • NRPE检查(nagios的 - >命令check_nrpe(HOSTADDRESS,COMMAND) - >本地插件check_nrpe(HOSTADDRESS,COMMAND) - >(网络) - > NRPE服务器命令COMMAND - >本地(对NRPE)插件check_load
  • 在这种情况下,Nagios的电话本地插件check_nrpe,这个插件调用NRPE服务器,NRPE服务器调用它自己的本地插件check_load,并通过网络返回结果。在第二台机器上应该安装NRPE和Nagios插件,同时nrpe.cfg也应该包含必要的命令。您可以将此类型用于CPU加载,内存使用和磁盘空间监视,或创建自定义插件。

    配置实施例:

    第一机器(Nagios的服务器):

    command部分:

    define command{ 
         command_name check_ping 
         command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5 
         } 
    
    define command{ 
         command_name check_nrpe 
         command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ 
    } 
    

    service部分:

    define service{ 
         use     network-service 
         hostgroup_name  common-linux-servers 
         service_description PING 
         check_command  check_ping!100.0,20%!500.0,60% 
         } 
    
    define service{ 
         use      network-service 
         hostgroup_name   common-linux-servers 
         service_description  Current Load 
         check_command   check_nrpe!check_load 
         } 
    

    第二机器在/etc/nagios/nrpe.cfg

    command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20