Após o lançamento do Nagios XI 5+, foi criado a funcionalidade REST API para facilitar as integrações com sistemas on-premise e cloud. A autenticação é feita por API Keys onde cada usuário da aplicação tem sua chave única e iremos mostrar abaixo seu funcionamento.
O acrônimo API é a abreviação de Application Programming Interface, que significa “Interface de Programação de Aplicações”.
API REST é uma abstração de arquitetura de software onde é possível obter dados em um formato padronizado para requisições HTTP.
O Nagios mantém a documentação completa em: Help -> API Docs
Como fazer a consulta REST API no Nagios?
Existem duas opções de uso, sendo: via browser e linha de comando. A diferença entre elas é que o método de inserção "PUT" funciona somente através da linha de comando enquanto para consulta "GET" pode ser utilizado também através do browser.
Agora vamos entender como utilizar a API.
Ao abrir a referência de API do Nagios, devemos escolher qual informação queremos obter.
Iremos explicar as principais a seguir.
Objects Reference: é relacionado aos objetos que são monitorados pelo Nagios, podemos consumir informações dos checks do Hosts/Services, visualizar seus contatos, seus comandos, assim como, fazer consultas mais detalhadas.
Config Reference: é o local que iremos coletar as informações de configuração dos objetos no Nagios, exemplo: tempo do intervalo do monitoramento, os comandos, entre outros. Esses dados também são utilizados para aplicar novas configurações pelo método "PUT", enviando novas configurações.
Exemplo de inserção de nova configuração:
curl -XPUT "http://192.168.0.20/nagiosxi/api/v1/config/host/testapihost?apikey=dUiGeFmKrq0LNmGC9TZ6NK9oKlCihPWWPHmPo9ck0EuhmjVcI9hL9J9Sl0&pretty=1&address=127.0.0.1¬ification_interval=30&applyconfig=1"
System Reference: é o monitoramento da aplicação como um todo, podemos obter métricas de funcionamento e é muito utilizado para análise de problemas (troubleshooting) ajudando a detalhar possíveis erros.
Custom Endpoints (Extra) - O Nagios também permite a criação de url's customizadas, desta forma é possível coletar informações de acordo com a necessidade.
As chamadas REST API do Nagios XI são feitas por API Keys, não sendo necessário passarmos as credenciais de login como argumento no escopo do comando "cURL".
A liberação de consulta API é feita por usuário e não pelo ambiente geral, assim é possível criar uma conta específica para consultas / inserções no sistema.
Em ambientes dinâmicos é possível inserir / deletar hosts e seviços através da API. Desta forma através da criação de um processo onde é acionado o gatilho para execução das mudanças necessárias.
Quer saber mais como criar automações e agilizar os processos de montioramento da sua empresa?
Entre em contato e entenda como a NE Brasil pode te ajudar!