Pplware

Nágios – Monitorização Open Source

Por Ricardo Ruivo para o PPLWARE

Este artigo surge na sequência do meu comentário ao artigo  SpiceWorks – Monitorize toda a sua rede informática, ao qual o Pedro Pinto me lançou o repto de escrever sobre Nagios.

Para mim, como administrador de sistema de uma rede informática universitária, o Nagios é a melhor ferramenta de monitorização. Não só por ser opensource mas também pela forma como é possível estender a monitorização aos elementos mais estranhos.

Destaco as seguintes vantagens:

Como monitorizar

Uma das formas que o Nagios tem de monitorizar um serviço é ligar-se ao porto desse serviço e interagir com o mesmo, fazendo-se passar por um cliente. Por exemplo para monitorizar um servidor Web, o Nagios liga-se ao porto 80 desse servidor, interpretando depois a informação que obtém.

Exemplo de uma monitorização de um servidor Web:

Este tipo de monitorização é considerado como monitorização não intrusiva.

Como fazer para monitorizar remotamente um serviço ou servidor ou recurso que não pode ser contactado remotamente, como por exemplo, a memória RAM de um servidor?

Para estes casos existe o NRPE. O NRPE é um agente que é instalado do lado do servidor a monitorizar que comunica posteriormente todas os parâmetros monitorizados ao servidor Nagios. Esta comunicação é efectuada sobre TCP porto 5666 através de um túnel encriptado com SSL. Este agente está disponível para Sistemas Operativos Windows e Linux.

O NRPE utiliza todos os plugins que estão disponíveis para o Nagios ou plugins definidos pelo administrador, como por exemplo, o seguinte script bash que monitoriza a quantidade de memória RAM disponível num servidor Linux.

#!/bin/bash

#

# Check mem

#

#

# Configuration variables

#

FREE=/usr/bin/free

AWK=/bin/awk

WARNING=$1

CRITICAL=$2

#

# GET TOTAL RAM

#

TOTAL_RAM=$(/usr/bin/free -m -o | /bin/awk ‘NR>1’ | /bin/awk ‘NR<2’ | /bin/awk ‘{print $2}’)

FREE_RAM=$(/usr/bin/free -m | /bin/awk ‘NR>2’ | /bin/awk ‘NR<2’ | /bin/awk ‘{print $4}’)

if [ $FREE_RAM -gt $WARNING ]

then

echo “OK – TOTAL: $TOTAL_RAM MB FREE: $FREE_RAM | ‘TOTAL’=$TOTAL_RAM ‘FREE’=$FREE_RAM;200;100”

exit 0

fi

if [ $FREE_RAM -lt $CRITICAL ]

then

echo “CRITICAL – TOTAL: $TOTAL_RAM MB FREE: $FREE_RAM | ‘TOTAL’=$TOTAL_RAM ‘FREE’=$FREE_RAM;200;100”

exit 2

fi

Web Interface

Outra grande vantagem do Nagios face a outros programas de monitorização é o facto de correr sobre uma Interface Web. Além de ser dispensável a instalação de qualquer software nos computadores dos responsáveis pelo sistema de monitorização, existe a vantagem de proteger o acesso a este sistema com base em certificados X.509 (http://en.wikipedia.org/wiki/X.509), que representam um aumento significativo da segurança face aos mecanismos de login e password tradicionais.

Por omissão o Nagios apenas permite a visualização do estado da rede em cada instante de tempo, isto é, não existe histórico. O histórico é muito importante para um administrador de sistema uma vez que permite encontrar padrões por exemplo em situações de maior carga da rede, podendo posteriormente adequar a configuração para lidar com estes picos da melhor forma.

Para colmatar esta falha existe o PNP4Nagios (http://docs.pnp4nagios.org/pnp-0.4/start). Trata-se de um Add-On que utiliza as RRDTools como forma de armazenamento dos dados de output dos plugins do Nagios. Estes resultados alimentam posteriormente o processo de criação dos gráficos.

Outros Add-Ons mais utilizados

Permite armazenar numa base de dados todos os valores adquiridos, monitorizados e valores de históricos de vários servidores Nagios. Serve de base para outros add-ons do Nagios.

Trata-se um de add-on de apresentação para o Nagios que permite a visualização de forma gráfica o estado dos equipamentos activos e serviços monitorizados. Esta informação é apresentada num visual personalizado com fotos reais dos rack’s de servidores / mapas de localização ou até mesmo componentes dos servidores.

Este add-on obtém todos os dados através do NDOUtils.

O Nagios serve de core a diversos sistemas comerciais de monitorização, como por exemplo:

Nagios Exchange (http://exchange.nagios.org/)

O Nagios Exchange é o repositório oficial e aberto a toda a comunidade Nagios onde se encontram publicados todos os add-ons, plugins e extensões.

É um bom ponto de partida sempre que for necessário algum plugin para a monitorização de um novo serviço, antes de começar a partir pedra e a reinventar a roda na maior parte das vezes.


Download: Nagios (Core, Plugins, Addons)


Homepage: Nagios

Exit mobile version