monitorando redes com o nagios

Post on 16-Jun-2015

539 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Nagios

TRANSCRIPT

Monitorando Redes com o Nagios

Autor: Leonardo Henrique Machado

13/9/2004 Leonardo Henrique Machado 2

Apresentação

• Recém formado em Ciência da Computação

• Estágio na administração da Rede do DCC/UFMG (implantação do Nagios)

• Monitoramento de 36 telecentros em 36 cidades no norte de Minas Gerais

• Professor na semana de capacitação de funcionário público realizada em abril/2004 em Brasília

13/9/2004 Leonardo Henrique Machado 3

Conteúdo1. Visão geral2. Instalação3. Configuração básica4. Plugins5. Estados de clientes e serviços6. Agendamento de checagens7. Notificações8. Períodos9. Tratamento de eventos10. Comandos externos11. Nrpe/nsca12. Dependências13. Paradas agendadas

14. Demonstração

15. Perguntas5 minutos5 minutos

40 minutos

13/9/2004 Leonardo Henrique Machado 4

Visão Geral

• Monitoramento de serviços (SMTP, POP3, HTTP, NNTP, PING, etc)

• Monitoramento de recursos (carga, disco, etc)• Flexível: uso de plugins• Checagem paralela de serviços• Notificação de contatos (pager, email, icq, etc)• Tratamento de eventos• Interface Web

13/9/2004 Leonardo Henrique Machado 5

Instalação

• Download, ./configure, make install• Disponível em .rpm e .deb• Download e instalação de plugins• Configurar servidor web (ex.: apache)• Configurar o programa

13/9/2004 Leonardo Henrique Machado 6

Estrutura de Diretórios

1. bin/ � núcleo do programa Nagios2. etc/ � configurações3. sbin/ � CGIs4. share/ � Arquivos HTML e documentação5. var/ � logs e comandos externos

Configuração

Apache

Configuração

Arquivo principal – nagios.cfg

Configuração

Arquivo de CGIs – cgi.cfg

Configuração

Definição de máquinas e grupos de máquinas – maquinas.cfg

Configuração

Definição dos serviços – servicos.cfg

Configuração

Criação de contatos e grupos de contatos – contatos.cfg

13/9/2004 Leonardo Henrique Machado 13

Iniciando o Nagios

• Teste: Usando a opção –v• Inicie o programa: /etc/init.d/nagios start

13/9/2004 Leonardo Henrique Machado 14

Teoria do Funcionamento

• Serviço não-OK � verifique o cliente• Cliente não-OK � não verifique mais

serviços nele

13/9/2004 Leonardo Henrique Machado 15

Achando a causa do problema

Gravidade maior

13/9/2004 Leonardo Henrique Machado 16

A Teoria dos Plugins

• Vários plugins disponíveis• Facilidade em criar novos plugins

– Regra: é possível verificar o serviço através de linha de comando? Então é possível fazer um plugin!

• Ex.: checar uso de OpenOffice

13/9/2004 Leonardo Henrique Machado 17

A Teoria dos PluginsEx.: check_disk

Ex.: check_dns

13/9/2004 Leonardo Henrique Machado 18

Tipos de estado – Soft/Hard

• max_check_attemps não excedido � soft– Não há notificações– Tratamento de eventos acionados– Logs opcionais

• max_check_attemps excedido � hard– Envio de notificações

13/9/2004 Leonardo Henrique Machado 19

Estado das máquinas

OK DOWN UNREACHABLE

13/9/2004 Leonardo Henrique Machado 20

Estado dos serviços

OK

UNKNOWN

WARING

CRITICAL

13/9/2004 Leonardo Henrique Machado 21

Agendamentos de checagens

• nagios.cfg

�Inter_check_delay_method�Service_interleave_factor�Max_concurrent_checks�Service_reaper_frequency

13/9/2004 Leonardo Henrique Machado 22

Agendamentos de checagens

• Na definição de serviço

�Normal_check_interval�Retry_check_interval�Check_period

13/9/2004 Leonardo Henrique Machado 23

Próximos tópicos1. Visão geral2. Instalação3. Configuração básica4. Plugins5. Estados de clientes e serviços6. Agendamento de checagens7. Notificações8. Períodos9. Tratamento de eventos10. Comandos externos11. Nrpe/nsca12. Dependências13. Paradas agendadas14. Demonstração15. Perguntas

13/9/2004 Leonardo Henrique Machado 24

Notificações

• Quando notificar?

�Entradas em estado crítico�Tempo de re-notificação alcançado

13/9/2004 Leonardo Henrique Machado 25

Quem é notificado?

• Contact_groups em definição de serviços• Ser contato de um serviço garante a

visualização do cliente/serviço na interface web (autenticação via CGI)

13/9/2004 Leonardo Henrique Machado 26

Filtros de Notificação

• Enable_notifications � nagios.cfg• Downtime? � não notifique• Flapping? � não notifique• Serviço

– Notification_period– Notification_interval

• Contatos– host_notification_options [d,u,r,n]– service_notification_options [w,u,c,r,n]

13/9/2004 Leonardo Henrique Machado 27

Comandos de Notificação

• Você cria seu próprio método de notificação– Mail– Sms– Pager– Icq– Popup– Sons …

13/9/2004 Leonardo Henrique Machado 28

Escalonando notificaçõesdefine serviceescalation{host_name bankonlineservice_description bbfirst_notification 3last_notification 5notification_interval 90contact_groups estagiarios

}

define serviceescalation{host_name bankonlineservice_description bbfirst_notification 6last_notification 0notification_interval 60contact_groups estagiarios,chefes

}

13/9/2004 Leonardo Henrique Machado 29

Definição de períodos

• Variáveis que necessitam de períodos de tempo:

check_periodnotification_periodservice_notification_periodnotification_periodhost_notification_period

13/9/2004 Leonardo Henrique Machado 30

Definição de períodos

define timeperiod{timeperiod_name secretariaalias Horário da Secretariamonday 08:00-12:00,13:00-17:00tuesday 08:00-12:00,13:00-17:00wednesday 08:00-12:00,13:00-17:00thursday 08:00-12:00,13:00-17:00friday 08:00-12:00,13:00-17:00

}

13/9/2004 Leonardo Henrique Machado 31

Tratamento de Eventos

• Execução de scripts quando se entra em:– soft, hard ou recovery

• Exemplo de uso: se o http parar de responder o nagios reinicia o servidor e envia uma notificação.

13/9/2004 Leonardo Henrique Machado 32

Comandos Externos

• Escritos no arquivo var/rw/nagios.cmd• Controlado pelas variáveis:

– check_external_commands– command_check_interval

• Usado em checagens passivas: plugin envia resultado sem que o Nagios tenha pedido.

• Todos os comandos de interface web são enviados ao nagios.cmd

13/9/2004 Leonardo Henrique Machado 33

NR

PE

13/9/2004 Leonardo Henrique Machado 34

NSC

A

13/9/2004 Leonardo Henrique Machado 35

O resultado é recente?

• freshness_threshold � força checagens ativas de serviços passivos.

define service{host_name backup-serveractive_checks_enabled 0passive_checks_enabled 1check_freshness 1freshness_threshold 93600check_command no-backup-report …outras opções...

}

13/9/2004 Leonardo Henrique Machado 36

Monitoramento de clusters

• check_cluster• Comando:

check_host_cluster!2!4!/etc/nagios/cluster.cfg • Cluster.cfg

» host1host2host3host4host5host6

Dependências: serviços e clientes

dependecias.cfg

Agendamento de paradas

Web: fixa e flexível

Demostração do Nagios

Monitorando 36 telecentros

13/9/2004 Leonardo Henrique Machado 40

Conclusão

• Vantagens– Escalável– Eficiente– Gratuito– Esquema de notificação flexível– Permite criar suas próprias checagens– Interface Web (independe do SO)

Muito Obrigado!

Perguntas?

Leonardo Henrique Machado - leo@ufmg.br

top related