Instalando e monitorando servidores NRPE no CentOS 6

Nagios é uma excelente ferramenta de monitoramento e há algum tempo descobrimos que é possível monitorar variáveis em ambientes remotos utilizando o NRPE (Nagios Remote Plugin Executor).
Basicamente este serviço fica escutando a porta 5666 (que pode ser mudada) aguardando que o servidor nagios comande a execução de scripts. o host monitorado executa o script e envia o resultado para o servidor de monitoramento.

Pra facilitar, vamos instalar o EPEL

1
2
wget dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm

Instalando o NRPE e os plugins nagios

1
yum install -y nrpe nagios-plugins-all openssl

 

Feito isso, adicione o servidor de monitoramento na variável
allowed_hosts do arquivo de configuração /etc/nagios/nrpe.conf

1
allowd_hosts=127.0.0.1, monitor1.solucoesideais.com.br

 

Verifique também os comandos que estão disponíveis no nrpe.conf e altere como necessitar.
No caso que estou exemplificando, precisamos monitorar o espaço em disco na partição sda5 e sdb1 de um servidor de cliente.
Para isso, adicionamos

1
2
command[check_sda5]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda5
command[check_sdb1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sdb1

à lista de comandos.

1
service nrpe start

Serviço startado, vamos ao servidor de monitoramento.
A parte chata no caso de monitoramento de disco é que precisamos adicionar um service para cada partição.

1
2
3
4
5
6
7
8
9
10
11
define service{
use generic-service
host_name servidormonitorado1
service_description Current Load
check_command check_nrpe!check_sda5
}
define service{
use generic-service
host_name servidormonitorado1
service_description Current Load
check_command check_nrpe!check_sdb1

}

Por úlitmo e não menos importante, adicionar o comando ao commands.cfg do nagios

1
2
3
4
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

No caso ainda temos mais uma dica. O cliente em questão solicitou que fosse monitorado o espaço em um disco montado exclusivamente para a pasta data de um postgreSQL. Tendo o disco sido montado como o usuário postgres, o usuário do nrpe/nagios não têm acesso a esse diretório (apenas o root). Nesse caso, segui a dica do site http://ketan.lithiumfox.com/doku.php/nagios que funcionou perfeitamente.

 

1
2
3
cd /usr/lib64/nagios/plugins/
cp check_disk check_disk_pg
chmod +s check_disk_pg

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: