Esse post é uma continuação de Nagios: Configuração de Monitoramento de Host.
Um servidor nagios é representado pelo IP 192.168.0.10 e o computador a ser monitorado por 192.168.0.69 (ou srv69).
Dependências para compilação
Dentro do computador a ser monitorado, execute os comandos abaixo:
sudo apt update
sudo apt install -y \
build-essential \
libssl-dev \
libgd-dev \
libperfstat-dev \
libperl-dev \
libpng-dev \
libjpeg-dev \
zlib1g-dev \
libdbi-dev \
libmysqlclient-dev \
libpq-dev
Criar usuário nagios
sudo useradd nagios
sudo groupadd nagios
sudo usermod -a -G nagios nagios
Baixar e extrair os plugins 2.4.9
cd /tmp
wget https://nagios-plugins.org/download/nagios-plugins-2.4.9.tar.gz
tar zxvf nagios-plugins-2.4.9.tar.gz
cd nagios-plugins-2.4.9
Compilar e instalar os plugins
./configure \
--with-nagios-user=nagios \
--with-nagios-group=nagios
make
sudo make install
Os plugins serão instalados em:
/usr/local/nagios/libexec/
Instalar NRPE Server
sudo apt install -y nagios-nrpe-server
Configurar NRPE
Ajuste estas linhas:
allowed_hosts=127.0.0.1,192.168.0.10
dont_blame_nrpe=1
Criar comandos de CPU e Memória
Crie um arquivo:
sudo nano /etc/nagios/nrpe.d/system.cfg
Conteúdo:
command[check_cpu]=/usr/local/nagios/libexec/check_load -w 4,3,3 -c 6,5,5
command[check_mem]=/usr/local/nagios/libexec/check_mem -u -w 80 -c 90
Importante sobre memória
O check_mem não vem por padrão no pacote oficial.
Se não existir:
ls /usr/local/nagios/libexec/check_mem
Se não existir, baixe:
cd /usr/local/nagios/libexec
sudo wget https://raw.githubusercontent.com/justintime/nagios-plugins/master/check_mem/check_mem.pl
sudo chmod +x check_mem
sudo chown nagios:nagios check_mem
Reiniciar NRPE
sudo systemctl restart nagios-nrpe-server
sudo systemctl enable nagios-nrpe-server
Liberar porta NRPE (se firewall ativo)
sudo ufw allow 5666/tcp
SERVIDOR NAGIOS – 192.168.0.10
Instalar plugin NRPE
sudo apt install -y nagios-nrpe-plugin
Testar comunicação com o host
/usr/lib/nagios/plugins/check_nrpe -H 192.168.0.69
Deve retornar a versão do NRPE.
Criar definição do host
sudo nano /usr/local/nagios/etc/objects/srv69.cfg
define host {
use linux-server
host_name pc69
alias PC Linux 69
address 192.168.0.69
}
Criar definição do comando check_nrpe
Abra o arquivo de comandos:
sudo nano /usr/local/nagios/etc/objects/commands.cfg
Se esse arquivo não existir, crie-o.
Adicione exatamente isto:
define command{
command_name check_nrpe
command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
Salve e saia.
Verificar se o arquivo commands.cfg é carregado
Abra:
sudo nano /usr/local/nagios/etc/nagios.cfg
Confirme que existe uma destas linhas:
cfg_file=/usr/local/nagios/etc/objects/commands.cfg
ou
cfg_dir=/usr/local/nagios/etc/objects
🔹 Se só existir
cfg_dir, está OK
🔹 Se não existir nenhum, adicione ocfg_file
Validar novamente a configuração
sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Criar serviços CPU e Memória
No mesmo arquivo:
define service {
use generic-service
host_name srv69
service_description CPU Load
check_command check_nrpe!check_cpu
}
define service {
use generic-service
host_name srv69
service_description Memory Usage
check_command check_nrpe!check_mem
}
Verificar se o arquivo é carregado
Em:
sudo nano /usr/local/nagios/etc/nagios.cfg
Confirme:
cfg_dir=/usr/local/nagios/etc/objects
Validar configuração do Nagios
sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Resultado esperado:
Total Errors: 0
Total Warnings: 0
Reiniciar Nagios
sudo systemctl restart nagios
Acessar no navegador
http://192.168.0.10/nagios