Nagios interpreta mal a resposta HTTP!

0

Instalei o Nagios 4.0.1 no meu servidor CentOS 6.5. Como eu configurei o Node.js para usar a porta 80, configurei o serviço Apache ( httpd ) para ouvir a porta 3000.

Eu posso abrir o console do Nagios e tudo parece bem usando HTTP na porta 3000. O problema está no status dos serviços do Nagios que mostra meu HTTP como CRITICAL com a descrição:

Connection refused HTTP CRITICAL - Unable to open TCP socket

Tem alguma ideia de como posso corrigir este problema?

    
por artajalli 08.06.2014 / 14:14

1 resposta

1

Os plugins dentro do Nagios são realmente o molho secreto do que faz o Nagios tão poderoso. A verificação que executa a verificação HTTP é esta:

$ /usr/lib64/nagios/plugins/check_http
check_http: Could not parse arguments
Usage:
 check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>]
       [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-a auth]
       [-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>]
       [-e <expect>] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>]
       [-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>]
       [-A string] [-k string] [-S] [--sni] [-C <age>] [-T <content-type>]
       [-j method]

Observe que há um comutador, -p <port> , que você pode substituir o padrão, que é a porta 80, se não estiver especificado.

Exemplo

$ /usr/lib64/nagios/plugins/check_http -H fan
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.025 second response time |time=0.024596s;;;0.000000 size=5233B;;;0

Para alterar a porta ou ser explícito:

$ /usr/lib64/nagios/plugins/check_http -H fan -p 80
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.003 second response time |time=0.002890s;;;0.000000 size=5233B;;;0

Se você estiver usando uma verificação padrão no Nagios, provavelmente precisará criar sua própria verificação de serviço personalizada que chama a porta 3000 em vez da porta padrão 80.

Personalizando uma verificação de serviço

Você pode criar e / ou modificar a sua verificação do serviço HTTP para que seja necessário um argumento adicional, neste caso, a porta TCP a ser usada.

Detalhes são discutidos mais adiante neste artigo intitulado: Trabalhando com check_http e check_bigip_pool para monitorar sites da web .

Exemplo

trecho

Here is how I defined the commands. For separation purposes, I prefer to the definitions within a distinct configuration file and give each command name a distinct definition. This way if one port is not accessible, you can address the one port issue and not assume the entire web application is down.

Command Definition > (nagios_host:/path_to_nagios/etc/objects/commands/cmd_http.cfg):

   define command{
           command_name    check_webstore
           command_line    $USER1$/check_http  -H $ARG1$ -u $ARG2$ -p $ARG3$
           }
    
por 08.06.2014 / 14:50