Instituto Nacional de Pós-Graduação Gestão de Projetos em Tecnologia da Informação - PDF
Instituto Nacional de Pós-Graduação Gestão de Projetos em Tecnologia da Informação
Download "Instituto Nacional de Pós-Graduação Gestão de Projetos em Tecnologia da Informação"
Mônica Valgueiro de Lacerda
1 Instituto Nacional de Pós-Graduação Gestão de Projetos em Tecnologia da Informação Gerenciando Redes e Servidores com Nagios Maycon Sanches Amaro Campinas SP Agosto de 2010
2 Folha de Aprovação Gerenciando Redes e Servidores com Nagios Maycon Sanches Amaro Monografia de Conclusão do Curso de Gestão de Projetos em Tecnologia da Informação Aprovada por: Prof.: José Antônio Rosa - Orientador
3 Dedicatória Dedico esse trabalho aos meus pais, José Raimundo Amaro e Sueli Sanches Amaro, que sempre me apoiaram e incentivaram em todos os momentos de minha vida. Dedico também a minha esposa, Fernanda Ap. Moreira, que me apoiou e compreendeu sempre durante esse curso e sei que continuará sempre me apoiando e compreendendo.
4 Agradecimentos Agradeço a todos os professores e funcionários do INPG pela paciência e dedicação durante o curso, que certamente me ajudou e ajudará tanto profissionalmente quanto pessoalmente. Agradeço também a todos os colegas que de alguma forma contribuíram para que o curso se tornasse mais do que apenas uma sala de aula.
5 Resumo Esta monografia apresenta um estudo de gestão na área de Tecnologia da Informação a partir de uma ferramenta de monitoramento de servidores e serviços. Depois de fazer uma breve apresentação sobre a importância de se manter uma gerência funcional sobre os equipamentos de rede, estarei abordando e apresentando esta poderosa ferramenta open source, Nagios.. Palavras Chaves: Nagios, Gerenciamento, Servidores, Serviços, Monitoramento, Open Source
6 Abstract This monograph presents a study about Informtion Technology Manager as tool for monitoring servers and services. After making a brief presentation about the importance of maintaining a functional management on network equipment, will be addressing and presenting this powerful open source tool, Nagios. Key Words: Nagios, Gerenciamento, Servidores, Serviços, Monitoramento, Open Source
7 Lista de ilustrações Figura 1 Nagios no Mundo...18 Figura2 SNMP Funcionamento...19 Figura 3 Interface Nagios...23 Figura 4 Requisições SNMP...26
8 Lista de tabelas Tabela 1 Comparativo entre modelos de Gerência de redes...10
9 Lista de Abreviações CGI: Common Gateway Interface ERP: Enterprise Resource Planning; FCAPS: Fault, Configuration, Accounting, Performance and Security GPL: General Public License ISO: International Organization for Standardization IT: Information Technology; MAC: Media Access Control MIB: Management Information Bases OSI: Open Systems Interconnection POP3: Post Office Protocol 3 RH: Recursos Humanos SNMP: Simple Network Management Protocol SSH: Secure Shell SSL: Secure Sockets Layer TCO: Total Cost of Ownership Custo Total de Propriedade TCP: Transmission Control Protocol TI: Tecnologia da Informação; UDP: User Datagram Protocol WWW: World Wide Web;
10 Sumário 1.Introdução Justificativa Objetivos Geral Específico Gerenciamento de redes Evolução do Gerenciamento de redes Modelos para gerir redes Outros modelos de Gerência de redes Comparativo entre os modelos de gerenciamento Medição de desempenho de um rede Tipos de gerência de redes Padrões de Gerenciamento de redes Gerenciamento de recursos com Software Livre Nagios Apresentando No Mundo Funcionamento Verificando Hosts Verificando Serviços Plugins Interface Web SNMP Arquitetura Requisições SNMP Implantando o Nagios Instalando e configurando o Nagios Pré-requisitos Conclusão Glossário Referências Bibliográficas...36
13 1. Introdução Uma pesquisa da Dataquest aponta um alto crescimento na indisponibilidade, não planejada, de serviços de missão crítica, mesmo com a melhoria dos hardwares, softwares, dos processos de desenvolvimento e das ferramentas de suporte. Dentre estas ferramentas, vale destacar as de monitoração. Há uma clássica frase na administração que resume a importância deste contexto abordado, Você não consegue gerenciar aquilo que você não consegue medir, logo estarei apresentando uma ferramenta na qual faz o monitoramento, gerenciamento e ainda armazena todos os acontecimentos apara posterior análise, podendo ser apresentada como relatórios e estatísticas. Com os computadores ocupando cada vez mais espaço no mundo de hoje, torna-se imprescindível o gerenciamento da rede, seus ativos e serviços. Um modelo de negócio onde o computador não está presente parece impossível de se tornar realidade, e isso nos obriga a gerenciar e deixar a rede sempre, que possível, em modo UP. Uma rede compartilha uma série de recursos, oferece serviço de correio e permite que seus usuários utilizem a internet para navegação em páginas WEB, entre outros. E como saber se tudo está funcionando? Como garantir que tudo funcionará perfeitamente durante o período de utilização? Como administradores de redes, devemos estar sempre atentos à disponibilidade de nossos equipamentos. Garantir estabilidade e funcionalidade em 100% é o objetivo de nosso trabalho diário, porém nem tudo acontece como planejamos. É praticamente impossível alcançar todo esse valor por mais que nossos esforços sejam grandes. Máquinas comuns, sem nenhum mecanismo especial em hardware ou software que vise, de alguma forma, a manipular as falhas, não garantem 100% de disponibilidade. Em um ano, uma máquina pode ficar indisponível por um período aproximadamente quatro dias e nove horas, ou seja, esse equipamento fica de 99% a 99,9% disponível durante 365 dias, sem contar com as paradas de manutenção programada. 1
14 Os softwares de monitoramento são responsáveis por checar, a todo momento, se um equipamento está disponível ou não em nosso ambiente, em nossa rede, nos alertando por , SMS ou mensagens instantâneas sobre a queda de algum serviço ou Host indisponível. Efetuando esse gerenciamento de uma forma organizada e objetiva poderemos corrigir falhas antes mesmo que alguém possa notar, além também, de estar chegando cada vez mais próximo dos 100% tão esperado. 2
15 2. Justificativa Como dito anteriormente, a presença de sistemas informatizados na sociedade é enorme, a capacidade de se manter todo esse sistema estável e funcional é um grande desafio aos administradores de rede. Em corporações de médio e grande porte a TI está presente em todos, necessariamente em todos, os departamentos, fazendo com que uma atividade dependa do cumprimento da outra. Os ERPs integram Vendas, Estoque, Compras, Controle de Produção, Contabilidade, Financeiro, RH e muitos outros setores, dependendo do ramo de atividade. A falta de comunicação entre eles acarreta em grandes prejuízos além de sujar a imagem perante o cliente. Diante destes fatos achei importante a abordagem desse tema para que eu, como Analista de Suporte de Redes, atualmente, possa colaborar cada vez mais para meu desenvolvimento profissional e contribuir diretamente para o bom desempenho da rede onde trabalho. 3
16 3. Objetivos 3.1. Geral Uma rede precisa, além de oferecer recursos e serviços, ser rápida, confiável, segura e sobretudo, estar sempre disponível. Serviços de missão crítica devem ser monitorados preventivamente de modo que sejam emitidos alertas em situações anormais. Estarei abordando nesse documento de conclusão de curso o gerenciamento da rede, o monitoramento de serviços e servidores através de uma ferramenta gratuita, inicialmente um pouco trabalhosa de implementar, dependendo do tamanho do parque de equipamentos, porém muito funcional no que é proposta. O administrador poderá ter uma visão geral de toda a rede, garantindo que todo os ativos críticos estarão sendo vistos através de um sistema centralizado de monitoramento Específico O maior objetivo do Nagios é informar a você qualquer problema em sua rede, antes que um de seus clientes ou chefe o faça. Como em toda a rede informatizada os serviços devem estar disponíveis por um período próximo a 100%. A ferramenta Nagios é responsável por centralizar e garantir que todo o parque de equipamento está sendo monitorado, fazendo com que serviços preventivos e corretivos possam ser feitos com foco e eficiência. O Nagios fará a coleta de informações dos servidores através do protocolo SNMP, visto com detalhes mais a frente. Deixar a rede em pleno funcionamento, reduzir o tempo de diagnóstico e solução é a tarefa árdua apresentada nesse trabalho. 4
17 4. Gerenciamento de redes As redes foram criadas, inicialmente, como uma forma de compartilhar dispositivos periféricos como impressoras, modens, fax etc. Entretanto, de acordo com o crescimento dessas redes o compartilhamento de dispositivos tomou um aspecto secundário em comparação aos recursos e serviços oferecidos por elas, como por exemplo, aumento de produtividade, confiabilidade das informações, interoperabilidade etc. Mas o que exatamente é a Gerência de redes? Gerenciar uma rede é ter o controle de qualquer objeto possível de ser monitorado numa estrutura de recursos físicos e lógicos e que podem ser distribuídos em diversos ambientes geograficamente próximos ou não. O gerenciamento de uma rede de computadores torna-se uma atividade essencial para garantir o seu funcionamento contínuo assim como para assegurar um elevado grau de qualidade dos serviços oferecidos. Vários modelos foram criados para possibilitar o gerenciamento de redes, telecomunicações e dados. O FCAPS se destaca por servir de base para os demais modelos, assim como o SNMP A gerência e o monitoramento deste ambiente torna-se cada vez mais necessária para que todo o funcionamento permaneça de forma esperada. Esta gerência torna-se extremamente complexa por consequência do crescimento acelerado, além disso os sistemas de telecomunicações, parte componente das redes também adicionam complexidade a estas redes, mesmo em pequenas instalações. As informações que trafegam em uma rede devem ser transportadas de forma confiável e rápida. Para que essa tarefa seja cumprida é fundamental que os dados sejam monitorados de maneira que os problemas que possam aparecer sejam resolvidos de forma eficiente. Uma rede sem mecanismos de gerência pode apresentar problemas como congestionamento, recursos mal utilizados, sobrecarregados ou em pior das hipóteses indisponíveis. 5
18 A gerência está associada ao controle de atividades e ao monitoramento do uso dos recursos disponíveis. O sucesso de um gerenciamento de rede se dá no sucesso de obter informações, tratar estas informações, possibilitar um diagnóstico, e encaminhar as soluções dos problemas Evolução do Gerenciamento de redes Atualmente as redes de computadores e os seus recursos associados, além das aplicações distribuídas, tem se tornado fundamental e de tal importância para uma organização, que elas basicamente "não podem falhar". Isto significa que o nível de falhas e de degradação de desempenho considerados aceitáveis esta cada vez mais diminuindo, sendo este nível igual ate a zero, dependendo da importância da rede para uma instituição. Abaixo um breve histórico da evolução do gerenciamento de redes: 1970: Os computadores eram centralizados, com terminais conectados a mainframes em baixa velocidade de transmissão. O gerenciamento era inexistente, ou quando muito fornecido pelos fabricantes de mainframes. 1980: Com o surgimento das redes locais de computadores aumentou-se a velocidade das conexões. Surgiram os primeiro sistemas de gerenciamento voltados para redes distribuídas. 1990: Com o advento da Internet o gerenciamento passa a ser feito através de Navegador Web, acompanhando o avanço da tecnologia de interconexão de redes como ATM e Frame Relay das redes de longa distância. 6
19 Hoje: O aumento do grau de complexidade das redes e do seu tamanho exige o emprego de sistema de gerenciamento que proporcionem qualidade de serviço, proatividade, integração com processo de serviços e negócios Modelos para gerir redes Atualmente temos duas importantes estruturas abertas e padronizadas de gerência: SNMP (Simple Network Management Protocol) e CMIP (Common Management Information Protocol referência OSI), sendo o SNMP mais largamente utilizado. O gerenciamento de rede possui cinco áreas comuns conhecidas como FCAPS, desenvolvidas para o modelo de gerência OSI, contudo não deixa de ser compatível com o modelo SNMP: F Fault Management (Gerência de falhas): Visa a detecção, localização e correção de problemas de hardware ou software em uma rede. Atualmente temos sistemas de gerência focando a pró-atividade na antecipação de falhas, onde rotinas de diagnóstico são executadas em períodos de tempo pré-definidos além de correlação de alarmes diagnosticar a iminência de determinada falha. C Configuration Mangement (Gerência de configuração): Está relacionada com registros de inventário de hardware e software, histórico de modificação dos dispositivos (normalmente feito através de backups de configuração com registro de data, hora e responsável pela modificação), permitir a inicialização dos sistemas que compõem a rede, além de registros de topologia física, lógica e histórico de status dos dispositivos. A Accouting Management (Gerência de registros, logs ou bilhetes): Esta gerência tem a finalidade de registrar a utilização da rede para permitir 7
20 contabilizar a utilização dos recursos da mesma, muito utilizado por provedores de acessos por motivos de tarifação de serviços. P Performance Management (Gerência de performance): Parte da perspectiva de como saber ou definir que determinada rede está com um bom desempenho, uma vez que a rede pode ser vista de forma diferente por usuários de aplicações distintas; ou seja, enquanto ela pode ser considerada como rápida e eficaz para uma determinada aplicação também pode ser considerada extremamente lenta ou incompatível para outra. Através da gerência de performance os administradores de rede podem monitorar certas variáveis chaves como throughput, tempo de resposta, disponibilidade, permitindo definir como e onde o desempenho da rede pode ser melhorado. S Security Management (Gerência de segurança): visa regular e administrar o acesso aos recursos de rede e as determinadas informações, incluindo tarefas como verificar o privilégio de acesso à rede dos usuários, detectar e registrar tentativas de acesso não autorizadas. Normalmente a autenticação e autorização de acesso a rede é feito de forma centralizada, e uma estrutura muito comum neste controle de acesso (principalmente para router e switchs) é a utilização de um servidor de autenticação Outros modelos de Gerência de redes Apesar de utilizarmos com maior frequência o modelo FCAPS, temos vários outros modelos que foram elaborados para que os administradores tenham moldes facilitadores. Modelo OAM&P: Operation, Administration, Maintenance and Provisioning é um modelo de gerência para operações de rotina em um ambiente de rede que detecta, diagnostica e corrige falhas, mantendo o funcionamento do sistema. A administração envolve o planejamento da rede em longo prazo, dados estatísticos, estratégia e tendências. A manutenção envolve: 8
21 atualizações, correções, backups, equipamentos, tarefas que provocam a paralisação da rede por um certo período, necessitando de um planejamento para não gerar um impacto maior. O provisionamento refere-se a remoção ou criação de estabelecimento de serviços e envolve instalações de equipamentos. Modelo TMN: Telecommunications Management Network. é um modelo de gerenciamento de redes de telecomunicações padronizado pela ITU-T, que tem a finalidade de fornecer um conjunto de funções que permitem realizar a gerência e a administração de uma rede de telecomunicações, que compreende: planejamento, provisionamento, instalação, manutenção, operação e administração. Modelo TOM: Telecom Operations Map é um modelo de gerência de redes criado pelo Telemanagement Fórum, para substituir o modelo Telecommunication Network Management (TMN). O TOM define modelos de processos para criação de novos sistemas e softwares integrando padrões comerciais para criação de serviços. Sua estrutura é dividida em processos: operacionais, estratégicos, infra-estrutura, produto e gestão empresarial. CMIP/CMIS: Common Management Information Protocol / Common Management Information Service é um modelo de gerência de redes usado pelos principais operadores de telecomunicação, criando um mapa de projeto do sistema de gerência da rede. CMIP/CMIS é um modelo originário da arquitetura OSI. O CMIS define o gerenciamento dos serviços e o CMIP define a forma de transmissão e a sintaxe do gerenciamento dos serviços. 9
22 4.4. Comparativo entre os modelos de gerenciamento A tabela a seguir apresenta os diversos modelos de gerenciamento de redes e suas principais caracteristicas. Modelo de gerência Órgão responsável Tipo de gerenciamento Utilização FCAPS ISO Falhas, configurações, desempenho, contabilidade, segurança. Estrutura conceitual popular para gerência de redes. TMN ITU-T Negócios, serviços, redes e elementos Estrutura conceitual popular para gerência de redes, voltada para provedores de serviços de telecomunicações. OAM&P Provedores de Serviço Operação, manutenção, administração, provisionamento. Utilizado em redes de grandes provedores de serviços. TOM TeleManagem ent Forum Redes e sistemas, desenvolvimento de serviços e operações, atendimento ao usuário Ainda em estágio conceitual. CMIP/CMIS ISO Desempenho, falhas, configurações Desenvolvimento limitado, baseado em redes no modelo OSI. SNMP IETF Desempenho, falhas Amplamente utilizado em redes de dados, especialmente em redes baseada no TCP/IP. Tabela Medição de desempenho de um rede As ferramentas de gerência de uma rede, normalmente utiliza a combinação de cinco elementos distintos para medição de desempenho de uma rede estruturada. Disponibilidade: A primeira etapa para se medir a performance de uma rede é saber se ela está realmente funcionando. Se o tráfego não pode percorrer a rede, trata-se de algo muito mais problemático e crítico que apenas um problema de performance. Através do ping é possível efetuar testes de 10
23 conectividade com diferentes níveis de observação. O ping, basicamente, envia pacotes ICMP para determinado host, este por sua vez, ao receber o pacote, imediatamente retorna um pacote de resposta. Obtendo-se sucesso nesta comunicação podemos concluir que a rede está comunicável. Com isso podemos determinar opções mais avançadas, como verificar se algum pacote desta requisição foi perdida, ou se a comunicação está lenta. Tempo de resposta: É o tempo que se necessita para que um pacote percorra entre dois hosts pela rede. Em grandes redes alguns fatores podem influenciar neste tempo de resposta entre o cliente e o servidor, tais como: Sobrecarga de processamento nos segmentos de rede, erros na topologia da rede, falhas na infra-estrutura, falhas em dispositivos de rede entre outros. A melhor maneira de utilizar o tempo de resposta como ferramenta de gerência é utilizando-se de uma linha do tempo onde alterações nesta variável podem ser facilmente identificadas. Utilização da rede: A performance da rede é principalmente influenciada pela utilização de cada segmento de rede situados no caminho entre dois hosts. A utilização da rede é um valor percentual referente a informação transmitida e recebida em determinado período de tempo. Determinar a utilização de rede entre dois pontos separados em uma rede pode ser complexo, por isso, a maioria das ferramentas de performance utilizam se de dois diferentes elementos: Vasão(throughput) da rede e capacidade de transmissão da rede. Vasão (Throughput) da rede: O throughput de rede consiste em determinar a quantidade de banda disponível para determinada aplicação em um dado momento. É diretamente influenciado por gargalos provocados por segmentos da rede de menor banda ou de maior tráfego, pois apesar de cliente e servidor muitas vezes terem velocidades de acesso altas (100Mbps) isso não será reproduzido na rede ponto-a-ponto. Não é aconselhável calcular a vasão de uma rede, assim normalmente são utilizadas leituras da 11
24 rede, em intervalos de tempo distintos, onde são gerados fluxos de pacotes variáveis e com os resultados obtidos é construída uma linha do tempo de análise desta variável. Capacidade de Transmissão da rede: A capacidade de transmissão de uma rede é outro fator diretamente relacionado a vasão da mesma, e para determinarmos essa variável são utilizados duas técnicas: packet pair e packet trains. Um par de pacotes é enviado para um determinado host remoto com um intervalo de tempo de separação conhecido como packet pair. Quando este par de pacote atravessa toda a rede e chega ao seu destino verificamos a diferença entre o intervalo de chega entre os dois pacotes. Este intervalo de tempo é conhecido como packet train Tipos de gerência de redes Várias formas de gerencia de redes foram se disseminando de acordo com o nível de informatização da empresa. Segue alguns modelos: Gerência Centralizada: Um único gerente controla o processo e os problemas com os modelos centralizados de gerenciamentos de redes tornam-se mais críticos na proporção em que a rede cresce. Gerência descentralizada: As atividades são distribuídas, pois há vários nós responsáveis pelo gerenciamento, permitindo que o trabalho seja feito de forma hierárquica, ou seja, cada nó é responsável por determinado tipo de atividade gerencial. Gerência Reativa: Todo o processo feito pelo gestor é efetuado após a ocorrência da falha. 12
25 Gerência Pró-ativa: A todo instante é coletado informações de todos os dispositivos que compõem a rede para verificação se algo está fora do esperado. Caso isto ocorra providências são tomadas antes da falha acontecer Padrões de Gerenciamento de redes Uma infinidade de ferramentas pagas e gratuitas surgiram para auxiliar os administradores de redes nessa função, independente do tipo de gerenciamento utilizado. A crescente necessidade de gerenciar as redes foi necessário que padrões fossem estabelecidos para essas ferramentas. Surgiram, então dois padrões. Família de Protocolos SNMP: O protocolo SNMP refere-se a um conjunto de padrões para gerenciamento que inclui um protocolo, uma especificação de estrutura de dados, e um conjunto de objetos de dados. Este protocolo hoje já está na sua terceira versão oficial, chamada de SNMPv3. Porém, ainda, o SNMPv2 é mais utilizado. Este é o protocolo de gerencia adotado como padrão para redes TCP/IP, e que aqui será tratado. Sistemas de gerenciamento OSI: este termo refere-se a um grande conjunto de padrões de grande complexidade, que definem aplicações de propósito geral para gerencia de redes, um serviço de gerenciamento e protocolo, uma especificação de estrutura de dados, e um conjunto de objetos de dados. Pela sua complexidade, e pela lentidão do processo de padronização, este sistema de gerenciamento não é muito popular. O foco para as atividades de gerenciamento de rede é a organização e, aspectos como o atendimento do usuário, se caracterizam como primordial para o sucesso da estrutura. É desejável que o usuário dos serviços de rede tenha um único ponto de contato para reportar problemas e mudanças. 13
26 5. Gerenciamento de recursos com Software Livre Para que todos os processos, sejam eles críticos ou não, tenham um bom monitoramento, disponibilidade e perfeito funcionamento, faz-se fnecessário que um plano de gerenciamento de recursos seja desenvolvido de forma a possibilitar a coleta e armazenamento de informações praticamente em tempo real. Uma vez mapeados os pontos principais da infra-estrutura lógica da empresa, damos de frente com os custos associados tanto à implementação quanto à manutenção dos sistemas escolhidos. Para que os custos possam sensivelmente ser reduzidos, pode-se recorrer aos, não menos providos de recursos, softwares livres e de código aberto, possibilitando à empresas com orçamentos restritivos a se valerem dos mesmos benefícios, e até melhores, dos softwares comerciais consagrados no mercado. Desta forma, é importante considerar, independente do tamanho da rede a ser gerenciada e monitorada, a implantação de sistemas livres, tanto pela economia quanto por sua versatilidade técnica, documentação, manutenção, estabilidade e segurança, providas por recorrentes revisões por todos os usuários e colaboradores espalhados por todo o mundo. Obviamente, mesmo adotando os softwares livres, não estaremos isentos de custos. Muitas vezes se faz necessário investir em novos servidores, treinamento para a equipe de implantação e operação dos novos sistemas de gerenciamento em questão, porém, os resultados finais tendem a ser consideravelmente menores do que aqueles existentes quando se lida com software proprietário. Um dos principais motivos a serem citados que contribuem para a redução do TCO de um sistema de gerenciamento de recursos tecnológicos baseado em software livre e de código-fonte aberto é que os mesmos, em sua grande maioria, rodam sobre sistemas operacionais também livres e de código-fonte aberto, como o Linux, isentando a entidade que o utiliza de gastos com licenças de sistemas operacionais proprietários. E, embora seja perfeitamente plausível alegar que a adoção do Linux como sistema 14
27 operacional em um servidor possa acarretar na necessidade de treinamento da equipe responsável pela operação do sistema, tal treinamento acaba se justificando, uma vez que, após treinada, a equipe como um todo estará perfeitamente capacitada a operar não apenas o sistema em questão, mas também a propor a implementação ou migração de outros sistemas ou servidores existentes que rodem sobre um sistema operacional proprietário qualquer, reduzindo, desta forma, também o TCO destes sistemas. Ainda, é importante ressaltar que, normalmente, sistemas operacionais Linux não exigem equipamentos com configurações tão robustas quanto os sistemas operacionais proprietários para seu perfeito funcionamento, gerando uma economia também no perfil de hardware dos servidores onde tais sistemas serão instalados. Outra vantagem a ser considerada quando se utiliza software livre e de código-fonte aberto é a possibilidade de alteração ou expansão do software por pessoas competentes para tanto, podendo fazer com que o mesmo funcione de maneira diversa daquela para a qual foi originalmente concebido, de forma a aprimorá-lo ou ainda, adaptálo às necessidades específicas da entidade que o utiliza. Outro ponto bastante positivo é, sem dúvida alguma, a revisão quase constante do código-fonte por profissionais ou entusiastas altamente capacitados, porém não envolvidos no projeto original. Desta forma, as falhas embora existentes tendem a ser corrigidas em tempo muito inferior ao que uma empresa qualquer poderia oferecer aos clientes de seus softwares proprietários. Finalmente, pode-se ainda destacar a alta estabilidade alcançada com os sistemas operacionais Linux, desde que devidamente instalados, o que acaba por se refletir diretamente na disponibilidade de tais sistemas. 6. Nagios 6.1. Apresentando Nagios é um software livre, gratuito, desenvolvido especificamente para a plataforma Linux/Unix, com o objetivo de monitorar ativos de redes, aplicações e recursos 15
28 computacionais como processamento, memória, discos, temperatura e diversas tarefas através de plugins elaborados pelos colaboradores em todo o mundo. Em termos gerais sua principal função é realizar verificações configuráveis em Hosts e serviços, sejam estes locais ou remotos e enviar um alerta se algo estiver fora do normal. O Nagios foi originalmente criado sob o nome de Netsaint, foi escrito e e é mantido por Ethan Galstad, junto com um exército de desenvolvedores que ativamente mantém plugins oficiais e não oficiais. Uma das principais vantagens é que o Nagios é uma aplicação de código aberto e licenciado pelo sistema GPL o que permite modificações legais de seu código fonte, sua estrutura modular permite a interoperabilidade com outras aplicações através de integrações sem muita complicação, e consequentemente, sua funcionalidade se estende a diversos meios, sendo adaptável de acordo com a topologia. Sua instalação contém em torno de dez arquivos de configuração somando ao todo mais de uma centena de parâmetros e diretivas de monitoração, verificação, detecção de falhas, ação corretiva e notificação ao administrador. Algumas de suas características primordiais são: Monitoração de serviços de rede (SMTP, POP3, HTTP, ICMP, PING, etc.) tanto em plataformas Linux/Unix quanto em plataformas privadas com as da Microsoft; Monitoração de recursos de hosts (carga do processador, espaço livre em disco, etc.) local e remota com suporte através de túneis encriptados SSH ou SSL; Checagem paralela de serviços, ou seja, se você tiver muitos itens monitorados não haverá risco de algum deles não ser checado por falta de tempo.; Habilidade de definir hierarquia de hosts e serviços, definindo quem é o pai daquele Host ou Serviço, permitindo a distinção entre aqueles que estão fora ou indisponíveis e os não alcançáveis; Notificação de grupo de contatos quando um problema ocorrer ou for 16
29 resolvido; Habilidade de definir manipuladores de eventos para disparar resoluções pró-ativas; Rodízio automático de arquivo de log; Interface web opcional para visualização de estados e administração. Apesar de ser projetado para redes de grande porte com inúmeros hosts e serviços, seu desempenho em ambientes menores é definitivamente excelente. Todo o sucesso da implantação desta ferramenta se destina no entendimento e planejamento da configuração de seus arquivos e na expansão de plugins, escritos em qualquer outra linguagem de programação (Bash, C, PERL, Python, PHP, C# etc); 6.2. No Mundo Conhecido mundialmente o Nagios está incorporado como aplicativo principal para a configuração de servidor de monitoramento em distribuições importantes de linux como Debian, Gentoo, Mandrake, RedHat. Em todo o mundo indivíduos e empresas se organizam em eventos e discutem melhorias. A estimativa de usuários, retiradas do site oficial do Nagios, que utilizam e colaboram com o sistema é em torno de 250 mil. O Nagios foi baixado mais de 2 Milhões de vezes e tornou -se a solução padrão da industria para o monitoramento de redes, sistemas e aplicações. A comunidade Nagios tem desempenhado um papel central na disseminação da ferramenta através do boca-a-boca, desenvolvimento e suporte. A figura3 apresenta um comparativo, preferência de usuários, entre o Nagios e as outras ferramentas de monitoramento. O Nagios claramente ocupa mais de 50% da pizza. 17
30 Figura1 fonte: Funcionamento O Nagios dá ao administrador a opção de programá-lo para, em caso de irregularidade (falhas) e dependendo do tipo desta ocorrência, informar a um ou mais grupos de contato cadastrados, seja através de , SMS, pager ou outros métodos definidos. Além disso, o Nagios pode ser programado para reagir e solucionar alguns dos eventuais problemas, obviamente informando novamente ao administrador da solução o status atual da rede. Podemos resumir este funcionamento em 3 etapas: Monitorar através do serviço SNMP utilizando o protocolo UDP, todos os hosts e serviços configurados nele; Comunicar, caso algo apresente alguma anormalidade em um determinado host ou serviço, o administrador da rede e as pessoas configuradas em receber alertas daquele determinado problema. Comunicar que a anormalidade foi solucionada e que todas as tarefas supervisionadas estão funcionando como previsto. 18
31 Figura2 6.4.Verificando Hosts A verificação de hosts geralmente é feita através do serviço de ping, de tempos em tempos, por exemplo de 5 em 5 min, é enviado um comando pingo ao servidor e se em três tentativas ele obter 100% de perda de pacotes o host é setado como Down. Com a verificação de através de pings pode-se obter informações adicionais tais como tempo de resposta na rede ou possível perda de pacotes, as quais poderemos indiretamente concluir que algo naquele servidor não está funcioando corretamente, podendo ser um problema físico, de estrutura de rede ou um problema no próprio hardware daquele equipamento. Sempre que o Nagios se deparar com um serviço indisponível, é efetuada primeiramente uma verificação no host, pois o pai daquele serviço é o próprio equipamento. Abaixo uma breve explicação de como o Nagios trata este procedimento. 1- Se o serviço não funcionar -Verifique o host a que o serviço está associado (ping) 2- Se o host estiver funcionando - O problema é com o serviço. Notifique aos responsáveis 3- Se o Host não responder ao ping 19