Objetivo
Descrever os procedimentos para instalação manual do agente de monitoramento em ambientes Linux, a fim de monitorar com o OpMon.
Público-alvo
Destinado aos administradores do OpMon e as equipes de TI que já estão familiarizadas com a instalação de aplicações Linux e configuração do OpMon para monitorar equipamentos rodando RedHat, CentOS, Ubuntu, Suse, entre outras distribuições.
Solução
Com o intuito de otimizar o processo de instalação do agente Linux, a OpServices criou um pacote de instalação automatizada, contendo o NRPE +NagiosPlugins + OpServicesPlugins, para quem deseja realizar a instalação deste pacote, basta clicar aqui e seguir os passos.
Se você já tem o agente instalado em uma determinada distribuição, e deseja replicar para outra, por exemplo, instalou em um CentOS e deseja replicar em outro CentOS sem fazer toda a instalação, basta clicar aqui e seguir os passos. Porém, para quem deseja realizar a instalação manualmente, siga os passos abaixo.
O agente deve ser instalado no equipamento Linux de destino, e depois configurado no OpMon, possibilitando assim monitorar métricas do sistema, serviços, processos, dados de desempenho, entre outras. Para o processo de instalação usaremos o NRPE e o NagiosPlugins, que devem ser obtidos em suas versões mais atuais nos seguintes endereços:
Download direto da página do NRPE, em: [ NRPE ]
Download direto da página do NagiosPlugins, em: [ NagiosPlugins ]
Solução do Problemas
Caso encontre algum problema ou erro durante o processo, procure em nossa base de conhecimento, clicando aqui.
1) Obtendo o Agente
Faça o login como root no servidor alvo e posteriormente o download dos arquivos, conforme abaixo:
[root@localhost]# cd /tmp [root@localhost tmp]# wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz [root@localhost tmp]# wget --no-check-certificate https://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
2) Criando um usuário
Precisamos criar um usuário, normalmente com as seguintes definições opuser, conforme o exemplo abaixo:
[root@localhost tmp]# adduser opuser -d /usr/local/opmon -g users -s /bin/bash -c "OpMon NRPE" [root@localhost tmp]# passwd opuser
Lembre de definir uma senha segura para este usuário, ou então crie sem permissão de logar no sistema, usando este comando abaixo:
[root@localhost tmp]# adduser opuser -d /usr/local/opmon -g users -s /sbin/nologin -c "OpMon NRPE"
3) Preparando os requisitos
Alguns pacotes são necessários para que tenhamos sucesso na instalação, são eles:
gcc, openssl, net-snmp e xinetd
Para tanto, baseado numa instalação RedHat ou CentOS , use o seguinte comando para instalar:
[root@localhost tmp]# yum install gcc openssl-devel net-snmp-utilis xinetd -y
Posteriormente, vamos ajustar o xinetd para executar o boot, pois ele será importante nesse processo:
[root@localhost tmp]# chkconfig --level 2345 xinetd on
Para descompactar os pacotes anteriormente obtidos através do download, vamos usar a mesma pasta temporária e seguir os passos conforme mostrado abaixo:
[root@localhost tmp]# cd /tmp [root@localhost tmp]# tar xvfz nagios-plugins-1.5 [root@localhost tmp]# tar xvfz nrpe-2.13.tar.gz
4) Instalando os Plugins
No diretório nagios-plugins criado, roda o seguinte comando abaixo listado.
[root@localhost tmp]# cd nagios-plugins-1.5 [root@localhost nagios-plugins-1.4.16]# ./configure --prefix=/usr/local/opmon --with-nagios-user=opuser --with-nagios-group=users
Se não forem encontrados erros, rodar os comandos make abaixo no mesmo diretório.
[root@localhost nagios-plugins-1.4.16]# make all ; make install
Se tudo ocorrer bem, deverá ser criada uma pasta /usr/local/opmon/libexec , contendo os plugins.
5) Instalando o NRPE
No diretório nrpe criado, rodar o seguinte comando abaixo listado.
[root@localhost nagios-plugins-1.4.16]# cd ../nrpe-2.13 [root@localhost nrpe-2.13]# ./configure --prefix=/usr/local/opmon --with-nrpe-user=opuser --with-nagios-user=opuser --with-nrpe-group=users --with-nagios-group=users --enable-command-args
Ocorrendo tudo certo, rodar os comandos make no mesmo diretório.
[root@localhost nrpe-2.13]# make all
Para instalar o check_nrpe e o nrpe .
[root@localhost nrpe-2.13]# make install
Para instalar o nrpe.cfg .
[root@localhost nrpe-2.13]# make install-daemon-config
Para instalar o nrpe no xinetd .
[root@localhost nrpe-2.13]# make install-xinetd
6) Ajustes finos
Para termos uma maior facilidade de configuração, vamos ajustar o nrpe para permitir o uso de argumentos.
[root@localhost]# vim /usr/local/opmon/etc/nrpe.cfg
Procure por dont_blame_nrpe e altere para 1.
dont_blame_nrpe=1
Altere a permissão do diretório para o usuário opuser
[root@localhost]# chown -R opuser:users /usr/local/opmon/
Inserir a linha abaixo listada ao final do arquivo /etc/services .
[root@localhost]# vim /etc/services nrpe 5666/tcp # OpMon Agent
7) Testando os Plugins
Para validarmos se os plugins estão funcionando, façamos alguns testes. Se tudo estiver certo, o resultado deve ser similar ao demonstrado.
[root@localhost]# cd /usr/local/opmon/libexec/ [root@localhost libexec]# ./check_load check_load: Could not parse arguments Usage: check_load [-r] -w WLOAD1,WLOAD5,WLOAD15 -c CLOAD1,CLOAD5,CLOAD15 [root@localhost libexec]# ./check_http -H www.google.com HTTP OK: HTTP/1.1 302 Found - 1009 bytes in 0.219 second response time |time=0.218719s;;;0.000000 size=1009B;;;
8) Iniciando o Agente
Basicamente temos 3 opções para inicializar o agente, sendo xinetd (recomendado), inetd ou daemon.
- Para uso como xinetd
Para permitir que o OpMon possa efetuar o monitoramento, precisamos liberar o IP do mesmo para as consultas, assim, precisamos editar o arquivo abaixo e adicionar o IP na linha only_from. Também é possível adicionar mais IPs ou um range usado por exemplo: IP_DO_OPMON/24, ou caso queira liberar para qualquer IP, basta remover esta linha only_from.
[root@localhost]# vim /etc/xinetd.d/nrpe service nrpe { flags = REUSE socket_type = stream wait = no only_from = 127.0.0.1 IP_DO_OPMON user = opuser server = /usr/local/opmon/libexec/nrpe server_args = -c /usr/local/opmon/libexec/nrpe.cfg --inetd log_on_failure += USERID disable = no }
Para finalizar, reinicie o xinetd
[root@localhost ]# service xinetd restart Stopping xinetd: [ OK ] Starting xinetd: [ OK ]
- Para uso com o inetd
Inserir a linha abaixo no arquivo /etc/inetd/.conf .
[root@localhost]# vim /etc/inetd.conf nrpe stream tcp nowait opuser /usr/sbin/tcpd /usr/local/opmon/bin/nrpe -c /usr/local/opmon/etc/nrpe.cfg --inetd
Para finalizar, reinicie o inetd.
[root@localhost libexec]# service inetd restart Stopping inetd: [ OK ] Starting inetd: [ OK ]
- Para uso com o daemon
Para permitir que o OpMon possa efetuar o monitoramento, precisamos liberar o IP do mesmo para as consultas, assim, precisamos editar o arquivo abaixo e adicionar o IP na linha allowed_hosts. Também é possível adicionar mais IPs ou um range usando por exemplo IP_DO_OPMON/24, ou caso queira liberar para qualquer IP, basta remover ou comentar a linha allowed_hosts.
[root@localhost]# vim /usr/local/opmon/etc/nrpe.cfg allowed_hosts=127.0.0.1,IP_DO_OPMON
Para finalizar, inicie o daemon
[root@localhost]# /usr/local/opmon/bin/nrpe -c /usr/local/opmon/etc/nrpe.cfg -d
9) Testando o Acesso Localmente
Para testar se a porta 5666 está aberta para conexões use o comando abaixo e verifique se a saída está similar.
[root@localhost]# netstat -vantup | grep 5666 tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 2202/xinetd
Para verificar a comunicação do NRPE.
[root@localhost]# /usr/local/opmon/libexec/check_nrpe -H 127.0.0.1 NRPE v2.13
Executando uma consulta de load através do NRPE.
[root@localhost nrpe-2.13]# /usr/local/opmon/libexec/check_nrpe -H 127.0.0.1 -c check_load -a none OK - load average: 0.02, 0.03, 0.00|load1=0.020;15.000;30.000;0;load5=0.030;10.000;25.000;0; load15=0.000;5.000;20.000;0;
10) Testando o Acesso pelo OpMon
A partir da console do OpMon , podemos verificar a comunicação do NRPE ao executar o comando abaixo, colocando o IP_DO_SERVIDOR, onde acabamos de instalar o agente.
[root@opmon]# /usr/local/opmon/libexec/check_nrpe -H IP_DO_SERVIDOR NRPE v2.13
Executando uma consulta de load através do NRPE
[root@opmon]# /usr/local/opmon/libexec/check_nrpe-H IP_SERVIDOR -c check_load -a none OK - load average: 0.02,0.03,0.00|load1=0.020;15.000;30.000;0;load5=0.030;10.000;25.000;0;load15=0.000;5.000;20.000;0;
Tudo certo, e agora?
Após concluído o processo de instalação, o próximo passo é colocar o servidor para monitorar, para isso você pode acessar nossa base de Plugins e Templates, acesse aqui para entender um pouco mais.