Aqui ainda não iremos configurar o Nagios para monitorar dispositivo. Iremos ver a localização da pasta dos plugins e usá-los de modo avulso, apenas para testes.
Nagios usa programas externos conhecidos como plugins para fazer monitoramento de um dispositivo(servidor, impressora, switch..) ou de um serviço(link de internet, memória ram, processador, programa, processo…).
No artigo anterior falamos sobre serviço público e privado que podemos monitorar. Aqui iremos monitorar serviços públicos apenas, visto estarmos no início de nossa jornada.
Antes de continuarmos precisamos localizar a pasta onde o Nagios está instalado.
Localizando a Pasta de Instalação do Nagios
Após seguir os artigos anteriores de instalação do Nagios, é importante sabermos onde ele está instalado e quais pastas devemos conhecer agora para que possamos dar continuidade.
Método 01
Bom, a primeira forma de saber a localização da pasta é vendo o status do Nagios, se ele está ativo ou não. Para isso usamos “systemctl status nagios”. Irei resumir a resposta abaixo:
elder@server01:~$ sudo systemctl status nagios ● nagios.service - Nagios Core 4.4.5 ....... Docs: https://www.nagios.org/documentation Process: 14586 ExecStartPre=/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg (code Process: 14587 ExecStart=/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg (code=ex ........ CGroup: /system.slice/nagios.service ├─14588 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg ├─14589 /usr/local/nagios/bin/nagios --worker /usr/local/nagios/var/rw/nagios.qh ........
Acima alaranjei as linhas que nos levam ao diretório onde o Nagios está. Podemos saber que a pasta é /usr/local/nagios. Não considero a parte “bin/nagios” acima pois bin é uma subpasta, ou seja, não é a pasta principal, a pasta base do nagios.
Método 02
Um outro método raiz é executarmos ferramentas como locate ou find. Irei usar locate. Se executar apenas “locate nagios” receberei um monte de resultado. Então irei filtrar com grep o arquivo de configuração nagios.cfg. nagios.cfg é um arquivo de configuração do nagios. Veremos sobre ele em outro post.
elder@server01:~$ sudo locate nagios | grep nagios.cfg /usr/local/nagios/etc/nagios.cfg
Podemos ver que a pasta base é: /usr/local/nagios/
Listando o conteúdo da pasta base:
elder@server01:~$ ls /usr/local/nagios/ bin etc libexec sbin share var
Listando Plugins do Nagios
Nagios já possui alguns plugins que podemos usar para iniciar nosso monitoramento. Eles ficam dentro do diretório libexec. Vamos listar o conteúdo e ver os plugins:
elder@server01:~$ ls /usr/local/nagios/libexec/ check_apt check_ftp check_mailq check_ping check_tcp check_breeze check_http check_mrtg check_pop check_time check_by_ssh check_icmp check_mrtgtraf check_procs check_udp check_clamd check_ide_smart check_nagios check_real check_ups check_cluster check_ifoperstatus check_nntp check_rpc check_uptime check_dhcp check_ifstatus check_nntps check_sensors check_users check_dig check_imap check_nt check_simap check_wave check_disk check_ircd check_ntp check_smtp negate check_disk_smb check_jabber check_ntp_peer check_spop remove_perfdata check_dns check_ldap check_ntp_time check_ssh urlize check_dummy check_ldaps check_nwstat check_ssl_validity utils.pm check_file_age check_load check_oracle check_ssmtp utils.sh check_flexlm check_log check_overcr check_swap
Obtendo Ajuda de Como Usar Plugins no Nagios
Podemos obter ajuda de como usar cada plugin desse usando opção -h ou help.
elder@server01:~$ /usr/local/nagios/libexec/check_ping -h
Faça um teste e veja a ajuda de alguns plugins.
Para usar muitos plugins devemos usar as letras -w e -c, respectivamente valor para situações de alerta(warn) e para crítico.
Testando Alguns Plugins do Nagios
O servidor de teste onde instalei o Nagios é o server01 com ip 192.168.0.40. O vamos testar os plugins apontado para outro servidor, o server02 com ip 192.168.0.41.
Usando o plugin check_ping:
O comando ping requer, no mínimo 3 valores:
- hostname ou apenas -H: o nome ou endereço ip do computador que queremos executar o ping.
- rta: um valor para tempo em ms(milissegundos)de resposta ou rta(round trip average). Rta é o tempo médio de ida e volta, ou seja, o tempo que o ping levou para ir até o outro pc e retornar.
- perda de pacote/packet loss ou pl: percentagem(%) de pacotes perdidos. São enviados 5 pacotes de ICMP ECHO.
elder@server01:~$ /usr/local/nagios/libexec/check_ping -H 192.168.0.41 -w 10,2% -c 20,5% PING OK - Packet loss = 0%, RTA = 0.48 ms|rta=0.480000ms;10.000000;20.000000;0.000000 pl=0%;2;5;0
Acima executo check_ping no computador(-H) 192.168.0.41. Receberei um alerta(warn) se o tempo de rta for 10 ms e a perda de pacotes de 2%. Receberei alertas como crítico se a demora do rta for de 20ms e tiver uma perda de 5% no ping.
Usando o plugin check_ssh
O ssh é um protocolo muito conhecido e o usamos para, explicando resumidamente, acessar outros computadores remotamente ou realizar transferência de arquivos. Tenho ele instalado no server02. Vamos ver o status. Para isso precisamos apenas do endereço ip ou nome do servidor:
elder@server01:~$ /usr/local/nagios/libexec/check_ssh 192.168.0.41 SSH OK - OpenSSH_7.9p1 Debian-10+deb10u2 (protocol 2.0) | time=0,042138s;;;0,000000;10,000000
Vemos que está ok o ssh e posso acessar o server02 ou transferir arquivos para ele.
Agora, o plugin supõe que a porta usada do ssh no server02 seja a padrão, ou seja, a 22; mas se eu tiver trocado essa porta, por exemplo, de 22 para 8080? Sem problemas, para isso preciso usar a opção -p de porta e falar que a porta é a 8080. Veja:
elder@server01:~$ /usr/local/nagios/libexec/check_ssh -p 8080 192.168.0.41 SSH OK - OpenSSH_7.9p1 Debian-10+deb10u2 (protocol 2.0) | time=0,042264s;;;0,000000;10,000000
Só coloque a porta antes do endereço IP. Ok?
Usando o plugin check_http
Esse plugin nos possibilita monitorarmos servidores web. Vamos ver o google?
elder@server01:~$ /usr/local/nagios/libexec/check_http google.com HTTP OK: HTTP/1.0 200 OK - 15187 bytes in 5,194 second response time |time=5,194071s;;;0,000000 size=15187B;;;0
Tenho também um servidor web, o apache, instalado em meu server02. Vamos ver:
elder@server01:~$ /usr/local/nagios/libexec/check_http 192.168.0.41 HTTP OK: HTTP/1.1 200 OK - 10975 bytes in 0,006 second response time |time=0,005887s;;;0,000000 size=10975B;;;0
Onde Baixar Mais Plugins?
Podemos baixar usando os links abaixo:
- Nagios Plugins Project: https://github.com/nagios-plugins/nagios-plugins
- Página de Downloa do Nagios: https://www.nagios.org/download/
- Nagios Exchange: https://exchange.nagios.org
Conclusão
Aqui vimos o uso de plugins de forma avulsa, ou seja, sem adicionarmos ao Nagios para que possamos monitorar de forma persistente nossos dispositivos.
Lembrando que aqui usamos os plugins para testes em plublic services, ou seja, os serviços que todo mundo tem acesso, como o servidor do google, o ssh e protocolos icmp com ping. Aqui falo acesso não no sentido que conseguimos alterar, mas que conseguimos ver se está ativo ou desativado ou ainda, com lentidão.
One Comment to “Nagios Core: Conhecendo Alguns Plugins – Parte 04”