Consultar o status do Nagios programaticamente

4

Adquiri recentemente um belo display LED 7 × 11 e quero (entre outras coisas) exibir o status nagios nele. Para isso eu preciso consultar o status da minha instalação do Nagios.

Qual é a maneira apropriada de obter um resumo de status (por exemplo, número de serviços não-OK) de um servidor remoto Nagios de, digamos, um script perl?

    
por Joachim Breitner 31.12.2013 / 18:38

2 respostas

4

Eu mantenho uma instalação nagios extremamente grande e posso dizer que o melhor método absoluto para fazer isso é por meio do " livestatus "corretor de eventos:

link

O Livestatus fornece acesso instantâneo ao status do nagios através de um soquete local ou TCP e introduz quase zero de carga adicional de CPU no seu servidor de monitoramento (mas tem uma pegada de memória, é claro). A integração simples com o xinetd / unixcat permite que ele seja consultado através da rede. A saída está em um dos três formatos: CSV, JSON e Python. Várias opções de configuração estão disponíveis e são estáveis o suficiente para uso de produção. A documentação é muito boa.

Além disso, o livestatus ativa outros complementos do nagios, como " MK Multisite ", que agrega os resultados de várias nagios instalações em uma única GUI sem o uso de NSCA ou resultados de verificações passivas de serviço, que exigem que as configurações nagios sejam mantidas nos servidores mestre e de trabalho.

    
por 31.12.2013 / 19:30
1

Tanto quanto sei, não existe uma API suportada pelo nagios.com para consultar o status do nagios. Existem alguns complementos diferentes que permitirão que você faça isso. Alguns são discutidos nesta questão.

link

Você pode consultar o cgi diretamente e "screen scrape" o html retornado, mas essa não é uma solução muito robusta. Eu tenho mexido um pouco com esta versão de um servidor de API, mas não coloquei na produção.

link

    
por 31.12.2013 / 19:24