Monitoramento de Servidores com o Nagios
Nagios é uma popular aplicação de monitoração de rede de código aberto distribuída sob a licença GPL. Ele pode monitorar tanto hosts quanto serviços, alertando-o quando ocorrerem problemas e também quando os problemas forem resolvidos.
O Nagios foi originalmente criado sob o nome de Netsaint, foi escrito e é atualmente mantido por Ethan Galstad, junto com um exército de desenvolvedores que ativamente mantém plugins oficiais e não-oficiais.
Nagios primeiramente foi escrito para o sistema operacional Linux, mas pode rodar em outros Unixes também.
Mãos a obra
Na máquina onde o Nagios será instalado:
# apt-get install nagios3 nagios-plugins nagios-nrpe-plugin ssh
Na instalação do Nagios será instalado o samba, preencha o campo com o grupo de trabalho
Forneça a senha e confirme a mesma para o usuário administrador do Nagios
Nagios instalado e disponível para acesso, abra o navegador e digite o endereço do servidor Nagios: http://IP/nagios3
Usuário: nagiosadmin
Senha: DIGITE_SENHA
Logo após teremos a tela de administração do Nagios, como na figura abaixo
Vamos criar um arquivo de configuração para um host rodando apache
# vi /etc/nagios3/conf.d/apache_nagios2.cfg
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | define host{ use generic-host host_name apache alias apache address 10.1.1.185 } define service{ use generic-service host_name apache service_description HTTP-Server check_command check_http } define service{ use generic-service host_name apache service_description Carga Atual check_command check_nrpe_1arg!check_load } define service{ use generic-service host_name apache service_description Usuarios Logados check_command check_nrpe_1arg!check_users } define service{ use generic-service host_name apache service_description Espaco em Disco check_command check_nrpe_1arg!check_sda1 } define service{ use generic-service host_name apache service_description Total de Processos check_command check_nrpe_1arg!check_total_procs } |
————-
Reiniciar o nagios
# invoke-rc.d nagios3 restart
Configurar o cliente
# apt-get install nagios-nrpe-server nagios-plugins
Será solicitado o grupo de trabalho do Samba, utilize o mesmo do servidor Nagios.
Instalar o apache2 para o exemplo
# apt-get install apache2
Configurar o plugin nrpe para contactar o servidor Nagios
# vi /etc/nagios/nrpe.cfg
1 | allowed_hosts=10.1.1.155 |
Na linha 200 deste mesmo arquivo devemos trocar
De:
1 | command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1 |
Por:
1 | command[check_sda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda1 |
Obs.: Troque pela partição que deseja monitorar
—-
Reiniciar o plugin nrpe
# invoke-rc.d nagios-nrpe-server restart
Para ver o resultado basta utilizar o seu navegador no endereço: http://IP/nagios3
No menu lateral – Current Status – Services – Temos todos os serviços monitorados, incluindo a própria máquina onde esta rodando o Nagios
Algumas informações utilizadas na configuração do Nagios:
HOSTS
1 2 3 | define host{ opções } |
Descrição das Opções utilizadas:
1 2 3 4 | use template -> Qual o template (modelo) utilizado, geralmente armazenado em /etc/nagios3/conf.d host_name nome -> Nome do host alias descrição -> Descrição do Host address IP/Nome -> Endereço IP o Nome da Máquina registrada no DNS |
SERVIÇOS
1 2 3 | define service{ opções } |
Descrição das Opções utilizadas:
1 2 3 4 | use template -> Template (modelo) do serviço utilizado. host_name nome -> Nome do Host service_description descrição - Breve Descrição do Serviço check_command comando/plugin - Comando utilizado para a checagem, no exemplo utilizei o plugin NRPE |
Espero que tenham gostado do post, não se esqueçam de assinar o nosso portal. E peço que continuem votando no TopBlog.
Boa amigo, estava precisando disso, vcs são feras.
Abraçosssssssssssssss
Renato,
Agradeço o elogio e comentário.
Abraços
muito bom esse post. O problema é que uso slackware 13.37, e encontrei dificuldades de instalagr o Nagios na mainha maquina.
Rodrigo,
Apesar do Slackware ter sido a minha primeira distribuição, mas a muitos anos migrei para Debian/Ubuntu. Encontrei um artigo que talvez possa ajudá-lo, pelo menos como ponto de partida, http://mula-veia.blogspot.com/2008/10/nagios-no-slackware.html
Abraços
É possivel demonstrar a criação do mapa da rede? Conhece alguma solução gratuita que consegue realizar um discover na rede, afim de monitrar o tráfego entre nos especificos… portas de switch?
Parabéns Ricardo e Vagner, apesar do site, são ótimos treinadores.
Fico muito feliz de ser aluno dos 2 e poder estar aprimorando sempre!!!
Mais uma vez, obrigado!
se alguem puder me responder, qual melhor servidor linux para instalar o nagios?
Jakson,
Qual a distribuição GNU/LInux que você está acostumado a trabalhar?? Sou suspeito para falar mas sempre utilizo Debian/Ubuntu para instalações do Nagios.
Abraços
Excelente post mestre!!
Bruno,
Eu fico honrado com o elogio, obrigado.
Abraços
Prezado Ricardo,
E para Servidores Windows como iriamos tratar existe algum agente para windows ?
Grato
Cláudio Bruno
Cláudio,
Sim existe, eu geralmente utilizo o NSClient++ para as máquinas windows.
Abraços
Como configuro o NSClient++?
Amigo,
Nesse site possui o passo a passo de como instalar porem na hora de trocar a porta mantem a padrao 12489.
http://nagiosnapratica.wordpress.com/2010/10/15/nagios-monitorando-so-windows-com-nsclient-artigo5/
abs
Teria como disponibilizar um artigo ou tutorial onde se explica como criar o mapa 3D da rede, e como realizar a notificação de parada de serviços via SMS.
Desde já agradeço pela Atenção.
Marcus Vinícius.
Amigo,
Estou com o seguinte problema quando crio um template mesmo indicando no nagios.cfg o caminho ele não reconhece, mais se pego um template pronto (windows.cfg) coloco IP e host name ele funciona.
Porque?
Grande Mestre,
Poderia criar um tutorial também com o check_mk, monitorando servidores Linux e Windows.
Valeu.
Márcio,
Vou fazer um e colocar no site.
Valeu mesmo Vagner.