Este procedimento tem como objetivo a instalação da aplicação Nagios versão 3.2.1 para monitoração de servidores juntamente com a interface de configuração NagiosQL versão 3.0.3. O PNP4Nagios é utilizado para mensurar capacidade através de gráficos dos dados de performance do próprio Nagios e (opcional) o NDOUtils para a gravação dos dados de coleta do Nagios em MySQL.
Isto não é um artigo (apesar do nome), mas sim um procedimento de instalação, tenha isso em mente.
Antes de começar, gostaria de deixar alguns pontos BEM CLAROS:
Todos os dados contidos neste procedimento são conteúdos alterados e adaptados da DOCUMENTAÇÃO do próprio site das aplicações, mas com observações de onde erros podem ocorrer além de traduções literais.
Este procedimento considera que você tenha pelo menos uma ideia de como funciona a configuração de hosts e serviços para serem monitorados no Nagios. Isso é importante porque mesmo que você utilize uma interface gráfica para configurar tais hosts e serviços, você consiga entender o "o que vai onde" quando for configurar um host/serviço na interface NagiosQL.
Também estou considerando que tenha você tenha um SNMP configurado para a monitoração (não é necessário, mas recomendável).
O conteúdo desde documento foi realizado em um servidor que está hoje em produção (desde maio/2010), com mais de 2000 itens monitorados entre servidores e serviços com Debian Lenny SPARC. Sim, este procedimento esta homologado para Debian.
Leia TUDO antes de colocar em prática.
Veja a documentação no site dos desenvolvedores também, você não sabe quanta informação útil pode ser encontrada.
NÃO execute isso em um servidor que já em produção sem saber o que está fazendo.
Já disse para LER antes de começar? Não? Então LEIA antes de começar.
Este procedimento foi testado também em Debian 5.0 Lenny em arquiteturas x86 e x86_64.
Dependendo da quantidade de itens monitorados pelo Nagios, provavelmente, você precisará alterar o local onde os logs do Nagios ficarão armazenados. Sugiro que atente-se a isso após a instalação. Existem "n" maneiras de se alterar o local onde os logs são armazenados, a que acredito ser mais fácil é de criação de links simbólicos... não é bonito, mas funciona.
O foco deste procedimento NÃO é mostrar como configurar os hosts e serviços para serem monitorados, assim como boas práticas para tal.
[2] Comentário enviado por 4l3x4ndr3 em 28/09/2010 - 09:00h
Muito bom realmente seu artigo. Estou montando um novo servidor Nagios.
So tenho um dúvida. Estou tentando instalar a tradução do nagiosql. Consegui os arquivos já. Sabes como proceder essa atualizaçao?
Obrigad
[3] Comentário enviado por tiagomdrizzo em 28/09/2010 - 09:55h
A documentação do NagiosQL não é muito clara quanto a adicionar idiomas, porém, em /var/www/nagiosql/config/locale existentem diretórios de idiomas.
Acredito (e não estou afirmando) que se você criar um diretório de mesma estrutura que os demais apresentados neste local, mas com o nome pt_BR e obviamente copiar o arquivo de tradução para lá, o NaqiosQL irá lista-lo em Administration>Settings campo Language.
A não ser que você possua um bom motivo para realizar essa tradução, eu não recomendou você fazer isso. A documentação e ajuda dessa ferramenta está em grande parte em inglês e será sofrível encontrar algo em português que o auxilie no caso de uma erro.
Somente o milton.melo está participando da tradução do NagiosQL atualmente e não estou falando da documentação, somente da interface.
Caso funcione, responda neste tópico para auxiliar outras pessoas que possam que venham a ter o mesmo problema ;)
[4] Comentário enviado por 4l3x4ndr3 em 28/09/2010 - 15:17h
A traduao nao consegui fazer funcionar ainda. Mas nao estou mt interssado nisso.
Te mandei um e-mail sobre outra duvida. Se tiveres como responder agradeco.
[5] Comentário enviado por diramos em 17/04/2012 - 11:29h
Caro Tiago.
Parabéns pelo artigo.
Está claríssimo.
Tenho uma dúvida:
É possível usar o pnp4nagios com a variavel de macros desabilitada no nagios.cfg?
Assim:
enable_environment_macros=0
Meu Nagios é em larga escala e preciso que funcione o pnp4 também.
[6] Comentário enviado por tiagomdrizzo em 17/04/2012 - 12:09h
Ramos,
Conforme descrevi no procedimento, o modo sincrono --necessita-- que a variavel de macro esteja ativada.
Os outros modos (Bulk e Bulk com NCPD) não necessitam dessa opção ativa, mas são pouca coisa mais chata de configurar.
Como curiosidade existem dois projetos em andamento muito interessantes para a administração do Nagios:
- OMD - omdistro.org - Open Monitoring Distribution - que possui muitas das coisas descritas nesse procedimento instalando de forma automática e com a vantagem de possuir o mod_gearman. Esse addon para o Nagios consegue melhorar muito a coleta de informações. Dependendo da quantidade de itens monitorados em sua rede seria interessante dar uma olhada nele ou instalar pelo menos o mod_gearman em seu servidor.
- FUN - fullyautomatednagios.org - Fully Automated Nagios - é uma distro pronta (sou meio contra essas distros prontas, mas é uma opção) que já entrega tudo configurado. Ele possui o Centreon que, pessoalmente, acho mais organizado que o NagiosQL e entrega uma interface um pouco melhor para gerenciar o Nagios como um todo, além de possuir o modulo para gráficos que eu não lembro agora se é ou não o PNP4Nagios. Porém, ele não possue algumas coisas que o OMD possui (as vezes acho que o OMD foge um pouco do foco com tanta tranqueira que vem com ele, mas enfim).
Um outro projeto que poderia citar aqui é o Icinga, que é um fork do Nagios, que está sendo desenvolvido com uma opções muito interessantes, mas sua documentação está meio fraca ainda. Detalhe é que todos os plugins criados para o Nagios funcionam com o Icinga.
Espero ter ajudado e não te-lo confundido mais rs.
[7] Comentário enviado por diramos em 17/04/2012 - 12:36h
Tiago, nossa!
Respondeu prontamente e com rapidez.
Muito Obrigado.
Olha: por conta da minha larga escala (20.000 hosts aproximadamente), já estou implementando o mod_gearman.
Ele já está em produção para testes. Estou só fazendo os ajustes finos aqui.
Seguinte: eu tentei implementar o modo bulk aqui e desativei as macros (enable_environment_macros=0). Mas os gráficos não são gerados nem a pau.
O que pode estar acontecendo? Não teria jeito de eu deixar no modo síncrono mesmo e só ativar as macros que ele precisa?
[8] Comentário enviado por diramos em 17/04/2012 - 12:44h
Tiago, outra coisa:
Não entendi essa parte que você escreveu sobre o modo bulk:
"IMPORTANTE: Como há mais dados a serem processados do que no modo síncrono, o process_perfdata.pl levará mais tempo para coletar os dados, portanto, verifique o valor de TIMEOUT em etc/process_perfdata.cfg e ajuste-o de maneira apropriada."
Onde fica esse arquivo etc/process_perfdata.cfg?
Eu não encontrei ele aqui.
[9] Comentário enviado por tiagomdrizzo em 17/04/2012 - 14:29h
Ramos,
A não ser que tenham mudado algo nas versões novas do 0.6.x (faz muito tempo que não instalo o PNP), o arquivo de configuração deveria estar em /usr/local/pnp4nagios/etc/process_perfdata.cfg que é onde o procedimento aponta implicitamente devido ao caminho de compilação (se o comando find não encontrou o arquivo, talvez seja algo com a versão).
O modo sincrono colhe as informações e apresentam quase em tempo real, já o modo Bulk demora mais para coletar os dados devido a configuração descrita no process_perfdata.cfg.
Quanto a ativar somente as macros que o modo sincrono necessita, infelizmente, não sei lhe responder. Seria necessário verificar a documentação do pnp4nagios no site de desenvolvimento.
[10] Comentário enviado por diramos em 17/04/2012 - 14:50h
Tiago, seguem mais detalhes daqui prá ver se pode me ajudar:
Eu compilei o pnp4nagios assim:
./configure --prefix=/opt/nagioscaixa --datarootdir=/opt/nagioscaixa/share/pnp --sysconfdir=/opt/nagioscaixa/etc/pnp --with-perfdata-logfile=/var/nagioscaixa/perfdata.log --with-perfdata-dir=/var/nagioscaixa/perfdata --with-perfdata-spool-dir=/var/nagioscaixa/spool
No modo síncrono, ele funcionava direititinho, gerando os dados dos gráficos em /var/nagioscaixa/perfdata/NOME_DO_HOST
Eu acessava os gráficos em: http://NOMESERVIDORNAGIOS/nagios/pnp/index.php/graph?host=LOCALHOST
Alterei o nagios.cfg para o modo bulk e ele ficou assim:
[11] Comentário enviado por diramos em 17/04/2012 - 18:25h
Prezado Tiago,
Graças às suas valiosas dicas, consegui resolver aqui. :)
Revisei as configurações e tinha uns errinhos de path.
Agora tá funcionando muito bem.
Para você ter uma idéia, com o mod_gearmand e desabilitando as macros, consegui gerar todos os gráficos.
Atualmente estou checando 2.000 hosts em 01 VM de laboratório e mais 03 Workers.
A latência é mínima (0,3 segundos). E o uso de CPU não chega a 5%.
Agora vou incluir mais umas dezenas de hosts lá prá ver o quanto o bichinho aguenta. rsrsrsrs
Mais uma vez agradeço a presteza e boa vontade em ajudar-nos.
E parabéns pelo artigo.
[12] Comentário enviado por jeffr2 em 28/01/2016 - 20:02h
por favor alguem me ajude... instalei o nagios + nagiosql, o nagios em /usr/local/nagios e o nagiosql dentro de share (/usr/local/nagios/share/nagiosql). o apache deixei configurado como user e group ambos "nagios". fiz os apontamentos do nagiosql em "administration > config targets", mas quando eu cadastro um host, ele simplesmente nao aparece no nagios.
Nagios Core 4.1.1
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-19-2015
License: GPL