Você está na página 1de 69

NAGIOS

COMO SOLUO DE MONITORAMENTO DE REDE

HETTY ALVES DE ANDRADE

2006

HETTY ALVES DE ANDRADE

NAGIOS
COMO SOLUO DE MONITORAMENTO DE REDE

Monografia apresentada ao Departamento de Cincia


da Computao da Universidade Federal de Lavras,
como parte das exigncias do curso de PsGraduao Lato Sensu em Administrao de Redes
Linux, para a obteno do ttulo de especialista em
Administrao de Redes Linux.
Orientador:
Prof.MSc. Joaquim Quinteiro.

LAVRAS
MINAS GERAIS - BRASIL
2006

HETTY ALVES DE ANDRADE

NAGIOS
COMO SOLUO DE MONITORAMENTO DE REDE

Monografia submetida Comisso Examinadora


designada pela Universidade Federal de Lavras para
obteno do ttulo de Especialista em Administrao
de Redes Linux.
Aprovada em 29 de Setembro de 2006
___________________________________________
Prof. MSc. Herlon Ayres Camargo
___________________________________________
Prof. MSc. Denilson Vedoveto Martins

______________________________________
Prof. MSc. Joaquim Quinteiro
(Orientador )
LAVRAS
MINAS GERAIS - BRASIL

AGRADECIMENTOS

A Deus
minha famlia, pelo carinho e pela
pacincia que tiveram durante a
execuo deste trabalho.
Aos amigos e parentes, professores e todos
que de alguma forma contriburam para
que este trabalho fosse concludo.

RESUMO

Este trabalho desenvolve um estudo do software livre Nagios,


aplicativo que essencialmente monitora ativos e servios de rede. Sero
demonstrados seus recursos de forma prtica, buscando auxiliar o
administrador de rede no processo de configurao para a utilizao desta
ferramenta. Algumas das caractersticas do Nagios so: o monitoramento de
servios de rede SMTP, POP3, HTTP, NNTP, entre outros; monitoramento
de recursos de servidores como CPU, memria, disco, e processos;
capacidade de definir hierarquia da rede; notificaes imediatas sobre
problemas na rede, via e-mail e pager; capacidade de tomar contramedidas
de acordo com o problema na rede; interface web com mapa da rede em 2D e
3D, relatrios, grficos e histricos. verstil, flexvel e verifica
constantemente a disponibilidade dos servios e hosts.

Palavras-Chave: plugin, software, hosts, monitoramento, falhas de rede.

SUMRIO

1 Introduo.................................................................................... 5
2 Apresentao do Nagios............................................................... 8
2.1 O Nagios no mundo..................................................... 12
2.2 Monitoramento de redes e servios.............................. 14
2.3 Organizao de plugins de forma simplificada........... 15
2.4 Monitoramento dos recursos de clientes...................... 15
2.5 Monitoramento de fatores ambientais.......................... 16
2.6 Notificao de resultados............................................. 16
2.7 Definio de hierarquia de redes.................................. 17
2.8 Outras ferramentas....................................................... 17
3 Interface Web do Nagios ..............................................................18
3.1 status.cgi....................................................................... 19
3.2 statusmap.cgi................................................................ 20
3.3 statuswrl.cgi.................................................................. 21
3.4 statuswml.cgi........................ 22
3.5 extinfo.cgi..................................................................... 23
3.6 cmd.cgi......................................................................... 23
3.7 tac.cgi........................................................................... 24
3.8 outages.cgi.................................................................... 25
3.9 avail.cgi........................................................................ 25
3.10 config.cgi.................................................................... 25
3.11 history.cgi................................................................... 26
3.12 notifications.cgi.......................................................... 27
3.13 histogram.cgi.............................................................. 27
3.14 showlog.cgi................................................................. 28
3.15 summary.cgi................................................................ 28
3.16 trends.cgi.....................................................................28
4 Aplicaes Especficas do Nagios................................................ 30
4.1 Verificaes de hosts.................................................... 30
4.2 Verificaes de servios............................................... 31

4.3 Tratadores de eventos................................................... 33


4.4 Softwares de apoio NRPE e NSCA.............................. 33
4.5 Monitoramentos........................................................... 34
4.6 Notificaes e filtros.................................................... 35
4.7 Suporte para bancos de dados...................................... 38
5 Configurao e Instalao do Nagios.......................................... 39
5.1 Pr-requisitos para instalao...................................... 43
5.2 Modelo para instalao do Nagios com compilao... 44
5.3 Instalao de plugins do Nagios.................................. 45
5.4 Configurao ps-instalao do Nagios ...................... 46
5.5 Instalando o servidor web Apache............................... 47
5.6 Configuraes avanadas do Nagios........................... 49
5.7 Verificao do processo de instalao......................... 55
5.8 Utilizando o Nagios pela primeira vez......................... 55
5.9 Instalao do plugin NRPE ......................................... 56
6 Concluso.......................................................................................57
Referncias Bibliogrficas.............................................................. 60
Glossrio.......................................................................................... 61

LISTA DE FIGURAS

1. Arquitetura do Nagios.............................................................. 08
2. Principais Pases Usurios do Nagios...................................... 13
3. Principais reas de Atuao das Empresas Usurias do Nagios. 13
4. Tela Padro de Detalhamentos de Servios ................................ 15
5. Interface WAP.............................................................................. 17
6. Tela Padro para Resumo do Estado .......................................... 20
7. Tela Padro para Visualizao de Rede 2D................................. 21
8. Tela Padro de Viso Geral 3D...... ............................................. 22
9. Tela Padro de Viso Geral Ttica............................................... 24
10. Tela Padro de Viso de Configurao...................................... 26
11. Tela Padro para Grupos de Contato e Notificaes.................. 27
12. Tela Padro para Trends.............................................................. 29
13. Tela Padro de Status de Host.................................................... 36

1 INTRODUO

Originalmente escrito sob o nome Netsaint, o Nagios1 foi criado e ainda


mantido por Ethan Galstad e sua equipe de mais de 150 desenvolvedores
espalhados por todo o mundo, dedicados a desenvolver plugins, corrigir bugs,
desenvolver uma interface web, produzir e traduzir a vasta documentao, entre
outras atividades. Este software de monitoramento de redes distribudo
livremente, atravs da lei de copyleft GPL. A habilidade em administrar
ambientes com infra-estrutura de WAN, LAN e MAN, e a interface grfica GUI
utilizada lhe garantem desempenho comparvel a sistemas comerciais existentes,
como WhatsUp e BigBrother, assim como o Angel Network Monitor, o PIKT, o
Autostatus e outros2.
Apesar de ser projetado para redes de grande porte, seu desempenho em
pequenos ambientes excelente. Isso se comprova seja alertando para a queda de
servios ou hosts vigiados nos arquivos de configurao, seja monitorando
equipamentos com suporte a protocolos SNMP, este o principal agente de troca
de informaes entre o Nagios e seus hosts.
A eficcia do Nagios no monitoramento de uma rede depende de sua
expanso atravs de plugins, complementos escritos em CGI Common
Gateway Interface ou em qualquer outra linguagem interpretvel, podendo ser
desenvolvidos por diferentes programadores. Como complemento ao Nagios, o
stio www.nagios.org disponibiliza uma srie de plugins oficiais. Apesar de ter
sido desenvolvido originariamente para executar em qualquer plataforma Linux,
este software trabalha tambm em variantes do UNIX, como FreeBSD,
OpenBSD e NetBSD.
1
2

Em www.nagios.org.
Respectivamente, em www.ipswitch.com, www.bb4.org, www.paganini.net,
www.pikt.org e www.angio.net.

Ao localizar um problema num host monitorado, atravs de plugins


externos vigiados pelo daemon, o Nagios pode notificar ao administrador ou aos
seus contatos determinados atravs de e-mails, mensagens instantneas via
celular ou pager, SMS ou outras alternativas que forem desenvolvidas. Este
sistema de gesto pode tambm informar status, histrico de logs, e permitir
que se definam previamente os usurios que tero acesso visual ao trabalho
executado, via web. Alm destes recursos e ferramentas, o Nagios disponibiliza
tambm:

Monitoramento de servios de rede, como HTTP, POP3, NNTP,


SMTP, SSH, Telnet, etc;

Monitoramento dos recursos dos servidores (espao em disco,


utilizao de memria, carga de processamento, etc.);

Notificao de falhas, atravs de vrios sistemas de


comunicao, em tempo real;

Interface web, que permite acompanhar o monitoramento e


identificar mais facilmente os problemas da rede;

Uso de tratadores de eventos para corrigir automaticamente um


problema (por exemplo, reiniciar um servidor web que parou de
responder);

Facilidade em desenvolver plugins especficos, mesmo para


verificadores de servios em paralelo;

Definio de hierarquia entre hosts de redes e de eventos a


serem executados para soluo pr-ativa de problemas;

Rotatividade automtica de logs.

Constitudo por um mdulo central que possibilita a adio de novas


funcionalidades atravs de plugins (escritos em C, Perl ou Shell) para efetuarem
a monitorao. O software usado para acompanhamento em servidores,
conferncia de servios e desempenho. Atravs da interface de gerncia do

Nagios, pode-se acompanhar algumas opes como o estado do link, a


quantidade de perda de pacotes, a latncia, o ndice de disponibilidade do
backbone, dentre outros.
O presente trabalho ir fazer uma apresentao do software livre
Nagios, aplicativo administrador de ativos e servios de redes, bem com a
anlise de suas ferramentas e processos de configurao, com o objetivo de
auxiliar na utilizao de seus recursos. No Captulo 2, ser apresentada uma
viso resumida da arquitetura do Nagios e as principais habilidades deste
aplicativo: a utilizao simplificada dos plugins, os diversos processos de
monitoramento, a hierarquia interna da rede e as possveis notificaes de
ocorrncias, entre outros. No Captulo 3 sero apresentados alguns dos plugins
do Nagios e seu funcionamento, e no Captulo 4 sero relatadas algumas
aplicaes especficas, como servios, softwares de apoio, filtros e suportes para
a base de dados. Por fim, no Captulo 5 sero descritos os procedimentos de
instalao e configurao deste aplicativo e no Captulo 6 uma concluso do
trabalho.

2 APRESENTAO DO NAGIOS

Figura 1 Arquitetura do Nagios.


(http://www.interlab.ait.ac.th)

O Nagios foi construdo em uma arquitetura3 servidor/agentes e,


usualmente em uma rede, executa em um servidor especfico com seus plugins
distribudos nos servidores remotos que precisam ser monitorados, conforme
Figura 1. Estes plugins enviam informaes para o servidor onde se encontra o
Nagios que ento exibe-os em um GUI (Graphical User Interface). Sua
composio consiste de 3 partes:

Um scheduler que parte do servidor Nagios. Em intervalos regulares, ele


verifica os plugins e de acordo com seus resultados executa aes;

Um GUI. A interface do Nagios (com a configurao, os alertas, etc). Ele


exibido em pginas web geradas pelo CGI que podem ser botes de estado

3 Em http://www.interlab.ait.ac.th

(verde para normal, amarelo para situao de alerta e vermelho para erro),
sons, grficos MRTG, etc;

Os plugins. So configurados pelo usurio e capazes de conferir um servio


e retornar um resultado para o Nagios.
Um estado soft alcanado quando um plugin retorna um alerta ou um

erro. Ento no GUI, um boto verde torna-se vermelho e um som emitido.


Quando este estado soft alcanado muitas vezes, o alerta torna-se hard, e o
servidor Nagios envia as notificaes pertinentes.
O objetivo da ferramenta o de informar aos administradores
rapidamente sobre condies questionveis (warning) ou crticas (critical). O
que considerado "questionvel" ou "crtico" definido pelo administrador na
configurao. Diferente das ferramentas de rede que mostram o tempo
decorrido graficamente ou que registrem e meam trfego, o Nagios se utiliza
de cores, como em um semforo.
O Nagios diferencia entre verificaes de servidores e servios. A
verificao de um servidor testa se um computador est alcanvel, via de regra
apenas um ping utilizado. Esta feita de forma irregular e apenas quando
necessrio. Seletivamente testa servios de rede individuais tais como HTTP,
SMTP, DNS, etc, mas tambm processos executando, carga de CPU ou arquivos
de log. O teste mais simples para servios de rede consiste em ver se a porta de
destino est escutando, e se o servio est ativo.
Um aspecto especialmente interessante do Nagios o fato de poder
considerar dependncias na topologia de rede. Se o sistema de destino s pode
ser alcanado por um roteador especfico que acabou de cair, ento o Nagios
reporta que o sistema est inatingvel, e no ir mais bombarde-lo com novas
verificaes.

A ferramenta permite ao administrador poder detectar rapidamente a


causa real do problema e corrigir a situao. Uma vantagem do Nagios reside
em sua estrutura modular: o seu ncleo no contm um nico teste. Ao
contrrio, ele usa programas externos, conhecidos como plugins,

para

verificaes de servios e servidores. O pacote bsico j contm uma


quantidade padro de plugins para as aplicaes mais conhecidas. Um plugin
um programa simples - normalmente apenas um shell script (Bash, Perl, etc) que fornece uma das quatro possveis condies: ok, warning, critical,
unknown. Isto significa que, a princpio, ele pode testar quase tudo que possa
ser medido ou contado eletronicamente: a temperatura e umidade na sala do
servidor ou a presena de pessoas em determinada hora e lugar. No existem
limites, considerando que se possa encontrar um meio de prover dados ou
eventos como informao para ser avaliada por computador.
O Nagios possui um sofisticado sistema de notificao. No lado do
emissor (ou seja, com a verificao de servidor ou servio) pode-se configurar
quando cada grupo de pessoas - os conhecidos 'grupos de contato' - so
informados sobre quais condies ou eventos (falhas, recuperao, advertncias,
etc). No lado do receptor pode-se tambm definir em mltiplos nveis o que
deve ser feito com uma mensagem correspondente - por exemplo quando o
sistema deve pass-la adiante, dependendo da hora do dia, ou descartar a
mensagem.
Com sua interface web, ele prov ao administrador uma grande
variedade de informaes, claramente organizadas de acordo com os assuntos
envolvidos. Fornece uma pgina de informao individualmente estruturada
para praticamente todo propsito caso este necessite de um resumo de toda
situao, uma visualizao de servios problemticos e servidores que
provoquem indisponibilidade da rede, ou a situao de todos os grupos de
servidores ou servios. Informao j obtida pode ser salva como comentrio,

10

assim como paradas programadas: o Nagios ainda previne que falsos alarmes
sejam emitidos nesses perodos.
O software livre Nagios aplicvel aos mais diferentes segmentos
comerciais. Diversas empresas o utilizam no s para monitoramento de
conectividade de usurios, mas tambm para controle de pontos de acesso de
antenas wireless em provedores de internet, em servidores e estaes de
trabalho, monitoramento de clientes distncia e previso de possveis falhas
nos sistemas. Enfim, cada empresa pode utilizar o Nagios de acordo com suas
necessidades.
A checagem de servios pode ser: indireta - usa um agente remoto para
colher informaes; passiva os resultados so enviados ao Nagios atravs do
uso de arquivo de comando externo; e paralela todas as checagens entram em
uma fila de evento. Atravs do NSCA (Nagios Service Check Acceptor) um
computador remoto pode escrever o resultado da checagem passiva no arquivo
de comando externo do servidor Nagios.
O Nagios tambm pode fazer uso de programas externos para
notificaes livremente configurveis, para que se possa integrar qualquer
sistema que se deseje: e-mail, SMS, servidor de recados que o administrador
chama pelo telefone e recebe uma mensagem de voz referente ao erro. O
contrrio tambm possvel onde, atravs de uma interface separada, programas
independentes podem enviar informao de estado e comandos para o Nagios.
A interface web faz largo uso dessa possibilidade pois permite ao administrador
o envio de comandos interativos.
Permite monitorao distribuda. Isto significa vrias instalaes
descentralizadas, enviando os resultados de seus testes para uma instncia
central, que ento ajuda a manter uma viso geral da situao a partir de um
ponto nico. Reduz a carga no servidor de monitoramento com envio de

11

resultados para o servidor central e uso de checagem passiva . Monitoramento


redundante tambm possvel em um ambiente onde teriam dois ou mais
Nagios monitorando os mesmos recursos, sendo que um envia notificaes e o
outro assume esta tarefa no caso de falha do primeiro. Ainda possvel
monitorar cluster de mquinas ou servios.
Pela reviso de eventos passados, a interface web pode revelar quais
problemas ocorreram em um intervalo de tempo selecionado, quem foi
informado, qual situao estava prejudicando a disponibilidade de um servidor
e/ou servios durante um perodo de tempo particular. A opo chamada de
state stalking registra, em arquivo de log, alteraes ocorridas na sada do
plugin de checagem, mesmo que o estado do servio no se altere.
Pode-se citar ainda: dados de performance - dados detalhados sobre a
monitorao de um determinado servio ou mquina; paradas agendadas;
monitoramento adaptativo - mudar alguns parmetros de monitoramento sem
que seja necessrio reiniciar o Nagios; herana de definies de objetos reduzir o tempo de configurao do sistema e facilitar suas alteraes; o estado
flapping - quando um servio muda freqentemente de estado, evita avalanches
de notificaes e alertas; escalamento de notificaes - permite criar hierarquia
de notificaes, todos os contatos inferiores recebem cpias das notificaes
enviadas aos superiores; tratadores de eventos - comandos opcionais executados
quando h mudana no estado do servio; freshness - certifica que resultados de
checagens passivas esto sendo recebidos regularmente; dependncias notificaes e execues de checagens podem depender de algo para serem
realizadas.

2.1 O Nagios no mundo


Conforme dados de 06/12/2004, apresentados em seu stio oficial, o
Nagios utilizado por 1.112 empresas em todo o mundo (usurios registrados

12

apenas), num total de mais de 163 mil redes monitoradas. No Brasil existem 53
usurios, conforme apresentado na Figura 2.

Figura 2 Principais Pases Usurios do Nagios.


(http://www.nagios.org)

Tambm possvel identificar uma maior utilizao do Nagios por


empresas provedoras de acesso internet, com 18,0% dos usurios registrados,
conforme a Figura 3.

Figura 3 Principais reas de Atuao das Empresas Usurias do Nagios.


(http://www.nagios.org)

13

Confirmando a maturidade deste sistema, distribuies importantes do


Linux como AltLinux, Debian, Gentoo, Mandrake (Mandriva), Sentinix e
SkolLinux j incorporam em seu pacote o Nagios como aplicativo principal
para a configurao de servidor de monitoramento. No Brasil, alguns dos
usurios registrados so AT&T Latin America, Infolink Teleinformtica Ltda,
Banco Mercantil do Brasil Interneting, Camargo Corra S/A, ITI e Dataprev,
PUC/PR, SEFAZ-MT (Secretaria da Fazenda do Estado de Mato Grosso) e
Telemig Celular.
A preferncia pela gesto com o Nagios vem aumentando a cada dia, e
nele destacam-se as ferramentas de monitoramento de redes e servios,
organizao de plugins, monitoramento dos recursos de clientes, monitoramento
de fatores ambientais, notificao de resultados, definio de hierarquia de
redes, entre outras. A seguir, sero descritas cada uma destas ferramentas.

2.2 Monitoramento de redes e servios


O Nagios monitora, desde que definido pelo administrador da rede,
servios como HTTP, SMTP, POP3 e NNTP. Esses servios, em caso de
imprevistos, precisam permanecer o menor tempo possvel fora do ar, a fim de
evitar o comprometimento de atividades essenciais empresa. Desta forma, o
Nagios permite o monitoramento da conectividade de maneira a perceber ou
no a existncia de um host ou servio na rede.
Na Figura 4 est representado um modelo de tela do Nagios com
servios de rede a serem monitorados.

14

Figura 4 Tela Padro de Detalhamentos de Servios


(http://freshmeat.net)

2.3 Organizao de plugins de forma simplificada


Os servios de checagem no Nagios so exercidos por plugins no
formato CGI, e podem ser desenvolvidos pelo prprio usurio. Estes CGIs so
armazenados em uma nica pasta e carregados pelo browser, quando solicitado.

2.4 Monitoramento dos recursos de clientes


Os computadores clientes podem ter seus hardwares monitorados
plenamente, com o intuito de obter estatsticas em tempo real da utilizao de
hosts especficos e conseqentemente balancear a carga entre servidor (ou
servidores) e estaes de trabalho. Dentre os recursos monitorados, pode-se

15

destacar: processos em execuo, uso de disco rgido, carga de trabalho do


processador e uso de memria RAM.

2.5 Monitoramento de fatores ambientais


O controle de temperatura ambiente tambm pode ser efetuado atravs
do Nagios, mediante a aquisio do Esensor, aparelho disponvel no stio oficial
do software, onde tambm oferecida uma interface web interna que possibilita
a alterao dos valores mnimos e mximos pr-estabelecidos. Este
equipamento faz a leitura e repassa as informaes ao aplicativo, para arquivo
em log, e pode-se obter o resultado do status atravs de consultas diretas ao
host responsvel pelo monitoramento.
Alguns modelos do Esensor so diretamente acoplados ao hub ou ao
switch e possuem IP prprio, o que permite que os dados sejam transmitidos
pela rede interna de dados, e possibilitam o diagnstico da temperatura
ambiente, da iluminao e da umidade relativa do ar, por exemplo, no local
onde se concentram os servidores de uma empresa. Como nos demais casos, ao
localizar uma anomalia, o Nagios ir informar ao administrador atravs dos
meios de comunicao determinados.

2.6 Notificao de resultados


O Nagios d ao administrador a opo de program-lo para, em caso de
irregularidade (falhas) e dependendo do tipo desta ocorrncia, informar a um ou
mais grupos de contato cadastrados, seja atravs de e-mail, SMS, pager ou
outros mtodos definidos. Alm disso, o Nagios pode ser programado para
reagir e solucionar alguns dos eventuais problemas, obviamente informando
novamente ao administrador da soluo o status atual da rede.

16

Na Figura 5 est representado um dos meios que o Nagios se utiliza


para envio de notificaes.

Figura 5 Interface WAP


(http://nagios.sourceforge.net)

2.7 Definio de hierarquia de redes


possvel, atravs de um sistema de hierarquizao, definir hosts pais e
filhos dentro de uma rede e diferenciar clientes desativados de clientes
inalcanveis. A partir do servidor de monitoramento, pode-se construir uma
rvore hierrquica onde o servidor fica no topo, enquanto que os hosts seguintes
so posicionados ao longo das ramificaes.

2.8 Outras ferramentas


O Nagios possui e permite a utilizao de inmeras outras ferramentas;
porm, para algumas delas se faz necessrio um trabalho prvio de autorizao
em operadoras de telefonia celular, servios de pager, etc. Ainda possvel
gerar grficos 2D e 3D dos hosts monitorados e distingu-los quanto ao sistema
operacional usado e tipo de host (roteador, proxy, servidor, estao de trabalho,
etc.).

17

3 INTERFACE WEB DO NAGIOS


A interface web de administrao do Nagios composta por um
conjunto de scripts CGI. Provida dos direitos de acesso adequados, esta
interface permite muito mais que uma simples observao das informaes
fornecidas pelo Nagios. Pode-se executar uma srie de comandos e controles de
forma ativa: desde modificar um comando nico, alternar o estado de
mensagem entre ligado ou desligado, at reiniciar o servidor. Ser descrito aqui
o conceito bsico em que os programas CGI foram construdos, de forma a dar
uma noo do grande alcance de opes disponveis que eles possuem. A seguir
uma viso geral de todos os programas CGI includos no pacote.
status.cgi exibe as em vrias formas de estado, sendo o programa CGI mais
importante.
statusmap.cgi representao da topologia dos hosts monitorados.
statuswrl.cgi representao da topologia em formato 3D; requer um browser
com capacidade VRML (Virtual Reality Markup Language) e permite
navegao interativa em um espao virtual.
statuswml.cgi pgina de estado simples para dispositivos WAP (telefonia
celular)
extinfo.cgi informao adicional em um host ou servio, com a possibilidade
de executar comandos.
cmd.cgi execuo de comandos.
tac.cgi viso geral de todos os servios e hosts monitorados, a Viso Geral
Ttica.
outages.cgi ns de rede que causam falhas de rede parciais.
avail.cgi relatrio de disponibilidade.
config.cgi exibe as definies de objetos do Nagios.
histogram.cgi histograma do nmero de eventos ocorridos.
history.cgi exibe todos os eventos que j ocorreram.
notifications.cgi viso geral de todas as notificaes enviadas.

18

showlog.cgi exibe todas as entradas do arquivo de logs.


summary.cgi relatrio de eventos, que podem ser agrupados por host, servio,
categoria de erro e perodo de tempo.
trends.cgi coordenadas de tempo gravando os estados que ocorreram.
Todos estes CGIs verificam se a pessoa que est executando as aes
solicitadas possui permisso para isto. Normalmente um usurio pode somente
acessar os hosts e servios para os quais ele estiver definido como um contato,
mas h a possibilidade de definir usurios especficos com direitos
compreensivos, assim eles esto basicamente habilitados a exibir todas as
opes disponveis.

3.1 status.cgi
Exibio das variaes de estado. Este CGI permite a visualizao do
estado de todos os clientes e servios monitorados pela rede. O que ser exibido
determinado por trs grupos de parmetros:

O primeiro define se a pgina web gerada exibe host, grupo de hosts ou


grupo de servios. Adicionando all s opes citadas indica que se deseja
todas as ocorrncias da opo solicitada e no um especfico.

O segundo prov cinco possibilidades do estilo de sada: overview


representa os hosts em uma tabela, mas resume os servios de acordo com
os estados; summary comprime a sada do overview, somente exibe um
grupo de host para cada linha; grid prov um resumo extremamente
atrativo em que pode-se ver o estado de cada servio de forma individual
por meio de cores com as quais so destacados; detail mostra cada
servio, detalhadamente, em uma linha separada; hostdetail limitado
somente a informao de host, provendo informao detalhada com uma
linha para cada um.

19

O terceiro e ltimo grupo de parmetros permite determinar, atravs de


selectors (seletores) quais estados e propriedades sero mostrados, tais
como: todos os servios em um estado de erro para os quais nenhum
acknowledgements ainda tenha sido indicado por um administrador.
Na Figura 6 est representado uma das telas de estado.

Figura 6 Tela Padro para Resumo do Estado


(http://nagios.sourceforge.net)

3.2 statusmap.cgi
Mapa da topologia da rede. Este CGI prov uma viso de dependncia
entre hosts monitorados. Iniciando a partir de um servidor central Nagios no
meio da tela, linhas conectam todos os hosts que o servidor alcana diretamente
e que definies de host no precisam do parmetro parent (pai) especificado.

20

Os grficos tambm revelam os hosts para os quais o Nagios tem somente


acesso indireto atravs de outros hosts.
A maneira como o Nagios arranja os hosts no grfico definido no
arquivo de configurao cgi.cfg ou atravs da interface web. As coordenadas e
cones so definidos no arquivo hostextinfo.cfg. A Figura 7 representa a
utilizao do CGI de mapa de estado.

Figura 7 Tela Padro para Visualizao de Rede 2D


(http://eng.registro.br)

3.3 statuswrl.cgi
Este CGI permite ao Nagios utilizar-se de uma representao 3D para
mostrar a topologia da rede. Nesta opo pode-se aplicar zoom em hosts, ter
uma viso geral, modificar o posicionamento da figura exibida, etc. Um

21

browser com capacidade VRML (Virtual Reality Markup Language)


necessrio para esta exibio. Na Figura 8 temos um modelo do grfico gerado
por este CGI.

Figura 8 Tela Padro de Viso 3D


(http://nagios.sourceforge.net)

3.4 statuswml.cgi
Consultas de estado com um telefone celular. De maneira a tornar a
informao fornecida pelo Nagios acessvel atravs de WAP (Wireless Access
Protocol) capacitar dispositivos sem uma completa funcionalidade de
browser, este CGI gera uma pgina web em um formato WML (Wireless
Markup Language), que pode ser exibida em um telefone celular caso o
servidor web esteja acessvel pela internet. Alm das consultas de estado para
hosts e servios, ele tambm permite que o programa CGI desligue testes e
notificaes, e confirme problemas existentes com acknowledgements.

22

A disponibilizao deste acesso pela internet deve ser estudada com


cuidado no que tange segurana. Nagios disponibiliza muitos dados sensveis
que podem ser mal utilizados por hackers.

3.5 extinfo.cgi
Informao adicional e centro de controle. Se executado com o
parmetro host ou service, este CGI no somente prov informao detalhada
sobre um host especfico ou servio, como tambm serve como um centro de
controle para hosts e servios (parmetro hostgroup) e para grupos de servio
(servicegroup). Dependendo da classe do objeto para o qual ele chamado
pode-se executar vrios comandos a partir dele.
De acordo com o valor especificado como parmetro, este CGI pode
mostrar dados tais como: identificao de processo, horrio de incio, comandos
e informaes em host e servio, comentrios disponveis em uma nica pgina,
desempenho do Nagios, verificaes ativas e passivas, centro de comandos para
o hostgroup e servicegroup, perodos de manuteno planejados, viso geral de
todos

os

testes

planejados

classificados

pelo

prximo

horrio

de

implementao, hora da ltima verificao, entre outros.

3.6 cmd.cgi
Interface para comandos externos. Muito verstil, com 100 funes,
cobre quase todas as possibilidades que a interface prov para comandos
externos. Para se obter a descrio de um nico servio , deve-se especificar o
host e o nome do servio. Caso o CGI seja executado manualmente , a forma
web mostra consultas desses valores, e se ele foi iniciado por outro programa
CGI, os dados requeridos so passados atravs de parmetros CGI. O arquivo
de cdigo fonte include/common.h contm uma lista completa de todos os

23

possveis valores, incluindo aqueles que foram previstos mas ainda no foram
implementados.

3.7 tac.cgi
As coisas mais importantes para uma visualizao rpida. Como uma
Viso Geral Ttica, este CGI prov informao sobre a sade da rede em
uma nica pgina web, exibida em um sumrio, como representado na Figura 9.
Na pgina so mostrados, em ordem de prioridade, primeiro a falha de toda a
rede alcanavel, seguido pelo estado de hosts e servios, e lista se caractersticas
de monitorao individuais, tais como notificaes e manipuladores de eventos,
esto ativos. Tudo est concentrado em exibir problemas. Para todos os
problemas exibidos que venham a ocorrer pode-se ter uma nica viso geral
especfica mostrando hosts e servios em questo.

Figura 9 Tela Padro de Viso Geral Ttica


(http://www.onlamp.com)

24

3.8 outages.cgi
Analisando redes parcialmente corrompidas. O CGI de informaes
estendidas somente mostra a falha parcial da rede; ao contrrio da viso geral de
estado, este CGI especifica quantos servios e hosts esto sendo afetados em
cada caso. Com os cones na coluna que representa Aes pode-se chamar
outros programas CGI que seletivamente filtram informaes dos hosts ali
representados. O termo outage deve ser entendido aqui como um apago, uma
falha geral da rede, causando uma situao em que nenhum computador-cliente
responda s solicitaes enviadas pelos plugins do Nagios.
3.9 avail.cgi
Estatsticas de disponibilidade. Caso esteja monitorando sistemas, ento
pode-se ter interesse em sua disponibilidade. Este CGI primeiro pergunta se h
interesse em hosts, servios, hostgroups e servicegroups. Depois que o perodo
de tempo foi selecionado, ser apresentada uma viso geral. Os hosts
envolvidos so apresentados separadamente dos servios. A disponibilidade
apresentada duas vezes em cada caso: primeiro com um valor absoluto para o
perodo avaliado, e ento, entre parnteses, com respeito ao tempo durante o
qual os dados realmente estavam disponveis.
3.10 config.cgi
Consultando as definies dos objetos. Este CGI mostra uma viso
tabular da definio de todos os objetos para um tipo que pode ser especificado
o tipo do objeto envolvido pode ser definido no campo de seleo disponvel
na tela. Este programa no prov nenhum meio para alterar qualquer uma das
definies existentes na configurao. Adicionalmente, somente os usurios
autorizados tero acesso a esta visualizao. Na Figura 10 est representado um
modelo de tela onde se visualiza a configurao

25

Figura 10 Tela Padro de Viso de Configurao


(http://nagios.sourceforge.net)

3.11 history.cgi
Filtrando entradas no log depois de estados especficos. Este script CGI
permite que os estados de um determinado tipo (soft ou hard) sejam
identificados seletivamente do arquivo de log usando o campo de seleo, para
ento extrair os eventos especficos. As entradas a serem mostradas podem ser
restritas atravs de parmetros de hosts individuais, servios, ou grupo de hosts
ou servio quando o programa CGI chamado. O perodo que este programa
mostra depende do intervalo de arquivamento. O script sempre se refere ao
contedo de um arquivo de archive.

26

3.12 notifications.cgi
Quem disse, o qu, e quando? Outra forma de filtro do arquivo de log
oferecida por este CGI. Ele mostra todas as mensagens enviadas. Aqui a
exibio pode ser restrita para um grupo de mensagem especfica, atravs do
campo de seleo: para todas as notificaes envolvendo hosts, para todas as
que so sobre servios em um estado crtico, e assim por diante. Mostra as
notificaes de servios e clientes enviadas a vrios contatos, conforme
pesquisa filtrada pelo administrador, e ilustrado na Figura 11.

Figura 11 Tela Padro para Grupos de Contato e Notificaes


(http://eng.registro.br)

3.13 histogram.cgi
Quais eventos ocorrem e com qual frequncia. Se o estado de um host
ou servio muda, chamado de um evento. Este programa CGI mostra a
frequncia

destas mudanas em vises diferentes. De acordo com a

27

configurao efetuada este programa pode mostrar em que dia da semana


ocorreram a maioria dos eventos, ajustar o perodo do relatrio, contabilizar
entre resultados soft e hard, assumir que o estado depois da inicializao do
sistema idntico ao que existia antes, entre outras possibilidades.

3.14 showlog.cgi
Mostrando todas as entradas do arquivo de log. Este programa CGI
mostra o arquivo de log como ele , com um pouco de cones coloridos
adicionados para ajudar a encontrar o que se deseja: um boto vermelho marca
estados de servio ou host com problemas, um boto amarelo para estado de
alerta e um verde para situaes de normalidade. Outros botes referem-se a
entradas de informao ou reinicializao do Nagios. A nica opo disponvel
a ordem cronolgica. Normalmente mostra as entradas mais recentes primeiro.
O perodo representado tambm depende do mtodo de arquivamento.

3.15 summary.cgi
Avaliando o que se quer obter. Se as opes de tela e seleo
introduzidas no forem suficientes para o que se deseja verificar, pode-se criar
um relatrio personalizado. Prov um resumo rpido em que somente um tipo
de relatrio fixo pode ser selecionado. Pode-se citar alguns relatrios como lista
dos ltimos eventos de um tipo especfico, total de eventos ocorridos num
determinado perodo, hosts ou servios que geraram o maior nmero de
eventos, entre outros.

3.16 trends.cgi
Acompanhando estados graficamente ao longo do tempo. Uma rpida
viso geral de qual estado ocorreu, e quando, para um host ou servio particular
provido pela sada deste CGI. Depois de selecionar um servio ou host

28

especfico, pode-se definir um perodo. Os estados so coloridos, o que facilita a


navegao neste tipo de exibio. A funo zoom do programa CGI um
detalhe interessante: aps selecionar a rea colorida, pode-se expandir ou
reduzir o perodo de tempo mostrado. Na Figura 12 est uma representao
deste CGI.

Figura 12 Tela Padro para Trends


(http://nagios.sourceforge.net)

29

4 APLICAES ESPECFICAS DO NAGIOS


4.1 Verificaes de hosts
O Nagios executa as verificaes de hosts apenas quando necessrio.
Embora haja um parmetro que prov um meio de forar uma verificao de
host, no existe um motivo real para faz-lo. Entretanto, existe sim um motivo
para no faz-lo: uma verificao contnua provoca uma considervel influncia
no desempenho do Nagios.
Sempre que o Nagios se deparar com um servio indisponvel,
efetuada uma verificao do host ao qual se destina; se esta verificao tambm
resultar em estado de indisponibilidade, o host ser classificado como
inoperante soft, e uma rotina ininterrupta de verificaes comear, at que o
host responda como operacional. Caso isso no ocorra, e aps executar um
nmero mximo de verificaes, o Nagios ir classificar este host como
inoperante hard. O estado soft encontrado tanto nos processos de
verificao quanto de recuperao. O estado hard aplicado a um host quando
so recebidas, de forma consecutiva, vrias mensagens de inoperncia. A
ocorrncia deste estado durante um processo de recuperao se d quando o
host estiver em condio de erro.
De qualquer maneira, caso seja preciso verificar regularmente se o host
est alcanvel prefervel utilizar uma verificao de servio baseada em ping.
Ao mesmo tempo, pode-se obter informaes adicionais tais como tempo de
resposta ou possvel perda de pacotes, as quais do pistas indiretas sobre a carga
da rede ou possveis problemas na rede. Uma verificao de host, por outro
lado, tambm emite um OK mesmo que haja uma alta taxa de perda de pacotes
e um nvel de desempenho catastrfico. O que est envolvido aqui, como o
prprio nome implica, apenas a acessabilidade como princpio e no a
qualidade da conexo.

30

4.2 Verificaes de servios


Para testar servios o Nagios faz uso de programas externos chamados
plugins. No caso mais simples isto envolve testar um servio de internet. Aqui o
servio pode ser chamado diretamente na rede, pois suficiente chamar um
programa local no servidor Nagios que teste o servio especfico no servidor
remoto.
Nem tudo o que se queira testar pode ser alcanado to facilmente na
rede. Entretanto, no existe um protocolo de rede para verificao da rea
disponvel em disco, por exemplo. Neste caso necessrio iniciar um plugin
num host remoto atravs de um shell remoto (mas primeiro ele precisa ser
instalado no computador remoto), ou ento usa-se de outros mtodos tal como
o protocolo SNMP (Simple Network Management Protocol) para verificar a
capacidade do disco.
Os quatro mtodos de verificao de servio de forma ativa, onde o
Nagios toma a iniciativa e dispara o teste, so: executar diretamente um plugin
no seu prprio servidor; executar um plugin que por sua vez vai chamar um
outro no host remoto; executar um plugin tambm diretamente na mquina
cliente, mas utilizando o servio NRPE - Nagios Remote Plugin Executer criado especificamente para este propsito; e, por ltimo, utilizar uma consulta
via SNMP - para isto o cliente precisa de um agente SNMP disponvel. Existem
vrios plugins disponveis para consulta de dados atravs de protocolo.
Outro tipo de verificao feita de forma passiva: o Nagios apenas
aguarda pela informao a ser enviada pelo cliente atravs do programa NSCA (
Nagios Service Check Acceptor). No prprio servidor Nagios o NSCA executa
como um daemon que recebe os resultados enviados e os repassa interface
para comandos externos.

31

Existem outras maneiras de efetuar verificaes alm dessas.


Usualmente, um servio separado instalado no cliente, que ento consultado
pelo servidor Nagios atravs de um plugin especializado. Um tpico exemplo
o NSClient/NC_Net, que pode ser utilizado para monitorar servidores Windows.
O Nagios pode chamar uma grande variedade de plugins, cada um
especfico para um servio particular. Tal programa especializado possui
vantagens sobre um genrico. Um plugin genrico testa apenas se a porta TCP
ou UDP est aberta e se o servio est escutando, mas ele no determina se o
servio correto est na porta e se est ativo. Plugins especializados utilizam
protocolos de rede e testam se o servio na porta em questo se comporta da
maneira esperada.
O pacote com os plugins do Nagios, que so instalados separadamente,
incluem plugins especializados nos servios de rede mais importantes. Caso
algum esteja faltando para um servio especfico, vale a pena dar uma olhada no
stio no Nagios, ou no stio www.nagiosexchange.org. Se no for encontrado
nenhum plugin que se adeque, pode-se usar plugins genricos, que apesar de
simplesmente testarem uma porta, podem tambm enviar dados porta de
destino e avaliar a resposta (mas isto s faz sentido, na maioria dos casos, se um
protocolo baseado em ASCII estiver envolvido).
O processo de definio das verificaes dos servios em hosts busca
equilibrar o processamento interno do Nagios e, conseqentemente, diminuir a
carga sobre os hosts remotos. Para realizar a primeira srie de verificaes, o
Nagios distribui cada uma destas verificaes ao longo do intervalo de tempo
necessrio para conferir todos os servios. O Nagios tenta, ao menos na fase
inicial, manter as verificaes relativamente eqidistantes.
O Nagios possui um sistema interno de controle que permite a
atualizao dos resultados relativos verificao dos servios. Se esta opo

32

for ativada pelo administrador, assim como for definido o intervalo mximo
entre cada verificao, o Nagios ir forar uma verificao de servios ativos
sempre que este intervalo for atingido.

4.3 Tratadores de Eventos


Dois tipos de tratadores de eventos (comandos opcionais, executados
sempre que ocorrer mudana de estado do host ou do servidor) so utilizados
pelo Nagios: os tratadores de eventos locais, executados somente quando h
mudana de estado especfico para o host local; e os tratadores de eventos
globais, executados quando h uma mudana de estado de qualquer host
ou servidor.
Os tratadores de eventos dependem de permisses, e, se o servio ou
host tiver um nvel de acessibilidade mais alto, estes tratamentos no sero
executados. O arquivo de comandos ser previamente verificado, em um
perodo definido pelo administrador durante a configurao, e tambm
imediatamente aps a execuo de um tratador de eventos.
O Nagios permite, tambm, receber comandos externos oriundos de
outros softwares, permitindo assim determinadas aes como a parada de todas
as verificaes ou a adio de novos hosts.

4.4 Softwares de apoio NRPE e NSCA


Um mtodo alternativo de executar plugins instalados em um
computador remoto atravs de um shell seguro representado pelo NRPE. O
NRPE instalado em um host remoto e iniciado pelo daemon inetd, que deve
ser configurado apropriadamente. Se o NRPE recebe uma consulta do servidor
Nagios atravs de determinada porta TCP, ele ir executar uma consulta
semelhante a esta. Como o mtodo usando shell seguro, o plugin que executar

33

o teste deve estar instalado no servidor remoto. Este mtodo requer uma conta
em um shell local, permitindo assim que qualquer comando seja executado, mas
o NRPE fica restrito aos comandos que lhe foram configurados.
O NSCA executa como um daemon no servidor Nagios e aguarda a
chegada de resultados dos testes, por esta caracterstica conhecido como
passivo pois o prprio Nagios no toma iniciativa. O NSCA se utiliza da
interface para comandos externos usada pelos scripts CGI, entre outros, para
enviar comandos para o Nagios. Esta interface consiste de um buffer para o qual
os processos gravam e do qual eles lem os dados. importante considerar os
aspectos de segurana para a implementao do NSCA.

4.5 Monitoramentos
O monitoramento distribudo o resultado da ao de vrios servidores
Nagios espalhados pela rede, que fazem suas checagens individuais e repassam
seus resultados a um servidor central. Os servidores Nagios distribudos, talvez
em diferentes filiais de uma companhia, trabalham como instncias autnomas,
exceto por eles enviarem os resultados para o escritrio principal. Isto no
verifica as redes descentralizadas de forma ativa, mas processa informaes
enviadas das filiais em uma maneira puramente passiva. Este tipo de
monitoramento permite o balanceamento da carga de memria, da CPU, etc. Os
servidores secundrios podem conter apenas o esqueleto do Nagios e o
aplicativo NSCA.
O Nagios efetua uma verificao ativa de um servio em um host
remoto. Assim que a resposta recebida, o resultado enviado de forma
automtica para o cliente NSCA. O cliente NSCA envia o resultado para o
daemon NSCA localizado no servidor central que escreve um comando de
processamento de resultado no arquivo de comandos externos, informando ao
Nagios central as ocorrncias. Este por sua vez faz uma leitura peridica do

34

arquivo de comandos externos e, a seguir, executa o comando de processamento


de resultado, recebendo assim o resultado da verificao.
O monitoramento redundante, diretamente ligado ao monitoramento
distribudo, representa os servidores paralelos, responsveis pela coleta de
dados. No caso do servidor Nagios central apresentar alguma falha e, em
conseqncia disso, se desconectar da rede, um destes servidores paralelos pode
assumir o lugar do Nagios central. H a hiptese, ainda, de um host cliente
deixar de responder a solicitaes de ping de forma eventual, estado conhecido
como flapping. Este caso, de acordo com os criadores do Nagios, um evento
normalmente associado a defeitos de configurao, gerando uma corrente de
notificaes de erro e recuperao.
O Nagios permite o monitoramento de clusters, tanto de computadores ,
oferecendo diversos servios, quanto dos prprios servios, como se estes
fossem um nico computador ou um nico servio.

4.6 Notificaes e filtros


Uma das preocupaes a se ter para um sistema de notificao a
configurao correta de quem dever ser avisado no momento em que falhas
ocorrerem. Dificilmente algum administrador de sistema ou rede teria a
possibilidade de visualizar continuamente a interface web do Nagios e aguardar
a ocorrncia de mudanas de estado. Um sistema prtico deve informar ao
administrador de forma ativa para que ele possa intervir somente quando o
Nagios alcanar um estado de alarme. Outro ponto a ser analisado o excesso
de mensagens, por vezes errneas, que dificulta a identificao de problemas
reais.
As notificaes so um meio de se fornecer informaes, em tempo
real, relativas ao estado de hosts ou servios, como representado na Figura 13.

35

Figura 13 Tela Padro de Status de Host


(http://www.onlamp.com)

O Nagios prov um sistema de notificao sofisticado permitindo com


que o meio ambiente seja finamente ajustado s necessidades de cada
instalao. Esforos para mant-lo pequeno e modular tambm se aplicam ao
sistema de notificao. O envio de mensagens novamente deixado para
programas externos: de um simples e-mail a SMS, so inmeras possibilidades.
Na inteno de fazer com que o Nagios envie mensagens significativas,
o administrador deve ter em mente o momento em que o sistema dever gerar a

36

mensagem, quando ela dever ser enviada, quem ser informado e de qual
modo ser enviada.
As verificaes de host e servio geram a mensagem, esta passa atravs
de filtros que usualmente referem-se a tempo, e, no caso de aprovada,

utilizado um programa externo que a envia ao respectivo contato. Filtros evitam


uma mensagem de ser criada ao invs de filtrar as j geradas mas, para manter
as coisas de forma simples, entretanto, digamos que o Nagios crie uma
mensagem que ser descartada por um filtro correspondente.
Cada mensagem precedida por uma verificao de host e servio, que
determina o estado corrente. A mensagem gerada quando um estado hard
muda para outro estado hard e quando um computador ou servio permanece
em um estado de erro hard, confirmando a existncia de um problema.
Enquanto no for atingido o nmero especificado de repeties de eventos para
o estado soft, o administrador no ser informado a menos que verifique na
interface web ou no arquivo de log. Assim o administrador somente ser
informado quando o problema no tiver sido resolvido. Por outro lado, para se
obter disponibilidade como tal, normalmente tem importncia se um servio no
est disponvel durante minutos no final, motivo pelo qual os estados soft
tambm so considerados na avaliao.
Para um host qualquer ser definido como o causador da falha, primeiro
tem de estar hierarquicamente abaixo ou inacessvel, e pelo menos um de seus
hosts pais estar operacional; segundo, todos os seus hosts filhos tm de estar
abaixo ou inacessveis e no haver nenhum host pai operacional.
Os filtros do programa fazem uma verificao geral do Nagios, no que
concerne s notificaes que precisam ser enviadas, no fazendo distino, ou
seja barra todas as notificaes, ou no barra nenhuma. Os filtros de servio e
de hosts

selecionam notificaes de forma mais completa, podendo reter

37

alguma , segundo alguns critrios. J os filtros de contatos referem-se aos


critrios especficos de cada contato, onde qualquer notificao discordante das
opes includas na definio do contato sero filtradas.

4.7 Suporte para Bancos de Dados


Nagios prov trs plugins para monitoramento de banco de dados:
check_pgsql para o PostgreSQL, check_mysql para o MySQL e check_oracle
para o Oracle. Eles todos tm em comum o fato de que podem ser usados tanto
localmente como atravs da rede. O ltimo tem a vantagem de que o plugin em
questo no precisa estar instalado no servidor de banco de dados. A
desvantagem que ser necessrio um envolvimento maior com a autenticao
porque configurar um acesso local seguro ao banco de dados algo mais
simples.
Para sistemas menos crticos, o acesso rede por plugins pode ser feito
sem a utilizao de senha. Para fazer isto, o usurio nagios configurado com
sua prpria base de dados no sistema de gerenciamento a ser testado e que no
contenha dados importantes. Os plugins citados aqui possuem somente acesso
de leitura no banco de dados. O check_mysql adicionalmente permite uma
verificao de conexo pura, sem acesso de leitura. Um acesso de gravao para
o banco de dados no est disponvel em nenhum dos plugins mencionados.
Para o Oracle h um plugin no stio www.nagiosexchange.org chamado
check_oracle_writeacess.sh que testa a capacidade de gravao no banco de
dados.

38

5 CONFIGURAO E INSTALAO DO NAGIOS


Embora a configurao do Nagios pode se tornar demorada, existe a
opo de somente modificar uma pequena parte dela e conseguir deixar o
sistema ativo e executando. Por sorte, muitos parmetros no Nagios j esto
definidos com valores de padro aceitveis.
Nagios inclui uma documentao extensa prpria, uma vez instalado no
diretrio /usr/local/nagios/share/docs, que pode tambm ser acessado pela
interface web. Esta sempre recomendada como uma fonte til para maiores
informaes.
Os arquivos de referncia da configurao do diretrio /etc/nagios
terminam com -sample e so os que sero modificados em uma atualizao do
produto, ficando assim preservados os arquivos j customizados para produo.
Todos os trabalhos subsequentes devem ser carregados como o usurio
nagios. Na edio de um arquivo como um usurio privilegiado, deve-se
assegurar que os contedos do diretrio /etc/nagios mais tarde pertenam ao
usurio nagios. Com a exceo do arquivo resource.cfg, que poder ter acesso
permitido apenas ao usurio nagios, todos os outros podem ser liberados para
leitura.
A configurao central feita no arquivo nagios.cfg que contm as
referncias aos outros arquivos de configurao.
Aqueles que compilam e instalam o Nagios tm a vantagem de no
precisarem ajustar o nagios.cfg, desde que todos os caminhos estejam
corretamente configurados. E isto seria tudo o que necessitaria ser feito. No
obstante uma pequena modificao seja recomendada, pois ajuda a manter uma

39

apresentao clara e uma configurao consideravelmente simplificada onde


redes maiores esto envolvidas.
Os objetos do Nagios descrevem uma unidade especfica: um host, um
servio, um contato, mas tambm os grupos a que eles pertencem. At mesmo
comandos so definidos como objetos. Esta definio no por acaso: Nagios
tambm capaz de herdar caractersticas.
Host
O objeto host descreve um dos ns de rede que est sendo monitorado.
Nagios espera o endereo IP como um parmetro (ou um nome de domnio
completo) e o comando para identificar se o host est ativo. A definio de host
novamente referenciada na no arquivo que trata do servio.
Hostgroup
Alguns hosts podem ser combinados em um grupo. Esta configurao
simplifica, pois grupos de hosts podem ser especificados ao invs de hosts
nicos quando definir os servios (o servio vai ento existir para cada membro
do grupo). Em adio, Nagios representa os hosts de um grupo de host juntos
em uma tabela na apresentao web, que tambm ajuda para tornar mais clara a
visualizao.
Service
Os servios individuais a serem monitorados so definidos como
objetos de servio. Um servio nunca existe independente de um host. Assim
possvel ter alguns servios com o mesmo nome, contanto que eles pertenam a
hosts diferentes. Na linguagem do Nagios, um servio sempre um par hostservio.

40

Servicegroup
Da mesma forma que em hostgroups, Nagios tambm combina alguns
servios para represent-los na apresentao web como uma unidade com sua
prpria tabela. Grupos de servios no so absolutamente essenciais, mas
ajudam a melhorar a visualizao e tambm so usados nos relatrios.
Contactgroup
Notificao de eventos em hosts e servios so feitas para um grupo de
contato. Uma ligao direta entre host/servio e uma pessoa de contato no
possvel.
Timeperiod
Descreve um perodo de tempo dentro do qual o Nagios deve informar
os grupos de contato. Fora destes intervalos, o sistema no enviar qualquer
mensagem. A cadeia de mensagens pode ser ajustada para vrios perodos de
tempo, dependendo do host/servio e contato/grupos de contato.
Command
Nagios sempre chama programas externos pelos objetos de comando.
Alm dos plugins, programas de mensagens incluem envio de e-mails ou SMS.
Servicedependency
Este tipo de objeto descreve dependncias entre servios. Se, por
exemplo, uma aplicao no funciona sem um banco de dados, um objeto de
dependncia correspondente ir assegurar que o Nagios vai representar uma
falha no banco de dados como um problema primrio ao invs de somente
anunciar o no funcionamento da aplicao.

41

Serviceescalation
Usado para definir um gerenciamento de escalamento prprio: se um
servio no est disponvel depois de um perodo de tempo especfico, Nagios
informa um crculo de pessoas adicional. Este pode ser configurado em
mltiplos nveis, em qualquer modo que se deseje.
Hostdependency
O mesmo que o servicedependency s que para hosts.
Hostescalation
O mesmo que o serviceescalation s que para hosts.
Hostextinfo
Objetos de informao estendida de host so opcionais e definem um
grfico especfico e /ou URL, que o Nagios adicionalmente inclui em seus
grficos de sada. A URL pode se referir pgina web que prov informao
adicional no host.
Serviceextinfo
Informao estendida de servio, o mesmo que hostextinfo s que para
servio.
Quando se inicia o uso do Nagios, recomendado que se restrinja
utilizao de uma configurao mnima, somente com um ou dois objetos por
tipo de objeto, de forma a minimizar fontes potenciais de erro e obter um
sistema executando o mais rpido possvel.
O mtodo mais simples de instalao utilizar os pacotes fornecidos
com a distribuio do sistema operacional existente. Pode-se optar por compilar

42

manualmente, assim tm-se uma influncia nas estruturas de diretrio e em


alguns parmetros. Uma compilao desta forma promove um arquivo de
configurao principal quase completo, no qual inicialmente nada tem que ser
mudado, mas pode envolver uma extensa pesquisa dos pacotes de
desenvolvimento necessrios dependendo do que j estiver instalado no
computador. Aqui no foram utilizadas configuraes para o banco de dados.

5.1 Pr-requisitos para instalao


Com base no que foi escrito pelo autor Anderson Leite (2005) na
secforum4, primeiramente deve-se instalar os aplicativos que o Nagios poder
utilizar, como, por exemplo, o Openssl libssl.0.9.7 (sistema de criptografia
atravs de chaves de segurana) para garantir o trfego de informaes para o
servidor web Apache de forma segura, e a biblioteca grfica libgd-dev
(biblioteca grfica de desenvolvimento), tais pacotes disponibilizam recursos
para que o Nagios seja utilizado de forma grfica. O pacote MySQL mysqlserver-4.5 tambm poder ser instalado para armazenamento de informaes, os
logs podem ser substitudos por um SGBD. Os pacotes utilizados esto
disponveis em www.nagios.org e so: nagios-mysql - biblioteca que permite
comunicao ao SGBD mysql; nagios-common- aplicativo do Nagios; nagiosnrpe-plugin - plugin que permite receber dados do NRPE; nagios-nrpe-server servidor do NRPE;

nagios-plugins - conjunto de plugins utilizados para

monitoramento.
Para a instalao dos pacotes do Nagios, o administrador dever
primeiramente possuir uma source.list (arquivo que contm,

listado, o

endereo de vrios servidores que possuem pacotes para instalao da


distribuio escolhida) atualizada. Aps sua atualizao, o mesmo dever
digitar dois comandos descritos a seguir, para distribuies baseadas em
Debian:
4 Em http://www.secforum.com.br

43

apt-get update: este comando copiar a lista de aplicativos dos hosts,


armazenando em cache local;
apt-get install nagios-common nagios-nrpe-plugin nagiosnrpeserver nagios-plugins: este comando far a baixa e instalao dos
arquivos.
Durante o processo de instalao, o Nagios cria um usurio que ser o
responsvel pelos servios e, por padro, esse usurio conhecido como nagios.

5.2 Modelo para instalao do Nagios com compilao


O pacote atualizado do Nagios e de seus plugins podem ser obtidos no
stio do projeto Nagios, www.nagios.org. O nome do pacote Nagios e do
diretrio a ser criado iro depender da verso escolhida para instalao. Na
sequncia deve-se descompactar o arquivo, criar o diretrio de instalao e
adicionar usurio e grupo para o Nagios:
tar xzvf <nome do pacote do nagios>
mkdir -p /usr/local/nagios
adduser nagios / useradd -g nagios -d /usr/local/nagios -s /bin/false
nagios
groupadd nagios
Em alguns sistemas o comando adduser ir criar o grupo
correspondente; em outros poder ser necessrio a edio do arquivo /etc/group
para adio do usurio manualmente.
Antes de compilar o Nagios, verifique se a biblioteca gd-lib est
instalada no seu Linux, pois caso contrrio no ser possvel ver o statusmap,
que o mapa da rede. No Debian use apt-get install libgd-dev. Caso as
bibliotecas GD j estiverem instaladas mas a compilao no estiver
encontrando-as, acrescente ao comando configure as opes --with-gd-lib e -with-gd-inc para especificar os diretrios onde os arquivos esto localizados.

44

./configure --prefix=/usr/local/nagios with-nagios-user=nagios withnagios-grp=nagios --with-cgiurl=/nagios/cgi-bin withhtmurl=/nagios


( parmetros para compilao ) onde:
--prefix=/usr/local/nagios : Local dos arquivos de configurao.
--with-nagios-user=nagios : Usurio padro
--with-nagios-grp=nagios : Grupo padro
--with-cgiurl=/nagios/cgi-bin : Diretrio onde esto os arquivos CGI.
--with-htmurl=/nagios : Diretrio onde esto os arquivos HTML.
make all -s ( criao de binrios )
make install -s ( instalao de binrios )
make install -init -s ( instalao de script de inicializao )
make install-commandmode ( configura as permisses de pasta para
aplicativos externos )
No Slackware 8.0 instalado um script do Nagios no diretrio /etc/rc.d.
Dependendo da distribuio este arquivo dever tambm ser instalado no
diretrio /etc/rc.d/init.d/. No FreeBSD, o arquivo dever ficar no diretrio
/usr/local/etc/rc.d e ser renomeado para nagios.sh para que funcione
propriamente.
make install-config -s ( instalao de exemplos de configurao no
diretrio /usr/local/nagios/etc )
O diretrio /usr/local/nagios, neste momento, contm cinco diretrios a
saber: bin com arquivos binrios, responsveis pela monitorao; sbin
contm os scripts CGI que sero usados pela interface web; share onde se
encontram os arquivos html e a documentao do Nagios; var onde o Nagios
armazena suas informaes uma vez que esteja executando, ou seja, os logs; e
por fim etc com arquivos de configurao.

5.3 Instalao de Plugins do Nagios


Eles devem ser baixados separadamente do stio www.nagios.org e
instalados. Embora os plugins sejam distribudos em um mesmo pacote, so

45

independentes entre si, assim pode-se substituir uma verso de um plugin de


forma individual a qualquer tempo, inclusive como um plugin de construo
prpria. Antes de iniciar a instalao recomendvel a leitura do arquivo
requirements, para verificar quais os requisitos dos plugins. Em caso de
faltarem programas ou mdulos Perl enquanto a configurao estiver
executando ser emitida uma notificao. Para sua instalao deve-se
descompactar o arquivo com o cdigo-fonte e compil-los:
tar xzvf <nome do arquivo>
./configure --prefix=/usr/local/nagios with-nagios-user=nagios withnagios-grp=nagios
make all -s ( criao de binrios )
make install -s ( instalao de binrios )
As bibliotecas sero instaladas no diretrio /usr/local/nagios/libexec/
e, se no houver contedo nele, deve-se cri-lo e copiar os arquivos do diretrio
/usr/lib/nagios/plugins/

para l. Caso apresente erro da libcrypto, crie o

seguinte simblico:
ln -s /lib/libcrypto.so.0.9.7a /lib/libcrypto.so.4

5.4 Configurao ps-instalao do Nagios


Aps a instalao do Nagios e de seus plugins necessrio
fazer a configurao apropriada ao ambiente que se deseja monitorar. No
diretrio /usr/local/nagios/etc podemos encontrar os arquivos modelo para
configurao. interessante criar um diretrio para mant-los como fonte de
consulta mas, para que o Nagios possa executar os arquivos devem ser
renomeados para *.cfg. O processo de instalao do Nagios assegura que os
caminhos usados no arquivo de configurao, nagios.cfg, estejam corretos.
Depois sero copiados, para customizao, somente os arquivos necessrios
para o funcionamento do Nagios:

46

cd /usr/local/nagios/etc
mkdir sample
for i in *cfg-sample; do mv $i `echo $i | sed -e s/cfg-sample/cfg/`; done;
cd /usr/local/nagios/etc/sample
cp cgi.cfg checkcommands.cfg misccommands.cfg nagios.cfg
resource.cfg timeperiods.cfg ../
Ainda ser necessrio criar os seguintes arquivos e diretrio:
touch /usr/local/nagios/etc/dependencies.cfg
touch /usr/local/nagios/etc/escalations.cfg
mkdir -p /usr/local/nagios/var/rw
chown nagios:nagios -R /usr/local/nagios/var/rw
Descrio dos arquivos de configurao:
nagios.cfg : responsvel por iniciar os servios de monitoramento.
cgi.cfg : programas CGIs localizados na pasta sbin.
hosts.cfg : informaes dos hosts.
hostgroups.cfg : informaes dos hosts por grupos.
contacts.cfg : contatos que devero ser notificados em caso de
problema.
contactgroups.cfg : contatos divididos em grupos.
service.cfg : servios que devero ser monitorados
hostextinfo.cfg: definio das imagens apresentadas no statusmap.
dependencies.cfg : informaes de dependncias de servios.
timeperiods.cfg : informaes de diferentes perodos de monitoramento.
checkcommands.cfg : definio dos comandos que podem ser
executados
resource.cfg : macros definidas pelos usurios.

5.5 Instalando o servidor web Apache


Baixar o pacote de instalao do Apache do stio www.apache.org,
descompactar, compilar e instalar.
tar xzvf <nome do pacote>
./configure
make
make install

47

Editar o arquivo de configurao do servidor Apache, httpd.conf,


podendo-se utilizar o comando vi /etc/httpd/conf/httpd.conf , e adicionar a
seguinte clusula no final do arquivo: Include /etc/httpd/conf/nagios.conf.
Criar o arquivo de configurao do Nagios, podendo-se tambm utilizar
o comando vi /etc/httpd/conf/nagios.conf , e adicionar a seguinte configurao:
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin/
<Directory "/usr/local/nagios/sbin/">
AllowOverride AuthConfig
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
Alias /nagios /usr/local/nagios/share/
<Directory "/usr/local/nagios/share">
Options None
AlowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
Depois necessrio criar o arquivo com usurio e senha, sendo que a
opo -c no comando htpasswd s dever ser usada na primeira vez quando da
criao do arquivo.
htpasswd -c /usr/local/nagios/etc/htpasswd.users usuario
chown apache:apache /usr/local/nagios/etc/htpasswd.users
Criar o arquivo .htaccess e adicionar os seguintes contedos, nos
diretrios /usr/local/nagios/share/ e /usr/local/nagios/sbin/:
#touch /usr/local/nagios/share/.htaccess
#touch /usr/local/nagios/sbin/.htaccess
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
require valid-user

48

Criar usurio e senha para logar na interface do Nagios e torn-lo capaz


de executar HTTP. Aps esta configurao deve-se reiniciar o servidor web.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
ls -l /usr/local/nagios/etc/htpasswd.users
chmod o+r /usr/local/nagios/etc/htpasswd.users
service httpd restart

5.6 Configuraes Avanadas do Nagios


O parmetro check_external_commands, no arquivo nagios.cfg, deve
ser alterado para o valor 1. As seguintes mudanas sero necessrias no arquivo
cgi.cfg:
use_authentication=1
authorized_for_system_information=nagiosadmin
authorized_for_configuration_information=nagiosadmin
authorized_for_system_commands=nagiosadmin
authorized_for_all_services=nagiosadmin
authorized_for_all_hosts=nagiosadmin
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin
Adicionar servidores a serem monitorados
Fazer as mudanas especficas para os hosts no arquivo hosts.cfg.
Generic host definition template
define host{
name
generic-host
notifications_enabled
1
max_check_attempts 5
notification_interval 20
notification_options d,u,r
notification_period 24x7
event_handler_enabled
1
flap_detection_enabled
1
process_perf_data
1
retain_status_information
1
retain_nonstatus_information 1
register
0
}

49

define host{
use
generic-host
; Name of host template to use
host_name
<FQDN of server>
alias
<Any alias name for the host>
address
<IP of server>
check_command
check-host-alive
max_check_attempts
10
notification_interval 120
parents
contact_groups
notification_period 24x7
notification_options d,u,r
}
Repetir para todos os hosts a serem monitorados.
Agrup-los no arquivo hostgroups.cfg
Na opo members, os membros listados devem existir no arquivo de
configurao de hosts (hosts.cfg), bem como as pessoas a serem notificadas
devem estar definidos no arquivo de configurao de grupos de contatos. Vale
ressaltar que, caso se deseje adicionar mais de um membro ao grupo, basta
separar o nome dos membros por vrgula.
Define hostgroup{
hostgroup_name <Host group name>
alias
<any alias name>
contact_groups <contact group name>
members
<<host1>,<host2>,..>
}
Repetir para todos os grupos de hosts.
Especificar os servios que se deseja monitorar
Editar os detalhes de todos os servios que se deseja que o Nagios
verifique no arquivo services.cfg.
Generic service definition template
define service{
name
generic-service
host_name host_name

50

service_description service_description
servicegroups servicegroup_names
is_volatile [0/1]
check_command command_name
max_check_attempts #
normal_check_interval #
retry_check_interval #
active_checks_enabled [0/1]
passive_checks_enabled [0/1]
check_period timeperiod_name
parallelize_check [0/1]
obsess_over_service [0/1]
check_freshness [0/1]
freshness_threshold #
event_handler command_name
event_handler_enabled [0/1]
low_flap_threshold #
high_flap_threshold #
flap_detection_enabled [0/1]
process_perf_data [0/1]
retain_status_information [0/1]
retain_nonstatus_information [0/1]
notification_interval #
notification_period timeperiod_name
notification_options [w,u,c,r,f]
notifications_enabled [0/1]
contact_groups contact_groups
stalking_options [o,w,u,c]
}
define service{
use
generic-service
host_name
<FQDN of server to check the service>
service_description
<Service name>
is_volatile
0
check_period
24x7
max_check_attempts
3
normal_check_interval
3
retry_check_interval
1
contact_groups
<contact group name for alerts to
send>
notification_interval
120
notification_period
24x7
notification_options
w,u,c,r

51

check_command
<check command for the service>
}
Repetir para cada servio em cada host.
Agrup-los no arquivo servicegroups.cfg
Neste arquivo agrega-se os servios entre os vrios hosts.
define servicegroup{
servicegroup_name servicegroup_name
alias alias
members members
}
Definir informaes adicionais aos hosts
O diretrio padro das imagens /usr/local/nagios/share/images/logos/,
no entanto, podero ser utilizadas imagens de um outro pacote disponvel no
stio prdownloads.sourceforge.net.
No caso do Debian o diretrio /usr/share/nagios/htdocs/images/logos.
Para que o Nagios acesse as imagens preciso adicionar uma linha no arquivo
cgi.cfg:
xedtemplate_config_file=/etc/nagios/hostextinfo.cfg
As linhas abaixo representam o arquivo hostextinfo.cfg:
define hostextinfo{
name email
host_name
2d_coords
3d_coords
icon_image
icon_image_alt
vrml_image
statusmap_image
gd2_image
register 0
}

52

Um outro arquivo tambm pode ser utilizado para adicionar imagens


aos servios do Nagios, o serviceextinfo.cfg.
Especificar os contatos para mensagens de alerta
Na inteno de especificar os detalhes dos contatos para alertas,
necessrio editar o arquivo contacts.cfg. Mtodos de notificao como SMS para
celulares, podem ser utilizados mas, para isto, em alguns estados, necessrio
contratar os servios da operadora de telefonia celular, que disponibiliza um
gateway por onde as mensagens podem ser enviadas.
define contact{
contact_name contact_name
alias alias
contactgroups contactgroup_names
host_notification_period timeperiod_name
service_notification_period timeperiod_name
host_notification_commands command_name
service_notification_commands command_name
email email_address
pager pager_number or pager_email_gateway
addressx additional_contact_address
service_notification_options w,u,c,r ( w=warning / u=unknown /
c=critical / r=recoveries / n=none)
host_notification_options d,u,r ( d=down / u=notify / r=recoveries /
n=none )
}
'nagios' contact definition
define contact{
contact_name
<contact name>
alias
<some nickname>
service_notification_period 24x7
host_notification_period
24x7
service_notification_options w,u,c,r
host_notification_options
d,u,r
service_notification_commands notify-by-email,notify-by-epager
host_notification_commands
host-notify-by-email,host-notify-by-epager
email
<email address of the contact>

53

pager
}
Repetir para todos os contatos.

<pager or mobile no.(optional)>

Agrup-los no arquivo contactgroups.cfg


define contactgroup{
contactgroup_name
<contact group name>
alias
<any nickname for the group>
members
<members (comma seperated)>
}
Repetir para todos os grupos que incluem todos os contatos.
Escalando com Nagios
Se for necessrio enviar alertas de forma seletiva, por exemplo quando
alertas crticos ocorrerem, necessrio configurar o arquivo escalations.cfg.
define serviceescalation{
host_name
service_description
first_notification
last_notification
contact_groups
notification_interval
}
Repita para todas as escalas.

<FQDN of the server>


< name>
2
6
< groups (comma seperated)>
0

Algumas definies de parmetros:


host_name: nome do micro na rede;
alias: uma descrio para o computador;
address: o endereo IP do host;
check_command: comando de checagem do host a ser executado, definido em
checkcommand.cfg;
max_ckeck_attempts: quantidade de tentativas de checagem antes de reportar
erro/indisponibilidade;
notification_interval: espao de tempo (em minutos) em que deve ser enviada a
notificao de erro/indisponibilidade dos servios ao usurio responsvel;
notification_period: intervalo de tempo em que o servio est ativo (intervalos
de tempo podem ser definidos no arquivo timeperiods.cfg);

54

notification_options: tipos de erros que devem ser notificados para este host,
onde: d - o servio est inativo (down); u - o servio no pode ser encontrado
(unreachable); r - o servio voltou a funcionar (recovery).
parents: utilizada normalmente caso a mquina seja ligada a outra, desta forma
a organizao/administrao fica mais eficiente.

5.7 Verificao do processo de instalao


O administrador, aps efetuar todo o processo de configurao, poder
averiguar se o Nagios apresenta alguma falha em sua configurao. O Nagios
no ir iniciar se existir algum erro, j com alertas ele inicia, mas conveniente
verificar a causa dos mesmos. Pode-se checar se a configurao est correta e,
em caso positivo obter erros e alertas alm de qual arquivo est gerando o
problema. Para isso, basta digitar o seguinte comando:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Pode-se ainda acrescentar o Nagios para os servios do sistema com o
comando chkconfig --add nagios. Para habilit-lo em nvel de servio para que
inicialize junto com o sistema operacional use o comando: chkconfig nagios on.
Caso deseje pode criar uma entrada no arquivo cron.daily para que o servio
seja reiniciado diariamente, por exemplo:
vi etc/cron.daily/nagios-restart.cron
#!/bin/sh
/sbin/service nagios restart >/dev/null 2>&1
chmod +x etc/cron.daily/nagios-restart.cron

5.8 Utilizando o Nagios pela primeira vez


Para se iniciar o Nagios podemos utilizar dois mtodos:
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
ou
etc/init.d/nagios start

55

Para acessar o Nagios atravs de qualquer interface web na rede, basta


digitar no browser o endereo http://localhost/nagios. Para que o Nagios seja
usado na internet, necessrio que o servidor tenha um IP vlido, e que permita
que stios sejam publicados.

5.9 Instalao do plugin NRPE


A instalao desse plugin permite que o Nagios monitore hosts e
servios de forma passiva. Nesse caso, existem duas verses de NRPE, uma
voltada para clientes Linux, e outra voltada para clientes Microsoft Windows
(98, ME, 2000, XP, 2003 ou verses mais atualizadas). Neste tpico ser
descrito seu processo de instalao para o segundo sistema operacional.
Primeiramente, o administrador dever fazer o download do arquivo
NRPE_NT, disponvel no stio prdownloads.sourceforge.net.

Em seguida,

dever ser descompactado no diretrio c:/nrpe_nt. Ento, faz-se necessrio


configurar o arquivo nrpe.cfg e, conseqentemente, ser necessrio instalar o
servidor do NRPE_NT no prprio Windows. Para isso devero ser utilizadas as
duas linhas de comando abaixo:
c:/nrpe_nt/bin>nrpe_nt -c nrpe.cfg -i
c:/nrpe_nt/bin>net start nrpe_nt
A primeira linha para a instalao do servio no Windows; a segunda
linha para executar o servio.

56

6 CONCLUSO
A instalao e configurao do Nagios bastante facilitada pela
quantidade de listas de discusses na internet. Alm disso, o prprio stio oficial
do Nagios disponibiliza formas de contato bastante geis entre os usurios e os
desenvolvedores do sistema. O presente estudo permitiu, atravs do software de
gesto Nagios, a avaliao de diversos aspectos da gesto e monitoramento de
redes de computadores.
Alguns itens podem ser implementados para aprimorar o Nagios:
desenvolvimento de um front-end de configurao do Nagios, com o intuito de
facilitar e concentrar o meio de configurao dos seus arquivos cfg; ampliao
da capacidade de monitoramento do Nagios, para abranger arquivos de servidor
web, evitando, assim, a ao de hackers; desenvolvimento de plugins para o
Nagios com objetivos especficos, voltados para o monitoramento de algum
equipamento em particular, como controladores de temperatura, umidade,
volume de gua, etc.
Com os recursos humanos tornando-se cada vez mais escassos, nenhum
departamento de TI pode se dar ao luxo de ter seus sistemas manualmente
verificados. Redes esto se tornando mais complexas e demandam
especialmente a necessidade de serem informadas, o quanto antes, sobre quedas
que aconteceram ou por problemas que esto por acontecer. O Nagios, uma
ferramenta de cdigo aberto para monitorao de sistemas e redes, ajuda o
administrador a detectar problemas antes que o telefone comece a tocar.
Devido eficincia do daemon de monitorao, ele no sobrecarrega o
servidor nem os dispositivos de rede, outras aplicaes podem compartilhar o
dado SNMP, o teste de dispositivos feito de forma rpida, gera relatrios
identificando impreciso na monitorao existente e possui dados de
configurao unificados. Sempre tem algo mais no Nagios a se implementar.

57

Grupos de servios, notificaes, dependncias e escalamento vo refinar ainda


mais a maneira que ele trabalha. Ferramentas baseadas no Nagios possuem
potencial para monitorar a rede pr-ativamente, ativando agentes remotos para
executarem procedimentos corretivos de recuperao de falhas.
O Nagios prov uma viso do essencial de performance e
disponibilidade e mais um exemplo de como a Comunidade de Cdigo Aberto
pode ajudar no gerenciamento da rede. Com relao utilizao de softwares de
cdigo livre, esta parece ser uma alternativa cada vez mais usada pelas grandes
corporaes. No entender de muitos administradores, este fato deve-se
maturidade que aplicativos como o Nagios vm adquirindo, e solidez do
prprio Linux, principalmente no que tange ao seu conceito no mercado
mundial de softwares. O esforo despendido na configurao do Nagios
gratificado com o resultado obtido aps sua implementao.
Finalmente, gostaria de citar, de forma breve, um caso de sucesso do
qual tive a satisfao de participar, mas que, por questes profissionais, no foi
utilizado como base neste trabalho. Iniciamos a avaliao do aplicativo Nagios,
na empresa em que trabalho, devido ao fato dos rgos pblicos estarem com a
diretiva de utilizao de software livre. A implantao comeou de forma
modesta, apenas com o cadastramento de switches e roteadores, mas a cada
implementao ia se tornando mais robusto e hoje comporta servidores,
servios e tudo que considerado como produtivo e de responsabilidade do
CPD.
A equipe, antes conhecida como operao, tem atualmente o status de
monitorao e responsvel pelo acompanhamento ininterrupto do que
podemos considerar como a sade da rede. H uma console ligada ao Nagios
com acompanhamento de 24 horas, configurada com alarmes de cores, sonoros
e envio de mensagens para os responsveis.

58

Foi implementada uma rotina de atendimento para aes pr-ativas


onde a inteno identificar o problema antes da reclamao do usurio ou pelo
menos minimizar as consequncias do problema. No caso falhas em
equipamentos, a equipe de monitorao aciona o Servio de Instalao e
Manuteno de Equipamentos para que seja feita uma verificao no local. No
caso de problemas nos servios, o pessoal de suporte responsvel pelo servio
acionado imediatamente. Em ambos os casos verificada a necessidade de se
informar ao Servio de Atendimento ao Usurio para que, ciente do fato, possa
comunicar aos usurios a ocorrncia do problema para que tomem cincia de
que j esto sendo tomadas as providncias, tranquilizando-os e evitando a
abertura de vrios chamados.
Estamos instalando os equipamentos para a nossa central de
monitoramento,

NOC (Network Operationl Control), e, para satisfao da

equipe de rede, o primeiro software a ser migrado ser o Nagios, nosso


semforo, que de um simples teste passou para um servio que, pelo menos
atualmente, est sendo considerado como essencial para a produo. Como
complemento do Nagios temos implementado o MRTG, mas agora iniciamos a
utilizao do Cacti tambm.

59

REFERNCIAS BIBLIOGRFICAS
BARTH, Wolfgang. Nagios System and Network Monitoring 1st ed. So
Francisco: No Starch, 2006
NAGIOS. Nagios Official Website, em <http://www.nagios.org>
NETSAINT. Netsaint Official Website, em <http://www.netsaint. org>
NAGIOS PLUGINS, em <http://www.nagiosplug.sourgeforge.net>
NAGIOS SCREENSHOTS, em <http://www.nagios.org>
Procedure for the installation of the Nagios Network Monitoring Program,
em <http://nagios.sourceforge.net/download/contrib/documentation/misc/Install
ingNagios-r2.pdf>.
Nagios Version 1.0 Documentation, em <http://nagios.sourceforge.net/
download/contrib/documentation/english/Nagios_1_0_Docs.pdf>.
Nagios in High Availability Environments. em <http://nagios.sourceforge.net
/download/contrib/documentation/misc/HighAvailability/NagiosHA_EN.pdf>.
Estudo de uma Ferramenta de Gesto de Redes, em <http://nagios.sourcefor.
ge.net/download/contrib/documentation/misc/Nagios_Portuguese.pdf>.

60

GLOSSRIO
Acknowledgement: no contexto do Nagios, mais que um simples comentrio,
uma sinalizao ao administrador que algum j est cuidando do problema.
Browser: o mesmo que navegador WWW, browser WWW ou web browser.
Programa utilizado para visualizar as pginas armazenadas em servidores da
World Wide Web. Utilizando uma definio um pouco mais tcnica, um
browser um programa cliente que permite acessar, geralmente por meio de
uma interface grfica, informaes diversas em formato hipertexto (na
linguagem HTML) armazenadas em servidores locais ou remotos.
Bug: um bug em um computador uma falha. Softwares bugados costumam
travar mais.
CGI: Common Gateway Interface um padro para programas externos se
comunicarem com servidores de informao tais como um servidor HTTP.
Cluster: um conjunto de mquinas (no caso de cluster Linux,
especificamente, PC's) interligadas via rede que trabalham em conjunto
trocando informaes entre si.
Copyleft: tipo de programa ou servio derivado de um cdigo livre, que deve
obrigatoriamente permanecer com uma licena livre.
Daemon: programa que executado em computadores servidores cuja funo
estar constantemente aguardando solicitaes de outros programas para, ento,
executar uma determinada ao e retornar a resposta adequada.
DNS: acrnimo de Domain Name System (Sistema de Nome de Domnio). o
sistema responsvel por traduzir nomes de domnio em endereos numricos
(endereos IP) de servidores Internet e vice-versa.

61

E-mail: o mesmo que correio eletrnico.


Firewall: em portugus, "parede corta-fogo". Conjunto de equipamentos e
softwares que impedem o acesso no autorizado a redes de computadores
privadas.
Flapping: situao em que um servio muda freqentemente de estado.
FTP: o File Transfer Protocol (Protocolo para Transferncia de Arquivos) o
protocolo padro utilizado para a transferncia de arquivos de um computador
remoto para um computador local e vice-versa.
GUI: Graphical User Interface (Interface Grfica do Usurio) uma interface
de usurio para interao com um computador que emprega imagens grficas
em adio ao texto que representa as informaes e aes disponveis para o
usurio.
Hacker: uma pessoa que sente prazer em conhecer mais profundamente o
funcionamento de um sistema, de um computador e de redes de computadores,
em particular. O termo tem sido usado equivocadamente como sinnimo de
cracker.
Hardware: toda a parte fsica do computador que se pode tocar. Essa parte
fsica executa as instrues do software para gerar a sada ou entrada de
informaes de dados.
Host: tecnicamente, host um computador principal num ambiente de
processamento distribudo ou o computador central que controla uma rede. Na
Internet qualquer computador ligado rede, no necessariamente um servidor.

62

HTTP: o Hyper Text Transport Protocol (Protocolo de Transporte de


Hipertextos) o protocolo padro da WWW (World Wide Web), utilizado para a
transferncia de arquivos do tipo hipertexto na Internet.
Hub: o objeto da rede que repassa dados adiante, seja para todos os
dispositivos conectados, como na Ethernet, seja para apenas um deles como nas
redes Token Ring.
Interface: parte do sistema computacional com o qual o usurio entra em
contato fsico e perceptivo.
Internet: a conexo de vrias redes. Cada provedor de internet pode ser uma
rede. Quando se tenta acessar um computador fora da rede do seu provedor,
ser preciso um roteador para que o mesmo indique o caminho at a rede que se
queira chegar.
Layout: o desenho, a criao bidimensional de um sistema qualquer.
Log: arquivo de armazenamento de informaes referente aos resultados de
falhas, operaes bem sucedidas e etc.
NNTP: acrnimo de Network News Transfer Protocol. Protocolo que permite a
assinatura, leitura e remessa de mensagens armazenadas em um servidor de
notcias.
Ping: comando para checagem de resposta de um determinado cliente.
Plugin: extenso para browsers WWW que fornece recursos adicionais de

multimdia, facilitando a visualizao de textos, som, vdeo, etc.


POP3: o protocolo POP (Post Office Protocol) utilizado por aplicaescliente (programas) de correio eletrnico para a manipulao (leitura, remoo)

63

das mensagens armazenadas numa caixa de correio eletrnico. O protocolo


POP est em sua terceira verso, conhecida como POP3.
Proxy: um proxy um servidor que serve de ponte. Uma conexo feita
atravs de proxy passa primeiro por ele antes de chegar ao seu destino. Desse
modo, se o proxy no estiver disponvel, a conexo no pode ser efetuada.
Como todos os dados trafegam pelo proxy antes de chegar Internet, eles so
usados largamente em redes empresariais para que diversos computadores
tenham conexo limitada e controlada.
Roteador: dispositivo responsvel pelo encaminhamento de pacotes de dados
dentro de uma rede ou entre redes. Os roteadores so programados para saberem
por quais rotas de rede enviar um pacote baseado em seu endereo de destino.
Scheduler: Um escalonador que organiza a realizao de processos ou
procedimentos dada uma lista de eventos e perodos em que devem ser
realizados.
Site: uma localidade onde computadores so instalados e operados. Tambm
chamado site o conjunto de informaes disponibilizados por uma determinada
instituio atravs de um ou mais mtodos de obteno dessas informaes
(como FTP e WWW) e acessveis a partir de um endereo nico na Internet.
Assim, uma determinada instituio pode oferecer um acervo de imagens, por
exemplo, armazenando-as em seu "site FTP" ou em seu "site www".
SMTP: o Simple Mail Transfer Protocol um protocolo que faz parte do ciclo
das mensagens eletrnicas. Como o prprio nome diz, ele um protocolo muito
simples se comparado a outros, inclusive ao seu colega de trabalho, o POP.
Software: software a parte lgica do computador, os programas.

64

Status: estado; o momento, a condio em que se encontra um computador ou


servio.
Switch: switches so dispositivos que filtram e encaminham pacotes entre
segmentos de redes locais.
VRML: Virtual Reality Modeling Language - linguagem de programao em
3D.
WAP: Wireless Application Protocol - protocolo de aplicao sem fio.
WEB: considerada a rede mundial de computadores que trocam informaes
atravs do HTTP. Para que isso ficasse bem claro, foi inventado o subdomnio
WWW, que a abreviao de World Wide Web. A web o servio mais usado
na Internet. Outros servios comuns que a Internet proporciona so o e-mail e
IRC (Internet Relay Chat). Dependendo do contexto, web pode significar o
mesmo que internet.
Zoom: Aumento da visualizao de parte de um objeto qualquer, seja um texto,
figura, etc.

65

Você também pode gostar