Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Monitoração com Nagios
          Cristiano Casado
Requisitos de sistema


    Monitorar recursos do sistema: cpu, memória, I/O, partição de disco, rede

    Em diversas p...
Requisitos de sistema


    Resolução pró-ativa e execução de scripts remotos

    Hierarquia de objetos

    Interface...
Solução Escolhida
Nagios é um sistema open-source bastante popular para monitoração de rede,
servidores e serviços.

Origi...
Screenshots
Screenshots
Screenshots
Estrutura básica

                   Host = hostname, description, address, parents, command, check attempts
             ...
Integração com ferramentas externas
Passive Checks

Nagios permite a forma passiva de monitoração onde a iniciativa de ver...
Integração com ferramentas externas
Passive Checks
#!/bin/sh
echocmd="/bin/echo"
CFG="/etc/nagios/send_nsca.cfg"
NSCA="/us...
Integração com ferramentas externas
External Commands

Nagios fornece 157 comandos para execução de funções internas.


CH...
Integração com ferramentas externas

Nagios Event Broker (NEB)
Hierarquia de objetos
Nagios é capaz de determinar quando um host
monitorado está em status down ou unreachable
utilizando...
Representação gráfica da rede

NagVis é um addon que permite a visualização de dados do Nagios e de qualquer
representação...
Representação gráfica da rede
Representação gráfica da rede
Administração
# host.cfg
define host {
use           generic-host
host_name                  remotehost
address           ...
Administração
NagiosQL é uma ferramenta de administração web para o Nagios. A aplicação
remove a complexidade do admin man...
Administração
Arquitetura
Dúvidas e Documentação

Contato:
   Cristiano Casado
   ccasado@corp.globo.com

Nagios:      www.nagios.org
Nagvis:      w...
Upcoming SlideShare
Loading in …5
×

Monitoração com Nagios

10,047 views

Published on

Palestra apresentada no estande da Globo.com no FISL 10 sobre monitoração utilizando Nagios.

Published in: Technology, Design
  • Be the first to comment

Monitoração com Nagios

  1. 1. Monitoração com Nagios Cristiano Casado
  2. 2. Requisitos de sistema  Monitorar recursos do sistema: cpu, memória, I/O, partição de disco, rede  Em diversas plataformas: Linux, Solaris, Windows, HPUX, …  Monitorar objetos BD: threads, client connected, queries/seg, innoDB stats, …  Em diversas plataformas: MySQL, Oracle, MS SQL Server  Monitorar serviços: http, dns, smtp, ftp, …  Monitorar aplicações: threads, connection pool, heap size, garbage collector, ...  Monitorar equipamentos de rede: routers, firewalls, storages, caches, slb, ...  Escalável e redundante  Integração com ferramentas externas  Representação gráfica da rede  Planejamento de excessões
  3. 3. Requisitos de sistema  Resolução pró-ativa e execução de scripts remotos  Hierarquia de objetos  Interface web para administração  Notificações por email, instant message, sms, ...  Solução open-source e customizável para nossa necessidade
  4. 4. Solução Escolhida Nagios é um sistema open-source bastante popular para monitoração de rede, servidores e serviços. Originalmente criado com o nome NetSaint, foi escrito e é mantido por Ethan Galstad e por vários desenvolvedores. Foi lançado como beta release em Outubro de 2002. A versão stable é a 3.1.1 de 22 Junho de 2009. Site oficial http://www.nagios.org
  5. 5. Screenshots
  6. 6. Screenshots
  7. 7. Screenshots
  8. 8. Estrutura básica Host = hostname, description, address, parents, command, check attempts retry interval, check interval, contact, contactgroup, … Hostgroup = name, description, members, … Service = name, description, host, hostgroup, command, check attempts retry interval, check interval, contact, contactgroup, … Servicegroup = name, description, members, … Command = command, command line
  9. 9. Integração com ferramentas externas Passive Checks Nagios permite a forma passiva de monitoração onde a iniciativa de verificação do serviço e o envio dos resultados para o Nagios é realizada por uma aplicação externa.
  10. 10. Integração com ferramentas externas Passive Checks #!/bin/sh echocmd="/bin/echo" CFG="/etc/nagios/send_nsca.cfg" NSCA="/usr/sbin/send_nsca" NSCA_SERVER="10.20.2.15" cmdline="$1;$2;$3;$4" $echocmd $cmdline | $NSCA -H $NSCA_SERVER -d ";" -c $CFG 2. Execução do script: # ./submit_check_result_nsca host SSH 2 "SSH error" 1 data packet(s) sent to host successfully. 3. Evento recebido e processado pelo Nagios: # tail /var/log/nagios/nagios.log [1239656419] EXTERNAL COMMAND: PROCESS_SERVICE_CHECK_RESULT;host;SSH;2;SSH error [1239656424] PASSIVE SERVICE CHECK: host;SSH;2;SSH error [1239656424] SERVICE ALERT: host;SSH;CRITICAL;SOFT;1;SSH error
  11. 11. Integração com ferramentas externas External Commands Nagios fornece 157 comandos para execução de funções internas. CHANGE_SVC_CHECK_COMMAND;<hostname>;<service_description>;<check_command> SCHEDULE_HOST_DOWNTIME;<host_name>;<start_time>;<end_time>;<fixed>;<duration>;<author>;<comment> SCHEDULE_SVC_DOWNTIME;<host_name>;<service_desription><start_time>;<end_time>;<fixed>;<duration>;<author>;<comment> ENABLE_HOSTGROUP_HOST_CHECKS;<hostgroup_name> #!/bin/sh now=`date +%s` commandfile='/usr/local/nagios/var/rw/nagios.cmd' /bin/printf "[%lu] ENABLE_HOSTGROUP_HOST_CHECKS;hostgroup1n" $now > $commandfile
  12. 12. Integração com ferramentas externas Nagios Event Broker (NEB)
  13. 13. Hierarquia de objetos Nagios é capaz de determinar quando um host monitorado está em status down ou unreachable utilizando “parent host”. define host { host_name Nagios } define host { host_name Switch1 parents Nagios } define host { host_name Web parents Switch1 }
  14. 14. Representação gráfica da rede NagVis é um addon que permite a visualização de dados do Nagios e de qualquer representação gráfica da estrutura IT e da rede. É um projeto open-source utilizado amplamente pela comunidade do Nagios e possui como features: Representação dos hosts e services; Exibição dos atributos de um host ou services assim como seu status atual; Possibilidade de exibição somente dos problemas atuais; Customização de diagramas; Interface web de configuração.
  15. 15. Representação gráfica da rede
  16. 16. Representação gráfica da rede
  17. 17. Administração # host.cfg define host { use generic-host host_name remotehost address 192.168.1.50 hostgroups allhosts } # command.cfg define command { name check_http command_name check_http command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$ } # service.cfg define service { use generic-service host_name remotehost service_description HTTP check_command check_http }
  18. 18. Administração NagiosQL é uma ferramenta de administração web para o Nagios. A aplicação remove a complexidade do admin manter diversos arquivos .cfg na definição dos objetos de monitoração.  webserver + PHP + MySQL  criar, deletar, modificar e copiar os objetos de monitoração  importação no MySQL a partir do .cfg  auto backup dos arquivos de configuração  check de consistência  verificação de sintaxe  executa comandos no Nagios: reload, check_config  várias opções de linguagem  fácil instalação
  19. 19. Administração
  20. 20. Arquitetura
  21. 21. Dúvidas e Documentação Contato: Cristiano Casado ccasado@corp.globo.com Nagios: www.nagios.org Nagvis: www.nagvis.org NagiosQL: www.nagiosql.org Centreon: www.centreon.com Wiki: wiki.nagios.org

×