Rede sob Controle com o NAGIOS Carlos Coletti Assessoria de Informática carlos@unesp.br Agenda Conceitos de Monitoramento Nagios: histórico e funcionamento Instalação Os Arquivos de Configuração A Interface (mapas, relatórios, usuários) Monitoramento de Serviços Alertas Personalização da Interface Conclusão Conceitos de Monitoramento Monitorar a Rede é: ter controle sobre seus recursos tomar ações pró-ativas em tempo hábil manter o bom nível dos serviços Pode-se monitorar: Status de um Host (up, down, crítico) Switches: erros de CRC, estado das portas Servidores: usuários logados, espaço em disco etc... UNESP - Treinamento para os STI s 1
Conceitos de Monitoramento Tipos de Coleta de dados: direto na mídia: analisador de protocolos fim-a-fim: simulando uma aplicação intermediária: através de agentes (ex: SNMP) Formas abordadas neste curso: fim-a-fim e intermediária Breve Histórico: Desenvolvido por Ethan Galstad 1993: 1ª. versão (não tinha nome) 1996: passa a ser chamado Satan 1997: mais elaborado, se torna Saint 1999: ganhou uma GUI, vira Netsaint 2002: vasta gama de recursos, surge o Nagios, que conhecemos até hoje Funcionamento: baseado em plataforma WEB(front-end) e executáveis(back-end) monitora Hosts e Serviços Plugins (programas utilizados pelo Sistema) modularidade: com a adição de componentes, permite que praticamente tudo seja monitorado envio de alertas pode ser personalizado UNESP - Treinamento para os STI s 2
Monitora Hosts e Serviços: 1. O plugin verifica o estado do host/serviço 2. Respostas possíveis: 0 OK 1 Warning 2 Critical 3 Unknown 3. Armazena o status no log (ex: OK) 4. Se o status for diferente do anterior (ex: Critical), armazena no log o novo estado 5. Se!= OK, envia os alertas configurados Plugins: Funcionam de 2 formas: Passiva (o agente envia o estado do recurso) SNMP: plugin do Sistema que usa o protocolo SNMP para enviar estado de routers, switches, impressoras, etc NRPE: Nagios Remote Plugin Executor, monitora CPU, processos, memória, discos em máquinas remotas Ativa: o plugin simula um cliente acessando o recurso, consegue o estado deste Alguns Plugins inclusos no Sistema: apt mrtg clamd mailq dhcp imap disk smtp dns pop http ssh ntp entre outros UNESP - Treinamento para os STI s 3
Alertas: personalizados: para usuários ou grupos específicos envio de alertas: E-mail SMS IM Alerta Sonoro O Nagios não falta nem falar! (festival ou espeak) Personalização: permite alterar background image e ícones dos recursos de acordo com o desejado possui na internet vários Skins para mudar o padrão de visualização (sites não-oficiais) permite criar seu próprio Plugin e fazer o Sistema utilizá-lo possui vários filtros para geração de relatórios gerenciais Instalação Requisitos: FreeBSD, Linux Apache 2.0 (ou maior) Ports (FreeBSD) ou Gerenciador de Pacotes da distribuição Linux Utilizaremos o FreeBSD (o Ports resolverá todas as dependências automaticamente) Agora Mãos à obra!!! UNESP - Treinamento para os STI s 4
Instalação O Lab tem o shell de cada instância FreeBSD, com Apache instalado Instalar o pacote Nagios Instalar o Nagios-Plugins (os plugins são instalados separadamente) Os Arquivos de Configuração Estrutura de Diretórios: /usr/local/nagios bin: executáveis do Nagios etc: arquivos de configuração libexec: plugins sbin: cgi s usados pela interface WEB share: HTML e Imagens usados na Interface WEB var: arquivos de Log Dependendo da distribuição, os diretórios mudam de lugar, mas podem ser localizados nos.cfg Os Arquivos de Configuração Função de cada.cfg: nagios.cfg: arquivo principal, aponta para outros cfg_files cgi.cfg: responsável pelos CGI s usados na Interface htpasswd.users: arquivo do Apache com os usuários da Interface WEB resource.cfg: armazena macro de usuários commands.cfg: responsável pelos comandos (plugins) do Nagios, bem como forma das notificações contacts.cfg: contatos de usuários a serem notificados timeperiods.cfg: informações sobre templates de Horários de Verificação de serviços nnnn.cfg: arquivo criado pelo Admin com seus Hosts e Serviços UNESP - Treinamento para os STI s 5
Os Arquivos de Configuração Boas Práticas: Criar um diretório para colocar os.cfg de seus Hosts e Serviços a serem monitorados Criar um arquivo com os Templates personalizados de seu Sistema de Monitoramento Criar um arquivo para cada Host Criar um certificado digital para o Site definido para o Monitoramento no Apache (sempre usar HTTPS!!) A Interface Acesse sua Interface de Gerenciamento Vamos fazer um Tour pelo Nagios? Agora que você conhece as telas, vamos começar a incluir Hosts e Serviços! Monitoramento de Serviços Parte Prática: Adicionar Hosts Agrupar Hosts com o hostgroup Organizar o Mapa com a diretiva parents Adicionar Serviços Agrupar Serviços com servicegroup Adicionar Contatos dos Alertas Organizar Grupos de Contatos com o contactgroup UNESP - Treinamento para os STI s 6
Alertas Adicionar diretivas de Alerta nos.cfg Verificar o notify-host-by-email no commands.cfg Realizar simulações de queda de um Host e verificar os alertas Verificar configurações no timeperiods.cfg, é possível personalizar até a hora que os alertas são enviados!! Personalização Vamos personalizar o Nagios: Download de ícones personalizados em http://www.nagiosexchange.org Aplicar ícones personalizados através da diretiva hostextinfo : hostname: nome do host (deve ser o mesmo da diretriz host ) icon_image: ícone quando informações específicas do Host forem acessadas icon_image_alt: texto curto exibido ao passar o mouse sobre o ícone statusmap_image: imagem usada para renderizar o Status Map mais rapidamente (formato gd2) É possível usar uma imagem de Fundo e criar um mapa personalizado com coordenadas 2D (x,y) com a posição do ícone O NAGVIS é um pacote que permite trabalhar melhor com Mapas Personalizados Conclusão O NAGIOS é uma poderosa ferramenta de monitoramento de Rede O Grupo de Redes o utiliza com sucesso desde Janeiro/2008 As possibilidades de personalização são diversas, essa é a vantagem de uso de um Software Livre UNESP - Treinamento para os STI s 7
Dicas para os próximos passos Estudar os Plugins em http://nagios.org Criar seus próprios Plugins de acordo com a necessidade do Campus Utilizar o plugin de SNMP para os monitorar Switches, Printers, etc Utilizar o Nagvis para melhor visualização dos Mapas no Nagios Começar a gerar relatórios estatísticos de seus Serviços monitorados Boa Sorte!!! Obrigado pela presença!! UNESP - Treinamento para os STI s 8