You are on page 1of 43

Marcio Jos Atansio

NAGIOS APLICADO
Funes e configuraes voltadas
aplicabilidade

Outubro 2014
NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

O Autor

Marcio Jos Atansio atua deste o ano de 2001 com informatica nos seguimentos
de servidores, rede e computadores pessoais. Graduado no Curso Superior em
Tecnologia de Redes de Computadores pela Universidade Tuiuti do Paran-Curitiba e
Ps Graduando em Gerenciamento da Tecnologia da Informao pela FAE-Curitiba.
Especializou-se em demais reas atravs de cursos como CCNA, ITIL e Linux
como e certificao LPI-1.
Mantm o blog http://marciojose.blogspot.com aonde descreve eventos
relacionados ao dia-a-dia. Sobre o seu portfolio, o descreve na ferramenta Linkedin,
aonde pode ser visualizado por completo atravs do link
http://br.linkedin.com/in/marciojose.
Contato para cursos e consultorias atravs do email marcioatanasio <arroba>
gmail.com.

Marcio Jos Atansio 1


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Licenciamento

O contedo deste livro rege o acordo conforme a Creative Commons conforme


logo indicativo.

Marcio Jos Atansio 2


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Sumrio

Introduo ............................................................................................................................ 4
Conveno deste livro ......................................................................................................... 5
Funcionamento do nagios.................................................................................................... 5
Localizao dos arquivos..................................................................................................... 7
NAGIOS.CFG ................................................................................................................................. 7
CGI.CFG ....................................................................................................................................... 7
RESOURCE.CFG ............................................................................................................................ 8
COMMANDS.CFG ........................................................................................................................... 8
CONTACTS.CFG ............................................................................................................................ 8
TIMEPERIODS.CFG ........................................................................................................................ 9
TEMPLATES.CFG ........................................................................................................................... 9
GROUPS.CFG ............................................................................................................................... 9
VARIVEIS INTERNAS .................................................................................................................... 9
Instalao .......................................................................................................................... 10
Instalao nagios core ....................................................................................................... 10
Instalao plugins .............................................................................................................. 11
Primeiro acesso web ao nagios ......................................................................................... 13
Comandos dos hosts e servios ........................................................................................ 21
cones utilizados pelo nagios ............................................................................................. 22
Configurao de envio de email ........................................................................................ 22
Adicionando um novo plugin .............................................................................................. 24
Configurao de grupos de hosts e servios ..................................................................... 25
Adicionando um novo host................................................................................................. 27
WINDOWS .................................................................................................................................. 27
LINUX ......................................................................................................................................... 31
Configurao de contatos .................................................................................................. 33
Mapa do nagios ................................................................................................................. 35
Criando um plugin .............................................................................................................. 36
O que so brokers ............................................................................................................. 39
Mapa de rede com nagvis.................................................................................................. 39

Marcio Jos Atansio 3


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Introduo

O Nagios uma ferramenta poderosa de monitoramento de rede e seus


dispositivos, que podem ser roteadores, servidores, access points, etc. Todo e qualquer
dispositivo que tem conexo de rede pode ser monitorado. O monitoramento parte desde
verificar o acesso ao dispositivo na rede, efetuando um teste de ping at mesmo coletar
informaes de hardware e software atravs de daemons instalados nos dispositivos ou
via SNMP.
Para os daemons instalados, h um pacote de plugins que podemos considerar
como padro. Alm destes, seguindo as especificaes do desenvolvedor, podemos criar
nossos prprios plugins com qualquer outro tipo de linguagem de programao ou de lote,
desde que a sada do comando retorne o padro em que o ncleo do Nagios interprete.
Estes daemons esto presentes tanto para os sistemas operacionais Unix like tanto
quanto para Microsoft.
H 3 nveis de alerta, sendo eles o Ok (sem problemas), warning (aviso) e critical
(crtico) e onde suas mtricas so totalmente customizadas, aderindo de forma racional a
qualquer ambiente de TI. As alteraes nos nveis dos alertas so notificadas podem ser
notificadas atravs do e-mail, SMS ou alertas visuais e assim como as mtricas de alerta
totalmente customizadas. Os alertas podem ser direcionados somente para um ou mais
administradores, sendo que pode ser categorizados por grupos.
A comunicao entre o Nagios e os dispositivos pode ser executada tanto de forma
passiva quanto ativa. Cada uma dessas formas tem seus pontos positivos e usado nos
mais variados cenrios.
Seu painel de monitoramento, via web, no requer instalao de software de
visualizao, sendo compatvel com qualquer sistema operacional. Esta traz informaes
pertinentes a tempos de alertas, relatrios de avisos enviados, SLA e informaes
coletadas. O acesso ao painel de monitoramento, bem como seus alertas, categorizado,
assim, podemos disponibilizar informaes somente aqueles que fazem a gesto do
equipamento que est com alerta. Podemos acrescentar cones diferenciados para os
hosts bem como para os servios.
Para os dispositivos mveis, temos o Nagios Mobile, que lhe proporciona uma
interface web adequada para o seu celular ou tablet. Ainda sobre a visualizao dos
alertas, h softwares para Windows, Linux, iPhone e Android, que dispensam o uso de
navegadores web e tambm lhes do alertas visuais e sonoros.
Podemos ainda agregar maior riqueza nas demonstraes dos alertas, utilizando o
Nagvis, ferramenta que se integra ao Nagios e traz grande flexibilidade na demonstrao
das informaes. Esta ainda tem plugins para demonstrao de grficos em pizza, VU
meter e outros das informaes coletadas pelo Nagios. Podemos utilizar qualquer
imagem, desde o mapa de rede, foto do rack ou mapa geogrfico para sobre este, trazer
as informaes coletadas pelo Nagios e melhor demonstr-las.
Com certeza h outras ferramentas de monitoramento, tais como Zabbix, que no
deixa a desejar, mas o Nagios sendo uma ferramenta mais leve e com maior tempo de
mercado, vem obtendo grandes resultados e retorno financeiro com SLAs e prospeco
de recursos de TI, lhe dando informaes mais que necessrias para planejar seu budget
e demonstrar de forma visual e no tcita as suas reais necessidades aos departamentos
responsveis pelo financiamento.

Marcio Jos Atansio 4


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
O Nagios e encontra na sua verso open source e verso comercial. O seu core
o mesmo para ambas, mas na verso comercial, voc obtm facilidades de configurao
e suporte do fabricante. Toda informao de suas configuraes est disponvel na
internet atravs do link http://www.nagios.org/documentation.

Conveno deste livro

Os comandos aqui presentes foram executados no sistema operacional Linux,


distribuio CentOS. Porm, sempre ser prezado a compilao dos softwares aqui
apresentados para que possa ter maior aderncia a qualquer outra distribuio.
Para que seja mais claro os comandos e informaes providas, iremos descrever
da seguinte forma as execues:
Quando houver um comando executar, ser utilizado fonte courier, 10, negrito.
Todos os comando so executados com privilgio de root.
# comando

Quando se tratar se algum arquivo, seja para edio ou visualizao de algumas linhas,
ser utilizado fonte courier, 10, itlico. Todos os arquivos so editados com privilgio de
root.
# Contedo do arquivo
configuracao = configurado

Funcionamento do Nagios

O Nagios tem um core onde faz a coleta e/ou recebe as informaes providas
pelas suas checagens ou recebimento dessas e demonstra no painel de monitoramento.

Figura 1: Funcionamento do core

Seus arquivos trabalham de forma hierrquica e por herana. Essa herana faz
com que os plugins configurados atravs dos commands, da classe dos Object Definition
Files, possam ser aproveitados pelos Resource Files e evitando retrabalho de
configurao. As mtricas continuam sendo individuais, mas podem ser adotadas de

Marcio Jos Atansio 5


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
forma padro. Tudo ao sabor do cliente.
Os arquivos que compreendem o Nagios core so:
nagios.cfg - arquivo principal aonde tem referncias para os demais arquivos,
exceto cgi.cfg.
cgi.cfg - arquivo de configurao de visualizao do painel de monitoramento e
logins administrativos.
resource.cfg - arquivo que contm variveis de ambiente pr configuradas e d a
possibilidade de criar novas.
commands.cfg - arquivo com a configurao dos comandos com os plugins.
contacts.cfg - contatos que recebem os alertas e visualizam os hosts no painel de
monitoramento.
timeperiods.cfg - configurao de perodos de tempo para alertas e horrio de
verificaes (no perodo entre verificaes).
templates.cfg - arquivo com as configuraes pr criadas para hosts e servios.
Alm desse arquivos que vem por padro, vamos criar um arquivo para a
configurao dos grupos. Por padro, esta configurao vem no arquivo localhost.cfg, que
o base para a configurao dos hosts.
groups.cfg (arquivo criado para configurar os grupos de hosts e servios, caso
ache necessrio).
Na configurao padro, vem alguns arquivos como printer.cfg, windows.cfg e
switch.cfg mas no vamos precisar trabalhar com esse arquivos, uma vez que faremos
as configuraes manualmente para melhor entender. A seguir, vou detalhar as
configuraes que vem em cada arquivo por padro.
A seguir, um diagrama para exemplificar a hierarquia que existe entre os arquivos.

Figura 2: Hierarquia das configuraes

Essa hierarquia pode ser alterada conforme a necessidade, pois podemos efetuar
configuraes diretamente no host, sobrescrevendo as configuraes herdadas de
templates.cfg.
importante conhecer o funcionamento dos plugins do Nagios. Estes programas
ou scripts, quando so executados, geram informaes no formato em que o Nagios core

Marcio Jos Atansio 6


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
entenda e so enviadas diretamente ao core quando executado no mesmo servidor em
que o Nagios est instalado ou atravs de daemons, quando instalado em hosts
monitorados.
Neste livro iremos trabalhar com os clientes NSClient (Windows) e NRPE (Linux).
Este envio de informaes efetuado atravs de comunicao server para client de forma
ativa, ou seja, o Nagios periodicamente consulta os hosts e estes ter de estar acessveis
na porta e IP consultados.
Na forma passiva, periodicamente o host envia informaes para o Nagios,
utilizaremos o NRDP, pois este trabalha atravs do protocolo HTTP(S) nos dando maior
flexibilidade em locais em que h firewall ou servidores que se encontram atrs de NAT.
Cabe ao core computar o perodo em que as informaes tem que vir e caso este exceda,
alertar que no foi recebido os dados do hosts.

Localizao dos arquivos

Em uma instalao nova, compilada como faremos, os seguites diretrios so


criados:
/usr/local/nagios: Diretrio principal da instalao.
/usr/local/nagios/bin: Binrio do programa.
/usr/local/nagios/etc: Arquivos de configurao principais.
/usr/local/nagios/etc/objects: Arquivos de configurao dos objetos. Tem esse
nome por que herdam configuraes entre si e podem ser sobreescritas essas
configuraes.
/usr/local/nagios/libexec: Binrios e scripts responsveis pela checagem dos
hosts e servios. O arquivo commands.cfg faz referncia eles.
/usr/local/nagios/sbin: Scripts .cgi para a coleta de informaes do Nagios core e
exibio no painel de monitoramento.
/usr/local/nagios/share: Diretrio onde est o painel de monitoramento, exibido
via web.
/usr/local/nagios/var: Diretrio com arquivos temporrios, logs, sockets e
histrico.

nagios.cfg
Arquivo principal responsvel pelas configuraes do core. Este arquivo o que l
os demais arquivos que descrevemos. Apesar do arquivo ser auto-explicativo, bom
reforar algumas configuraes em que so alteradas com frequncia ou somente na
instalao do Nagios:
cfg_file: Ir carregar as configuraes desse arquivo quando efetuar o reload ou
start do Nagios core.
cfg_dir: Ir carregar todos os arquivos dentro do diretrio que tem extenso .cfg.
broker_module: Carrega mdulos para interagir com o Nagios core.
use_syslog: Alm de gravar os logs no arquivo nagios.log, tambm grava no
arquivo syslog. Deixe como 0.

cgi.cfg
Arquivo responsvel pelas configuraes que dizem respeito ao painel de

Marcio Jos Atansio 7


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
monitoramento, tais como logins administrativos, quantidades de hosts para exibir, etc.

resource.cfg
Contm informaes, atravs de variveis de ambiente delimitadas entre $.
utilizada primordialmente pela varivel de ambiente $USER1$, utilizada pelo arquivo
commands.cfg para informar aonde est os plugins. Pode ser criado mais variveis, que
podem conter informaes como senhas e mtricas em que deseja que seja padro sem
utilizar os templates.

commands.cfg
Este arquivo que faz a ligao entre os servios configurados para o host, com os
plugins, que so programas ou scripts que fazem as checagens. Sua sintaxe bem
simples como descrevo abaixo.
define command{
command_name check_snmp
command_line $USER1$/check_snmp -H $HOSTADDRESS$ $ARG1$
}
command_name: Nome do comando. Este nome o utilizado na configurao da
checagem para o host.
command_line: Linha de comando. Caminho onde se encontra o comando para
ser executado, ou seja, o plugin. Como padro, o caminho
/usr/local/nagios/libexec. Note que tem algumas variveis de ambiente entre $, a
varivel $USER1$ podemos encontrar no arquivo resource.cfg, as demais vem do
arquivo em que est configurado a checagem, sendo que $HOSTADDRESS$ o
endereo configurado no host em address e $ARGX$ o argumento aps a
configurao do check_command. usado o delimitador ! para cada campo de
argumento.

contacts.cfg
Responsvel por configurar os contatos que iro receber os alertas. Sua sintaxe
bem simples, como descrito abaixo.
define contact{
use generic-contact
contact_name <LOGIN DO CONTATO>
alias <NOME DO CONTATO>
email <EMAIL DO CONTATO>
}
A configurao dos contatos tem que ter um template relacionado, que neste caso
o generic-contact. H opes que so obrigatrias para a criao de um contato e para
que no seja necessrio recri-las em cada contato, utilizado a herana deste template.
O contact_name deve ser o login criado no arquivo passwd, que faz referncia a
autenticao para a visualizao do painel de monitoramento. Os logins que no forem
referenciados no arquivo cgi.cfg, somente visualizaram os hosts em que forem contatos.

Marcio Jos Atansio 8


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

timeperiods.cfg
Arquivo de configurao de perodos de tempo que podem ser utilizados. mais
comumente usado para desativar alertas em um certo horrio ou dia. utilizado na
configurao dos templates.

templates.cfg
Principal arquivo de configurao. Sem este arquivo, seria muito trabalhoso
configurar novos hosts e checagens, por que teramos de repetir as configuraes
obrigatrias.
Entre as configuraes, temos algumas em que usualmente so mais
customizadas para hosts:
name: Nome do template. Deve ser nico.
notifications_enabled: Habilitar notificaes. Valor padro 1.
active_checks_enabled: Usado para habilitar as checagens ativas.
passive_checks_enabled: Usado para habilitar a checagens passivas.
check_interval: Intervalo de tempo entre as checagens, quando ativa, ou para
considerar sem informao, quando passiva. Valor em minutos.
retry_interval: Tempo de intervalo para checar novamente, quando um servio
tem seu estado alterado. Valor em minutos.
max_check_attempts: Dentro do intervalo de retry_interval, depois de quantas
checagem o servio considerado com o estado detectado.
contact_groups: Grupo em que receber os alertas sobre o servio.
register: Isso que define a configurao como template e no como host
propriamente dito. Sempre 0.

groups.cfg
Este arquivo no vem padro no Nagios, e foi criado separado afim de dar uma
melhor organizao. A princpio, a configurao dos grupos de hosts e servios so
efetuadas dentro do arquivo de configurao de cada host. Como isso pode gerar um
grande trabalho, quando precisa colocar alguns hosts ou servios no mesmo grupo, teria
de procurar qual o grupo dentro dos vrios arquivos de configurao de cada host.
Deixando um arquivo separado, organiza de forma que voc sabe que quando se
trata de grupos, o arquivo e groups.cfg.
Estas so as configuraes mais alteradas durante uma customizao. H ainda
vrias outras em que pode-se ter mais detalhes na prpria documentao do Nagios, em
http://www.nagios.org/documentation.

Variveis internas
Os arquivos de configurao contm variveis de macro utilizadas internamente e
que lhe ajudam a efetuar suas prprias configuraes, plugins e comandos. A lista vasta
e muito importante que voc veja quais esto disponveis em
http://nagios.sourceforge.net/docs/3_0/macrolist.html. Reforo que isso extremamente
importante, pois quando formos efetuar nossas configuraes, vamos utilizar grande parte
delas.

Marcio Jos Atansio 9


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Instalao

Caso tenha instalado o seu sistema operacional Linux recentemente, observe se


no h nenhuma regra de firewall criada por padro. Recomendamos tambm que
desative o selinux (security linux) para evitar problemas nas execues dos scripts .cgi.
Caso deseje deixar ativado, voc ter de efetuar os ajustes nas polticas de segurana
por si mesmo.
O procedimento de compilao o mesmo seguido de qualquer outro pacote
desenvolvido para o ambiente Linux. Como o foco na ferramenta Nagios e no
administrao de servidores Linux, iremos ser bem diretos e sucintos em alguns
procedimentos considerados administrativos. No iremos compreender a instalao do
sistema operacional ou refinamentos.
Ser efetuada a instalao diretamente do cdigo fonte. Poderamos sim utilizar os
repositrios se sua distribuio preferida, porm, isso iria delimitar muito o escopo e assim
no ser aderente de forma mais abrangente as configuraes.
Outra considerao bastante importante sobre a instalao diretamente do cdigo
fonte a de obtermos o produto na sua mais atual verso bem como no ter problemas
com a localizao dos arquivos de configurao.
No momento da confeco deste, ele se encontra na verso 3.5.0 e verso 4.0-
beta. No ser utilizado a verso 4, pois como pode ver ainda no est finalizada.
Antes de baixar o pacote para compilar, considere as seguintes dependncias:
Pacotes de desenvolvimento Linux (make, gcc, kernel headers, etc);
Servio Apache com PHP;
Pacote de desenvolvimento Perl (perl-devel);
Pacote de desenvolvimento GD (gd-devel).

Instalao Nagios Core

Antes de iniciar a instalao tenha em mente que necessrio estar instalado, na


sua distribuio Linux utilizada, as ferramentas de desenvolvimento bem como as
bibliotecas e um servio de pginas web que neste caso o Apache com suporte a PHP e
CGI.
necessrio tambm ter criado o usurio nagios, pois o socket de comunicao o
utiliza e configurado na instalao.
Efetue o download da verso mais recente atravs do link
http://sourceforge.net/projects/nagios/files/nagios-3.x/
Aps efetuar o download e descompactar, voc ver um diretrio com o nome
nagios, seguido da verso. Com as dependncias instaladas, descrevemos abaixo os
comandos serem executados.
# ./configure
# make all
# make cgis
# make install-cgis
# make fullinstall

Marcio Jos Atansio 10


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
# make install-init
# make install-commandmode
# make install-config
Para melhor compreender o que foi feito, saiba que o cgi o painel de
monitoramento do Nagios, init diz respeito instalao para gerenciamento do servio e
sua inicializao no sistema, commandmode diz respeito ao socket de comunicao com
o core do Nagios, que iremos utilizar para outras ferramentas e config so arquivos
bsicos de configurao que vamos utilizar para iniciar as explicaes sobre a ferramenta.
Nesse momento, voc j deve ter o diretrio /usr/local/nagios em seu sistema. Foi
adicionado tambm uma arquivo de configurao no seu servio apache com o nome de
nagios.conf.
Vamos criar o usurio padro para acesso ao painel de monitoramento do Nagios.
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Ser solicitada a senha. Sugerimos a utilizao da senha nagiosadmin, mas no h


problema em utilizar uma senha pessoal, desde que, logicamente, no seja esquecida.
necessrio que o usurio em que o Apache inicializado tenha permisso de
execuo nos scripts cgi e socket do Nagios. Para isso, adicione ao grupo nagios o
usurio do servio Apache do seu sistema.
# usermod -a -G nagios apache
Como foi descrito em Conveno deste livro a distribuio utilizada o CentOS em
que o usurio de execuo do Apache apache. Em outras distribuies, pode ser que o
usurio seja httpd, como o caso do *Suse.
Aps isso, no se esquea de observar se o servio do Apache est na inicializado
e configurado para iniciar automaticamente quando do reinicio do sistema operacional. Na
distribuio CentOS, bem como nas de mesma origem, efetue os comandos:
# chkconfig nagios on
# chkconfig httpd on
# service httpd restart
# service nagios restart

Pode ser que sua distribuio tenha um gerenciador, como o setup no CentOS,
pode ser usado no lugar dos comandos chkconfig.
Aproveitando esse tpico, descrevo dois comando extremamente ESSENCIAIS
para que voc possa resolver todos os problemas em relao a configuraes do Nagios:
# service nagios checkconfig

Este comando ir verificar se est tudo configurado de forma correta, somente isso.
Agora, se retornar um erro, podemos ir mais afundo ainda para ver qualquer arquivo e
linha est com problema na configurao com o comando:
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
O comando Nagios, argumento -v de verify e apontando o arquivo principal de
configurao do Nagios. Simples assim...

Instalao plugins

Marcio Jos Atansio 11


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Como foi descrito anteriormente em funcionamento, os plugins so programas
configurados no arquivo commands.cfg responsveis por contactar outros hosts e trazer
informaes ou prover informaes do prprio host em que est instalado.
Sempre que um host vai ser monitorado tem de haver os plugins para coleta dos
dados e formatao para o Nagios. H forma de se monitorar hosts sem a necessidade
de plugins instalados, como o caso de impressoras, roteadores, catracas eletrnicas,
access points, cartes ponto, pginas web, DNS, DHCP e iremos posteriormente explicar
como proceder.
Faa o download da ltima verso dos plugins em
http://sourceforge.net/projects/nagiosplug/files/nagiosplug/. No momento da confeco
deste livro est na verso 1.4.16. Esta verso necessita que seja instalado tambm as
bibliotecas openssl de desenvolvimento, caso contrrio, ir ocorrer um erro no momento
de compilar. Outra biblioteca que deve estar presente a perl-ExtUtils-MakeMaker.
Instale do repositrio da sua distribuio Linux.
Ao descompactar, voc ver uma pasta nagios-plugins com a verso ao final. Siga
os mesmo procedimentos de compilao de qualquer software no ambiente Linux.
Descrevemos abaixo como pode proceder aps descompactar o arquivo.
# ./configure --enable-perl-modules
# make all
# make install all

Aps a instalao, voc pode observar que h o diretrio /usr/local/nagios/libexec


contendo scripts e programas para a coleta de informaes e formao para o envio ou
recebimento pelo Nagios core.
Outro servio que no vem por padro no pacote do Nagios Pluguins o NRPE,
comando utilizado para buscar informaes de forma ativa nos hosts configurados.
Vamos proceder com a instalao, efetuando o download atravs do link
http://exchange.nagios.org/directory/Addons/Monitoring-Agents/NRPE--2D-Nagios-
Remote-Plugin-Executor/details. No momento deste livro, este servio est na verso
2.14.
Descompacte o arquivo tar.gz recm efetuado download e execute os comando
para compilar e instalar:
# ./configure
# make
# make install

Neste momento, voc ter dois novos arquivos na pasta de instalao do Nagios.
Um o nrpe, instalado na pasta /usr/local/nagios/bin que o comando para ser executado
quando um host cliente e check_nrpe, localizado na pasta /usr/local/nagios/libexec que
o comando para o servidor Nagios executar e buscar informaes em um host que
tenha o servio nrpe rodando ou outro software que comporte o protocolo.
Para garantir o funcionamento, faa o restart do servio de hospedagem, que no
nosso caso o apache e do Nagios.
# service httpd restart
# service nagios restart

Marcio Jos Atansio 12


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Primeiro acesso web ao Nagios

Se tudo ocorreu bem, j temos o Nagios instalado de forma totalmente funcional.


Vamos agora acessar sua interface web e navegar pelas suas opes administrativas
tanto quanto descrever as informaes apresentadas. Lembre-se da senha em que voc
colocou no momento da instalao do Nagios, caso no lembre e queira alter-la, a vai o
comando:
# htpasswd /usr/local/nagios/etc/htpasswd.users nagiosadmin

Note que, em relao ao comando nos passos anteriores, ns no precisamos


mais criar o arquivo ( -c ), somente precisamos alterar a senha.
Ao acessar http://IP_SEU_SERVIDOR/nagios, voc ir ver a seguite tela:

Figura 3: Home
Neste tela nos mostrado ao lado esquerdo, o menu com vrios opes que
iremos descrever uma a uma. Na primeira tela principal, que no menu diz respeito
Home, podemos visualizar a verso do Nagios e um link para que avalie se h novas
verses, h tambm links para verso comercial, documentao, plugins. Peo que
explore os links, pois h informaes que podem ser teis para voc no que diz respeito
ao seu ambiente de TI. Toda a documentao em ingls, mas h ferramentas via web
que podem lhe ajudar a superar a essa barreira. Mesmo assim, pense bem que a maioria
dos melhores materiais em TI est em ingls, portanto, no ser perda de tempo investir
no aprendizado dessa lngua.
Em Documentation voc ser redirecionado documentao oficial do Nagios na
web e poder escolher visualiz-la via HTML ou efetuar o download do pdf. Reforo que
nem todo o vasto contedo e opes do Nagios sero descritas neste livro. Somente as
principais e mais utilizadas sero apresentadas, portanto, dar uma olhada na
documentao oficial no faz mal a ningum.

Marcio Jos Atansio 13


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Figura 4: Tactical Overview


Em Tactical Overview voc tem uma viso geral de todos os servios e hosts de
forma resumida, bem como o level de sade que est seu ambiente de TI monitorado.

Figura 5: Map
Em Map voc tem, ou melhor, ter um mapa construdo atravs da configurao da
propriedade parents em cada host. Como em nossa instalao somente temos o host
localhost, no h nenhum parente. No confundir este mapa com o mapa da rede, que
iremos utilizar o Nagvis para isto, pois este mapa diz respeito a viso do Nagios em
relao aos hosts monitorados, ou seja, o caminho que ele faz para chegar cada um.
No canto superior esquerdo podemos mudar o tipo de visualizao. O tipo principal
como estrela, mas voc pode alterar no arquivo cgi.cfg, na opo
default_statusmap_layout qual o tipo que quer que seja o padro. Valores vlidos so:
0 = User-defined coordinates
1 = Depth layers
2 = Collapsed tree
3 = Balanced tree
4 = Circular
5 = Circular (Marked Up)

Marcio Jos Atansio 14


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Outra opo que no momento no se faz importante, mas futuramente ser, a
quantidade de hosts que aparecem. O padro como pode ver 100, mas voc pode
mudar o default alterando a opao result_limit.

Figura 6: Hosts
Em Hosts voc visualiza todos os hosts presentes bem como a resposta ping das
consultas. Acima temos um resumo de todo o ambiente monitorado bem como atalhos
para outras opes de visualizao.

Figura 7: Services
Em Services, voc tem uma visualizao detalhada de cada host e estado dos
seus servios. Como temos uma instalao nova, o HTTP no root est bloqueado para
visualizao e no meu caso, como tenho a porta SSH fora do padro, aparece como
alerta. Acima o mesmo resumo de todos os hosts e servios monitorados e atalhos para
visualizao de estados e notificaes.

Marcio Jos Atansio 15


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Figura 8: Host Groups


Em Host Groups podemos agrupar os hosts pelas mais diversas caractersticas
que desejarmos. Na configurao padro, o Nagios j adicionou o host localhost ao grupo
Linux Servers por herana. Nos prximos captulos, nos iremos ver como podemos criar
novos grupos e organizar melhor os nossos hosts. Os sub menus Summary e Grid trazem
as mesmas informaes em demonstraes diferentes.

Figura 9: Service Groups


Em Service Groups segue o mesmo padro de Host Groups. Podemos
categorizar os servios como de Rede, Hardware, Softwares, Servios Internos, Servios
Externos e qualquer outra forma de organizar os servios checados. Quando se instala o
Nagios, ele no faz nenhum configurao de grupos de servios. Mas logo adiante iremos
explorar bem como configurar e organizar melhor a visualizao dos seus alertas.

Marcio Jos Atansio 16


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Figura 10: Problems


A opo Problems a que eu gostaria que voc menos utiliza-se, mas um servio
de monitoramento para isso, no ? Pois bem, aqui so descritos os alertas em que o
Nagios detectou. Quando da nossa instalao, ao menos um alerta voc deve ter, que
do servio HTTP. So categorizados por Servios, Hosts e no tratados (Unhandled).
Em Network Outages voc ter as redes que no esto acessveis caso haja
alguma falha. Ela leva em considerao a configurao de parents/child. Ns veremos
melhor isso quando for configurar-mos os hosts.
Em Quick Search voc pode escrever o nome do host que quer visualizar os
estados do servios. Se voc se utilizar de uma lgica nos nomes dos hosts, tal como
firewalls com incio fw, por exemplo, voc pode usar um caracter coringa ( * ) para trazer
todos. Talvez esse no foi um bom exemplo, uma vez que podemos utilizar das
configuraes de Hosts Groups para isso, mas s para lhe dizer que h essa
alternativa nas buscas.

Figura 11: Availability


Nesta sesso do Menu, a Reports, podemos ter de forma grfica as
porcentagens e demonstraes de SLA dos servios e dos hosts. Sempre temos o filtro
por Grupos, Hosts ou Servios. Aps, podemos escolher as seguintes opes:

Marcio Jos Atansio 17


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Report period: Perodos pr determinados ou escolher um customizado;


Assume Initial States: Assuma um estado se o inicial no for detectado
(Undetermined). Geralmente quand se est fazendo de um perodo em que
o host ou servio ainda no estava sendo monitorado.
Assume State Retentition: Especifica se o estado de reteno est
habilitado.
Include Soft States: Soft State so estados em que no so considerados
como alerta. O Nagios faz, por padro, 4 testes para que realmente entenda
que um servio est com o estado de alerta. Isso evita falsos positivos
quando se ocorre uma oscilao normal de um servio ou host. Soft States
no geram alerta.
First Assumed Host State: Quando no possvel efetuar a busca pelo
ltimo estado do servio ou host.
Em Trends, podemos intercalar com variadas formas de demonstrao do
SLA dos servios. No canto superior esquerdo do frame, podemos visualizar os vrios
tipos de demonstrao. Segue a demostrao dos que existem:

Host State Trends / Service State Trends

Host Availability Report / Service Availability Report

Marcio Jos Atansio 18


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Host Alert Histogram / Service Alert Histogram

Host Alert History / Service Alert History

Em Notifications podemos ver quando e quem recebeu notificaes de


alerta de algum host ou servio. J em Event Log podemos visualizao via interface
web o arquivo /usr/local/nagios/var/nagios.log.

Em Comments, podemos ver todos os comentrios adicionados aos servio


ou hosts. Essa funcionalidade muito til para registrar demais informaes, tais como
abertura de chamados, ticket da abertua dos chamados, razes do alerta, informaes de
aviso de andamento de soluo ou qualquer outro tipo de informao que deseja. Adiante
veremos como adicionar esse comentrios.

Em Downtime voc tem as intervenes agendadas, para que neste perodo em


que sabido que o servio vai oscilar ou parar, no sejam disparados alertas, pois
considerado uma janela de interveno programada.

Marcio Jos Atansio 19


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Em Process Info, temos informaes do Nagios core e rotinas


administrativas. No vejo utilidade deste, uma vez que ao se alterar ou adicionar algum
host, voc estar na linha de comando, onde poder constatar se tem algum erro de
configurao e no havendo, poder efetuar o reload.

As informaes em Performance Info so interessante em um servidor em


larga escala, afim de efetuar refinamentos, detectar gargalos de processamento e
averiguar a quanto est a coleta de informaes de hosts e servios.

J o Scheduling Queue lhe mostra os agendamento efetuados para a checagem


de cada servio ou host. possvel desativar algum agendamento ou at mesmo
reagendar. Para isso, h atalhos mais fceis, sendo este tambm um menu em que no

Marcio Jos Atansio 20


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
se usar.
Finalmente, em Configuration, voc poder ver atravs da interface web, as
configuraes. aplicado um filtro, para que seja mais fcil detectar qual configurar quer
verificar. Tambm no ser to til, pois veremos tudo na prtica no prprio arquivo de
configurao.

Comandos dos Hosts e Servios

Quando se clica em um host ou servio, h um menu onde voc pode executar


algumas tarefas, tais como forar uma checagem, desativar uma notificao, etc. A seguir
vamos descrever essas funes em que algumas, so essenciais para o bom
aproveitamento da ferramenta.
Vamos aos comandos disponveis para os hosts.

Locale host on map: Demonstra aonde est o host no Map.


Disable active checks of this host: Desativa as checagem ativas.
Re-schedule the next check of this host: Quando se altera ou configura um novo
host, no preciso esperar o tempo de checagem, pode-se forar essa checagem
antes.
Submit passive check result for this host: Envia uma checagem pela interface web
para o host. Vlido para hosts configurados no modo passivo.
Stop accepting passive checks for this host: No aceita mais os envios de estados
dos clientes na forma passiva.
Stop obsessing over this host: Funo usada para sistema distribuidos. No
abordado neste livro.
Disable notifications for this host: Desabilita notificaes para o host somente.
Send custom host notification: Envie uma notificao padro. Interessante quando
se quer dar maiores informaes para quem ir receber o alerta, como por
exemplo, o DBA ou local de abertura de chamados.
Schedule downtime for this host: Habilitar perodo de desligamento ou interveno.
* all services: Aplicar para todos os servios do host tambm, no somente para o
host em especfico, que no caso de alerta, somente se ele est respondendo a
ping ou no.
Disable eventhandler for this host: Capacidade do Nagios que tentar contornar o
problema com um comando, pr configurado. Esta funo desativa o tratator do
evento, caso este esteja configurado.
Disable flap detection on this host: No detecte variao constante de estados e
notifique qualquer alterao. Caso queira encher sua caixa de email, essa a
Marcio Jos Atansio 21
NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
opo.
Agora, vamos descrever os comando disponveis para os servios. Para no ser
redundante, alguns j esto descritos nos comandos para hosts.

Acknowledge this service problem: Marca o servio com problema como


Conhecido e assim, no envia mais alertas, at que o servio retorne e
habilitado novamente de forma automtica o envio de alertas.
Lembre-se: H vrias configuraes no arquivo /usr/local/nagios/etc/cfgi.cfg que
dizem respeito as permisses de um login para executar os comandos no menus de
Service Commands e Host Commands.

cones utilizados pelo Nagios

O Nagios tem alguns cones que auxiliam na interpretao das suas informaes.
Vamos demonstrar os que so nativos e mais significativos, uma vez que possvel
alter-los sua preferncia.

Efetuado o Acknowledge de um servio, ou seja, ele conhecido.

H presena de grfico. Veremos quando configurar o pnp4Nagios.

Presena de comentrio.

Checagem do servio ou host desativada.

Servidor ou servio com perodo de Downtime configurado.

Servio em flapping, ou seja, oscilando entre estados. Os alertas so desativados.

Notificaes desativadas.

Checagem passiva habilitada.

Configurao de envio de email

Primeiramente, vamos configurar o envio de alertas via email. Este envio est
configurado em /usr/local/nagios/etc/objects/commands.cfg nas propriedades notify-
host-by-email e notify-service-by-email. Por padro, o comando executado atravs de
/bin/mail. Isso at que funciona se voc tem um servidor de email na sua rede e com
relay liberado. Mas vamos fazer de forma que, mesmo tendo um servidor na nuvem ou

Marcio Jos Atansio 22


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
em servio de email grtis, voc possa receber seus alertas.
Vamos criar um script com o nome de nagiosmail que ns possamos usar para
enviar os nossos alertas.

#!/bin/bash
SMTP_SERVER="smtp.email.com:587"
SMTP_USER="conta@email.com"
SMTP_PASSWORD="senha_conta_email"

#DESTINATARIO -> 1
#ASSUNTO -> 2
#MENSAGEM -> 3

DIR="/usr/local/nagios/libexec"
perl $DIR/sendEmail.pl -f $SMTP_USER \
-s $SMTP_SERVER \
-t $1 \
-u "$2" \
-m "$3" \
-xu $SMTP_USER \
-xp $SMTP_PASSWORD >> /dev/null

Eu utilizo um script em perl para efetuar o envio dos alertas. Caso voc tenha um
servidor de email em sua rede, pode liberar o relay do IP do Nagios neste servidor. Como
a forma que descrevo aqui pode ser implantada em qualquer ambiente, tendo ou no
servidor de email prprio, mais til.
Faa o download do script perl para envio de email atravs do link
http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v156.zip e descompacte
no diretrio aonde se encontram os plugins do Nagios, ou seja, /usr/local/nagios/libexec.
Aps configurar o script com os dados necessrios, faa o teste de envio com o
seguinte comando:
# bash /usr/local/nagios/libexec/nagiosmail emaildestino@destino.com Teste
Teste

Feito o teste e funcionando vamos as alteraes que devem ser feitas no arquivo
commands.cfg. Onde podemos ver a seguinte configurao:
# 'notify-host-by-email' command definition
define command{
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification
Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress:
$HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail -s
"** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$

Marcio Jos Atansio 23


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
}

# 'notify-service-by-email' command definition


define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification
Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress:
$HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional
Info:\n\n$SERVICEOUTPUT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert:
$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}

Na configurao dos comandos de notificao, h a linha de configurao


chamada command_line. Essa linha ser alterada para a seguite. Note que as variveis
de macro continuam presentes.

# 'notify-host-by-email' command definition


define command{
command_name notify-host-by-email
command_line $USER1$/nagiosmail $CONTACTEMAIL$ "$NOTIFICATIONTYPE$
Host Alert: $HOSTNAME$ is $HOSTSTATE$" "**** Nagios *****\n\nNotification Type:
$NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress:
$HOSTALIAS$\nGroup: $HOSTGROUPNAMES$\nInfo: $HOSTOUTPUT$\n\nDate/Time:
$LONGDATETIME$\n\nComment $HOSTACKAUTHOR$: $HOSTACKCOMMENT$"
}

# 'notify-service-by-email' command definition


define command{
command_name notify-service-by-email
command_line $USER1$/nagiosmail $CONTACTEMAIL$ "$NOTIFICATIONTYPE$
Service Alert: $HOSTNAME$/$SERVICEDESC$ is $SERVICESTATE$" "***** Nagios
*****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost:
$HOSTNAME$\nAddress: $HOSTALIAS$\nGroup: $HOSTGROUPNAMES$\nState:
$SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional
Info:\n\n$SERVICEOUTPUT$\n\nComment $SERVICEACKAUTHOR$: $SERVICEACKCOMMENT$"
}

Note que adicionamos $HOSTGROUPNAMES$ que outra varivel de macro.


Voc pode customizar como desejar e informar o que quiser nos emails de alerta.

Adicionando um novo plugin

Voc lembra do captulo Instalao quando ao final deste, compilamos e


instalamos o servio NRPE? Pois se no lembra, mas conhece, tudo bem. Se no lembra
e no conhece, bom rever este captulo.

Marcio Jos Atansio 24


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Levando em conta que voc lembra ou reviu o captulo, vamos a configurao do
novo plugin. Como j descrevemos anteriormente, o arquivo responsvel por ter os
templates dos comandos que buscam informaes nos hosts o commands.cfg
localizado no diretrio /usr/local/nagios/etc/objects. Edite o arquivo e ver a sintaxe parec
ida com esta:
define command{
command_name <NOME_DO_COMANDO_UTILIZADO_NA_CONFIGURAO_DO_HOST>
command_line $USER1$/<EXECUTVEL> <ARGUMENTO1> <ARGUMENTO2> ...
}
Lembra das variveis que voc pode criar? Lembra de onde vem a varivel
$USER1$? Pois bem, ela vem do arquivo resource.cfg. Vrias outras variveis podem ser
criadas e usadas por voc. Neste caso, abrindo o arquivo resource.cfg veremos que esta
varivel faz referncia ao diretrio /usr/local/nagios/libexec, aonde temos instalados os
plugins e aonde devemos colocar os outros.
Uma aplicao til para a criao de outras variveis quando se utiliza senhas.
Ao invs de ter que ficar salvando a senha de conexo ao daemon toda vez que criar um
novo check um servio, voc deixa isso j salvo e utiliza uma senha nica.
claro que voc pode criar outro diretrio e colocar seus plugins customizados,
mas para que complicar? Voc pode tambm, ao invs de usar a varivel $USER1$,
colocar o caminho completo do <EXECUTVEL>, mas no faz sentido, pelo menos para
mim.
Os argumentos so repassados quando da configurao do check no host e so
delimitado pelo pipe ( | ).
Depois dessa explicao, vamos continuar com a configurao do comando
check_nrpe, editando o arquivo commands.cfg e adicionando as seguintes linhas:
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ $ARG1$
}
De agora em diante, voc pode consultar os hosts que tem o servio NRPE
rodando e efetuar suas checagens, que detalharemos em um prximo captulo. Ao final
deste, quando estiver bem mais habituado, iremos descrever como criar novos plugins, e
detalhar qual o retorno esperado e interpretado pelo Nagios core.

Configurao de Grupos de hosts e servios

Nos arquivos de configurao padro do Nagios, vem dois grupos configurados


que so linux-servers e windows-servers. Esta configurao desses grupos est nos
arquivos localhost.cfg e windows.cfg dentro do diretrio /usr/local/nagios/etc/objects.
Para tornar mais fcil a administrao, vamos criar um arquivo, chamado
groups.cfg em /usr/local/nagios/etc/objects em que vamos criar todos os grupos, tanto
para servios ou hosts e quando configurar um novo host, somente colocar na
configurao do host o grupo que ele pertence.
Primeiro, vamos comentar ou apagar as linhas no arquivo

Marcio Jos Atansio 25


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
/usr/local/nagios/etc/objects/localhost.cfg que cria o grupo linux-servers.
#define hostgroup{
# hostgroup_name linux-servers ; The name of the hostgroup
# alias Linux Servers ; Long name of the group
# members localhost ; Comma separated list of hosts that belong
to this group
# }
Depois, apesar de ainda no ter um host windows configurado, vamos comentar o
arquivo base windows.cfg, na seo que diz respeito a criao do grupo windows-
servers.
#define hostgroup{
# hostgroup_name windows-servers ; The name of the hostgroup
# alias Windows Servers ; Long name of the group
# }
Aps, vamos criar o arquivo /usr/local/nagios/etc/objects/groups.cfg com os
grupos em que ns comentamos nos arquivos.
define hostgroup{
hostgroup_name windows-servers
alias Windows Servers
}

define hostgroup{
hostgroup_name linux-servers
alias Linux Servers
}
Temos que configurar para que o Nagios carregue as configuraes desse novo
arquivo. Adicione ao arquivo /usr/local/nagios/etc/nagios.cfg a seguinte linha.
cfg_file=/usr/local/nagios/etc/objects/groups.cfg
Agora, faa a checagem e se tudo estiver bem, faa o reload.
# service nagios checkconfig
# service nagios reload

O arquivo /usr/local/nagios/etc/objects/templates.cfg j faz referncia esses


grupos, que so herdados atravs da configurao hostgroups. Observer que est no
plural, portanto, um host pode estar em mais de um grupo de host.
Para configurar diretamente no host, adicione o nome hostgroups e ao lado o
grupo(s) que o host pertence. Segue abaixo um exemplo.
define host{
use <TEMPLATE_DE_templates.cfg>
host_name <NOME_DO_HOST>
alias <DESCRIO_DO_HOST>
address <IP>

Marcio Jos Atansio 26


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
hostgroups <GRUPO_CONFIGURADO_EM_groups.cfg>
}

Adicionando um novo host

Basicamente, novos hosts e servios so adicionados de duas formas:


Modo Ativo: O servidor do Nagios consulta o host solicitando informaes. Pode
ser atravs de solicitao ao um software instalado no host (NSClient, NRPE, etc)
em que o Nagios se comunica com ele e pede para executar um comando que
gere as informaes e envie para o Nagios. Outra forma atravs de consulta a
porta do(s) servio(s) a ser(em) monitorado(s).
Modo Passivo: O servidor aguarda que o host envie informaes, que podem ser
providas pelos mesmos comandos executados na forma ativa.
As verificaes, tanto ativas quanto passivas, tem por padro configurado um
intervalo de 5 minutos nas ativas e constatam um problema quando no recebe
informaes neste perodo quanto for passivas. As configuraes de verificao passiva
no vem por padro nos arquivos do Nagios e deve ser adicionado ao template um
modelo.
Neste livro somente abordaremos o Modo Ativo. Futuras revises poderam ter
como proceder para configurar o Modo Passivo do lado cliente e servidor.

Windows
Vamos efetuar o download do client atravs do link
http://www.nsclient.org/nscp/downloads. No momento da redao deste, a ltima verso
a NSCP-0.4.1.101. H vrias verses, escolha a que for mais adequada ao seu ambiente.

Incio da instalao.

Marcio Jos Atansio 27


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Clique em I accept the terms in the License Agreement.

Clique no boto Typical.

Clique somente em Next.

Marcio Jos Atansio 28


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Coloque em Allowed hosts o IP do seu servidor Nagios e em NSClient password


a senha que somente usada quando utilizado via check_nt. Marque todos os modulos,
menos o NSCA.
Aps a instalao do client temos que configur-lo no Nagios para que seja
efetuado as checagens. Mas antes, temos que salvar a senha que configuramos nele
para que no seja necessrio a todo momento que configurar um novo servidor ou servio
ter que digitar a senha. Vamos grav-la atravs de uma varivel interna, lembra como
cria?
Pois bem, vamos editar o arquivo /usr/local/nagios/etc/resource.cfg e adicionar
uma varivel ao final do arquivo:
$USER5$=123456
O contedo da varivel $USER5$ dentro do Nagios 123456 que a senha que
utilizei para instalar o cliente NSClient no servidor Windows. Dessa forma, somente fao
referncia a varivel e no preciso ter que alterar as senhas de todas as checagens
configuradas.
Agora, vamos continuar com configurao do Nagios para que faa as checagens
no servidor Windows. Utilize como base o arquivo
/usr/local/nagios/etc/objects/windows.cfg copiando ele para o nome do host, no meu
caso, fiz uma cpia em /usr/local/nagios/etc/objects/windao.cfg.
Agora, edite o novo arquivo, alterando as informaes do host que esto logo no
incio do arquivo:
define host{
use windows-server
host_name windao
alias Windao Monitorado
address 192.168.1.120
}
No esquea que na configurao de cada comando referenciado o nome do
host ( host_name ). Estes tambm devem ser alterados para o nome correto, que no meu
caso windao. Lembra da senha em que configuramos? Ela tambm tem que ser
configurada no Nagios. Se voc for usar uma senha para cada servidor, o recomendado
que voc configure essa senha em cada arquivo de configurao de host. Sendo assim,
ao final de cada comando, voc tem que adicionar -s <SENHA>. Abaixo descrevo um
Marcio Jos Atansio 29
NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
exemplo para o comando que checa o espao no disco C.
define service{
use generic-service
host_name windao
service_description C:\ Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 -s 123456
}
Ou usando a varivel em que ns criamos.
define service{
use generic-service
host_name windao
service_description C:\ Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 -s $USER5$
}
Caso voc usar a mesma senha para todos os servidor windows que voc utilizar
para o check_nt, voc pode configurar isso no prprio template do comando, no arquivo
/usr/local/nagios/etc/objects/commands.cfg utilizando a varivel do Nagios,
configurada em /usr/local/nagios/etc/resource.cfg
# 'check_nt' command definition
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -s $USER5$ -p 12489 -v
$ARG1$ $ARG2$
}
Ou tambm com a senha diretamente salva.
# 'check_nt' command definition
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -s 123456 -p 12489 -v
$ARG1$ $ARG2$
}
No meu caso, configurei diretamente no commands.cfg, utilizando a varivel
criada em resource.cfg.
Por enquanto, o Nagios no sabe que existe esse novo host, temos que configurar
para que ele efetue o load desse arquivo. Portanto, vamos incluir ele no arquivo principal,
o /usr/local/nagios/etc/nagios.cfg para que faa a leitura do arquivo de configurao do
host.
cfg_file=/usr/local/nagios/etc/objects/windao.cfg
Agora, faa a checagem e se tudo estiver bem, o reload que ir carregar as
configuraes do novo host.
# service nagios checkconfig
# service nagios reload

Marcio Jos Atansio 30


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Acesse a interface web e aguarde ao mnimo 5 minutos, ou force a checagem do
host, clicando no nome dele e em Schedule a check of all services on this host. Adiante
uns 10 segundos no tempo.
OBSERVAO: Pode ocorrer erro na parte de perfmon do Windows 2003. Execute o
comando lodctr /R. Caso queira monitorar um computador com Windows XP, instale o
NSClient++ verso 0.3.9.

Linux
Para servidores Linux, utilizamos o aplicativo NRPE, que alm de estar nos
principais repositrios, tambm podemos compil-lo. E assim o faremos.
Na instalao do servidor Nagios, ns j instalamos o NRPE, mas na opo de
modo cliente, onde ele ir consultar um host que tenha instalado o NRPE no modo
servidor. Lembrando que tambm necessrio estar instalado os plugins. Em captulos
anteriores foi descrito como proceder com isso.
Aps instalar os plugins, faa o download do NRPE atravs do endereo
http://sourceforge.net/projects/nagios/files/nrpe-2.x/. Na criao deste documento, no
NRPE est na verso 2.14.
Descompacte o pacote e proceda com a forma padro de compilao de pacotes
em ambientes Linux like.
# tar zxvf nrpe-X.X.tar.gz
# cd nrpe-X-X
# ./configure
# make
# make install

Aps, vamos colocar cada arquivo no seu devido lugar e configurar a inicializao
do daemon.
# cd nrpe-X-X
# mkdir /usr/local/nagios/etc
# mkdir /usr/local/nagios/bin
# cp sample-config/nrpe.cfg /usr/local/nagios/etc
# cp src/nrpe /usr/local/nagios/bin
# cp init-script /etc/rc.d/init.d/nrpe
# chmod +x /etc/rc.d/init.d/nrpe
# chkconfig --add nrpe
# chkconfig nrpe on

Abra o arquivo /usr/local/nagios/etc/nrpe.cfg para edio. Vamos configurar


quais IPs esto liberados para efetuar consultas ao host e o nome dos comando em que
sero executados e os resultados enviados ao servidor Nagios.
Agora necessrio configurar o IP do servidor em que permitido executar os
comandos em /usr/local/nagios/libexec/ na opo allowed_hosts.

Marcio Jos Atansio 31


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Temos tambm que verificar os comando configurados no atravs da configurao
no final do arquivo, chamado command [ NOME_COMANDO ] =
/usr/local/nagios/libexec/COMANDO.
Por padro, os seguinte comando vem pr configurados:
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p
/dev/hda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s
Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
Vamos alterar a linha:
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p
/dev/hda1

Para:
command[check_root]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% /
Voc pode configurar quando discos quiser, mas lembre-se, sempre com nomes
diferentes.
O nome que est entre colchetes ser usado pelo servidor Nagios para solicitar
uma consulta. Portanto, se mudar o nome, lembre-se de usar o mesmo nome na
configurao do host no servidor Nagios.
Inicie o servio atravs do comando:
# service nrpe start

Agora, temos que configurar o servidor Nagios para que efetue as checagens neste
host. Vamos utilizar o mesmo arquivo /usr/local/nagios/etc/objects/windows.cfg como
base.
Primeiro altere tudo o que for check_nt, para check_nrpe. Se voc lembra do
captulo de instalao do servidor Nagios, ns j criamos no arquivo commands.cfg o
comando check_nrpe.
Na descrio do host, que so as primeiras linhas, altere para o IP do servidor
Linux que tem instalado o NRPE, crie o grupo Linux conforme explicado no captulo
anterior e coloque a descrio do host. No meu caso, o nome do host, configurado nas
primeiras linhas linuxserver.
Agora, edite as checagens no host da seguinte forma:
define service{
use generic-service
host_name linuxserver
service_description Espaco no Root
check_command check_nrpe!check_root
}
Podemos fazer um teste executando a checagem direto na linha de comando da
seguinte forma:
# /usr/local/nagios/libexec/check_nrpe -H IP_DO_HOST_RECEM_INSTALADO_NRPE
# NRPE v2.14

Como pode observar, ele ir retornar a verso. Caso d falha, sinal de dois

Marcio Jos Atansio 32


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
possveis problemas que porta bloqueada, que nesse caso a 5666 TCP ou o IP
configurado em /usr/local/nagios/etc/nrpe.cfg no est correto.
Caso retorne a verso correta, podemos fazer o segundo teste, dessa vez
solicitando uma checagem, atravs do comando:
# /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_load
OK - load average: 0.00, 0.00, 0.00|load1=0.000;15.000;30.000;0;
load5=0.000;10.000;25.000;0; load15=0.000;5.000;20.000;0;

Configurao de contatos

No que diz respeito aos contatos, eles nem sempre precisam de acesso via web.
Portanto, criar um contato em contacts.cfg no garantir que ele possa visualizar o
estado do host na interface externa. Essa permisso se d criando o login, atravs do
comando htpasswd em /usr/local/nagios/etc/htpasswd.users.
Os contatos tambm podem receber alertas de certos grupos de hosts ou mesmo
criar um grupo de contatos. Isso facilita em ambientes de grande escala, onde no
necessrio colocar o contato em cada host, somente no grupo especfico ele vai receber
os alertas e caso tenha login e senha, ir ver na interface web os hosts em que ele
responsvel.
Tambm pode-se colocar o contato em um template e atravs da herana quando
se cria um novo host, este j estar configurado com o contato. O nagiosadmin um
contato que j tem permisso de visualizao e est configurado no arquivo
/usr/local/nagios/etc/objects/contacts.cfg. Neste arquivo tambm tem os grupos de
contatos.
Primeiramente, vamos definir o conta de email, configurando a opo email nas
configuraes do contact_name nagiosadmin. Observe que ele herda vrias
configuraes de generic-contact. Sugiro que olhe as configuraes presentes, pois
algumas voc pode sobrescrever reconfigurando-as na definio do contato.
Logo abaixo tem a configurao dos grupos, veja que o nagiosadmin est
configurado no contactgroup_name chamado admins. D uma olhada no arquivo
/usr/local/nagios/etc/objects/templates na configurao do template de qualquer host.
Ver que ele faz referncia na opo contact_groups ao grupo admins configurado neste
arquivo. Mais a frente veremos como criar um arquivo com somente os grupos, deixando
a administrao bem mais fcil.
Depois dessa explicao das configuraes de contato, vamos praticar um pouco
criando um novo contato. Vamos cham-lo de suporte. Primeiro, temos que cri-lo no
arquivo contacts.cfg descrevendo as seguintes linhas:
define contact{
use generic-contact
contact_name suporte
alias Suporte de TI
email suporte@dominio.com
}
Se esta configurao est parecendo estranha, por que voc no lembrou ou no
entendeu. Portanto, retorne ao captulo Localizao dos arquivos que recordar.

Marcio Jos Atansio 33


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Neste momento, o que voc fez foi somente criar um contato, nada mais. Ele no
tem nenhuma ligao com o Nagios e nem sequer recebe qualquer notificao.
Agora, vamos fazer com que ele receba notificaes, adicionando ele ao grupo
admin.
define contactgroup{
contactgroup_name admins
alias Nagios Administrators
members nagiosadmin,suporte
}
Como ainda est se habituando com os arquivos de configurao e sintaxe, bom
sempre tomar nota dos comandos de verificao que vamos recapitular.
Verificar se as configuraes esto corretas:
# service nagios checkconfig

Caso o comando anterior retorne erro, verificar qual arquivo e configurao est
incorreta:
# service nagios checkconfig

Estando tudo correto, a partir desse momento, o email suporte@dominio.com


estar recebendo os alertas. Se retornou algum erro, essa a hora de praticar o seu
ingls e procurar pelo problema. Erros tambm fazem parte do aprendizado.
Mas e a interface web? Bem, este contato ainda no tem acesso ela, mas vamos
providenciar. Primeiro temos que criar o login e senha para este. Deve ser o mesmo
configurado na opo contactname_name. Faa o seguinte comando em que foi usado
para criar o login e senha do usurio nagiosadmin em captulos anteriores:
# htpasswd -c /usr/local/nagios/etc/htpasswd.users suporte

Criado esse novo login, vamos efetuar o teste acessando a interface web. Note que
voc pode executar qualquer comando que diz respeito ao host que em que esse login
administra.
Caso queira que ele tenha acesso full interface web do Nagios, voc deve
configurar o login no arquivo cgi.cfg em que h vrios tpicos diferentes que descrevemos
abaixo.
authorized_for_system_information - Ver informaes do estado do servio Nagios.
authorized_for_configuration_information - Ver informaes da configurao do
host e servios.
authorized_for_system_commands - Efetuar comandos de parar e reiniciar os
processos do Nagios.
authorized_for_all_services - Acesso todos os servios.
authorized_for_all_hosts - Acesso todos os hosts.
authorized_for_all_service_commands - Acesso a todos os comandos para os
servios.
authorized_for_all_host_commands - Acesso a todos os comandos para os hosts.
Dessa forma, ele ter os mesmos privilgios do login nagiosadmin. Muito cuidado
com isso, pois dessa forma, tambm ser possvel parar e reiniciar o servio do Nagios.
Mas e se voc somente quer que o login tenha acesso para visualizar os estados
dos servios e hosts? Para isso, podemos utilizar a configurao no arquivo cgi.cfg
chamada authorized_for_read_only que vem comentada por padro. Vamos colocar o

Marcio Jos Atansio 34


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
login suporte como somente leitura.
Note que agora, o menu ao lado direto, que aparecia quando voc clicava em hosts
ou service est com a mensagem Your account does not have permissions to execute
commands. Isso importante quando voc um grupo de colaboradores em que no
devem desativar um alerta.
E se voc quiser somente permitir acesso um host especfico, como
configuramos no captulo anterior, ns temos que criar um grupo para esse login,
adicion-lo somente ele e sobrescrever a configurao contact_groups, que no template
est para nagiosadmin, na configurao do host.
Vamos fazer com o login suporte somente tenha acesso ao host windows. Primeiro
passo configurar um novo grupo. Para isso, v ao arquivo contacts.cfg e crie o novo
grupo.
define contactgroup{
contactgroup_name suporteti
alias Suporte de TI
members suporte
}
Somente a opo alias pode ter espaos e separe os membros em members por
vrgula.
Aps, deve-se configurar no host que ele pertence outro grupo(s) de contato.
Adicione a configurao do host, a opo contact_groups.
define host{
use windows-server
host_name windows
alias windows
address 192.168.1.73
contact_groups suporte
}
Efetue a verificao dos arquivos de configurao se est tudo correto e o reload
das regras.
Neste momento, o login suporte somente estar recebendo alertas dos servios do
host windows e somente visualizar os seus servios. Lembra que foi configurado no
arquivo cgi.cfg este login somente para leitura? Ento, voc pode retirar o login ou
comentar a linha que authorized_for_read_only para que ele possa tambm efetuar
comandos nos servios e no host.
O login nagiosadmin continua com acesso full ao sistema por que no arquivo
cgi.cfg ele est presente em todas as configuraes de authorized_* por padro, mas no
receber alertas. Para que ele tambm receba os alertas, voc deve adicionar ele
tambm separado por vrgua (suporte,admins).

Mapa do Nagios

O Nagios tem uma opo em que voc tem um mapa. Este mapa no diz respeito

Marcio Jos Atansio 35


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
a sua rede em si e sim como o Nagios v e chega em cada host monitorado. Para que
possamos configurar essa hierarquia, utilizamos a opo parents.
Efetuando essa configurao, alm de termos o nosso mapa do Nagios correto,
tambm os alertas sero mais acertivos, uma vez que poder ser identifica quando um
host est com o estado DOWN ou UNREACHABLE.
Est configurao est disponvel tanto para host quanto para o servio. Conforme
os exemplos citados acima, vamos demonstrar como deve ser configurado.
define host{
use windows-server
host_name windows
alias windows
address 192.168.1.73
contact_groups suporte
parents nagios
}
Voc pode configurar mais parents, sempre utilizando o host_name configurado,
separados por vrgula.

Criando um plugin

O Nagios tem uma vasta documentao para a criao de plugins. Os plugins


podem ser criados em qualquer linguagem de programao ou script. O que deve ser
levado em considerao somente o cdigo de retorno e as informaes que quer
mostrar e gravar no Nagios. Resumidamente, o que temos seguinte:

Retorno Status do Servio Descrio


0 Ok O servio est com as mtricas fora dos escopos de warning ou
critical.

1 Warning O servio est com a mtrica em warning

2 Critical O servio est com a mtriac em critical

3 Unknown O servio retornou um valor no interpretado.

A lgica que podemos utilizar, no levando em considerao o sistema operacional


e a linguagem a seguinte:
1 - Como extrair a informao atual do host/servio;
2 - Quais os nveis aceitveis;
3 - Informaes de retorno;
4 - Criao do plugin.
Como exemplo, vamos fazer um script que possa mostrar a memria utilizada por

Marcio Jos Atansio 36


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
um host linux, utilizando shell script. Abaixo descrevemos o script:
#!/bin/bash
# Plugin Memory Used
# Marcio Jose Atanasio <marcioatanasio@gmail.com>
# 20130121
#

# <1 - Como extrair as informaes atuais do host/servio


MEMFREE=`expr $(( $(grep ^MemFree /proc/meminfo | awk '{print $2}') / 1024 ))`
BUFFERS=`expr $(( $(grep ^Buffers /proc/meminfo | awk '{print $2}') / 1024 ))`
CACHED=`expr $(( $(grep ^Cached /proc/meminfo | awk '{print $2}') / 1024 ))`
MEMTOTAL=`expr $(( $(grep ^MemTotal /proc/meminfo | awk '{print $2}') / 1024 ))`
USED=`expr $(( $MEMTOTAL - $MEMFREE - $BUFFERS - $CACHED ))`
# 1>

if [ "$1" = "info" ] || [ "$1" = "" ]; then


echo "Total : $MEMTOTAL"
echo "Used ( default ) : $USED"
echo "Used + Buffers ( "ub" ) : "`expr $(( $USED + $BUFFERS ))`
echo "Used + Buffers + Cached ( "ubc" ) : "`expr $(( $USED + $BUFFERS +
$CACHED))`
echo -e "\n./check_mem.sh <warning memory MB> <critical memory MB> <metric
(u,ub,ubc)>\n"
else
# <2 Quais os nveis aceitveis - Argumentos $1, $2 e $3 do script
if [ "$3" = "ub" ]; then
VLRMETRIC=`expr $(( $USED + $BUFFERS ))`
else
if [ "$3" = "ubc" ]; then
VLRMETRIC=`expr $(( $USED + $BUFFERS + $CACHED ))`
else
if [ "$3" = "u" ]; then
VLRMETRIC=$USED
else
echo "How metric (u, uc or ucb)?"
fi
fi
fi

if [ $VLRMETRIC -gt $2 ]; then


echo "Critical - Metric $METRIC $3 = $VLRMETRIC MB ( Warning = $1MB /

Marcio Jos Atansio 37


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Critical = $2MB / Total = $MEMTOTAL) | Memory;$VLRMETRIC;$1;$2;0;$MEMTOTAL "
exit 2
else
if [ $VLRMETRIC -gt $1 ]; then
echo "Warning - Metric $METRIC $3 = $VLRMETRIC MB ( Warning = $1MB
/ Critical = $2MB / Total = $MEMTOTAL) | Memory;$VLRMETRIC;$1;$2;0;$MEMTOTAL"
exit 1
else
echo "Ok - Metric $METRIC $3 = $VLRMETRIC MB ( Warning = $1MB /
Critical = $2MB / Total = $MEMTOTAL) | Memory;$VLRMETRIC;$1;$2;0;$MEMTOTAL"
exit 0
fi
fi
fi
# 2>

Executando o script, teremos o seguinte retorno:

# ./check_mem.sh 1000 2000 ub


Critical - Metric ub = 4589 MB ( Warning = 1000MB / Critical = 2000MB / Total =
11657) | Memory;4589;1000;2000;0;11657

O retorno pode ser dividido em duas partes. A primeira a esquerda do pipe ( | ) diz
respeito ao que ser mostrado na interface web do Nagios. Ao lado direito, diz respeito a
informaes utilizadas internamente pelo Nagios, que so utilizadas para a gerao de
grficos e informar as mtricas utilizadas. Os campos, separados por ponto e vrgula ( ; )
dizem respeito na sequncia:
- Label: Nome do plugin. O que est sendo retornado;
- Valor e Unidade de Medida: Neste exemplo, somente estamos informando o valor total,
ento assumido um valor float ou int. Unidades de medida vlidas so %, s (segundos),
B (Bytes) ou tambm KB, MB e TB ou c (contador contnuo);
- Valor de warning;
- Valor de critical;
- Valor mnimo;
-Valor mximo.
Os valores de mnimo mximo no so necessrios caso a Unidade de Medida
seja %.
Aps criar o plugin e efetuar os testes de retorno, copie ele para o diretrio em que
est configurado nas variveis do arquivos resources.cfg, em que estamos tratando em
/usr/local/nagios/libexec. Siga os passos do captulo Adicionando um novo plugin.

Marcio Jos Atansio 38


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

O que so brokers

Para o Nagios, brokers so programas auxiliares que coletam informaes


diretamente do Core e podem ser utilizadas por outras aplicaes para gerar grficos,
demonstrar de outras formas os alertas, efetuar chegagens, gravar as informaes em
banco de dados, etc. H vrios brokers, tais como NDO, Merlin e MK Livestatus.
No nosso exemplo, iremos instalar o MK Livestatus. Ele ser utilizado pelo Nagvis
para receber as informaes diretamente do Core do Nagios e exibir em seu painel de
alertas, que veremos nos captulos seguintes.
Inicialmente, vamos efetuar o download atravs do endereo http://mathias-
kettner.de/check_mk_download.html. Atualmente est na verso 1.2.2p3 e o arquivo o
mk-livestatus-*.tar.gz Standalone source code.
Descopacte e arquivo, compile e instale:
# tar zxvf mk-livestatus-1.2.2p3.tar.gz
# cd mk-livestatus-1.2.2p3
# ./configure
# make all
# make install all

Aps compilar, o broker ser instalado em /usr/local/lib/mk-livestatus.


Agora vem a parte da configurao do broker no Nagios. Edite as seguintes linhas
no arquivo /usr/local/nagios/etc/nagios.cfg.
broker_module=/usr/local/lib/mk-livestatus/livestatus.o
/usr/local/nagios/var/rw/live
Recarregue as configuraes do servio do Nagios:
# service nagios reload

Para verificar se est funcionando, podemos efetuar informaes diretamente ao


Core do Nagios atravs do comando:
# echo 'GET hosts' | unixcat /usr/local/nagios/var/rw/live

Mapa de rede com Nagvis

Como foi dito em captulos anteriores, o mapa do Nagios trs a viso dele sobre os
hosts e servios monitorados, ou seja, por onde suas solicitaes passam.
O Nagvis a ferramenta que atravs do MK Livestatus ir buscar informaes
sobre servios e hosts e demonstr-las sobre qualquer imagem que deseja. Assim, voc
pode tirar uma foto do seu datacenter ou desenhar o mapa de rede que desejar e ter
pontos verdes, amarelos e vermelhos que com o cursor sobre, tragam informaes
recebidas pelo Nagios.
Vamos iniciar efetuando o download do Nagvis atravs do link
http://www.nagvis.org/downloads. No atual momento da gerao desse artigo, a verso
a 1.7.10.
Vamos instalar algumas dependncias que podem no estar no seu sistema
operacional:

Marcio Jos Atansio 39


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
# yum -y install php-gd php-mbstring php-gettext graphviz php-pdo

Descompacte o arquivo em que foi efetuado download e execute o instalador:


# tar zxvf nagvis-1.7.10.tar.gz
# cd nagvis-1.7.10
# chmod +x install.sh
# ./install.sh -o

A opo -o para no instalar arquivos de configurao demo.


Aps a instalao, efetue o reload do servio web Apache:
# service httpd restart

Agora s acessar atravs do brownser atravs do link


http://IP_DO_SEU_SERVIDOR/nagvis. O usurio e senha padro admin.
Pode observar que ainda h configuraes de demo na instalao padro. Como
no iremos trabalhar com rotation pools, que para rotacionar os mapas configurados,
vamos desativar essa opo. Para isso edite o arquivo
/usr/local/nagvis/etc/nagvis.ini.php e na linha 285, retire o comentrio ( ; ) e desativa
com a opo 0 (zero), ficando a linha da seguinte forma:
showrotations=0
Agora vamos configurar o backend que ir trazer as informaes do Nagios. Em
nosso projeto, ns instalamos anteriormente o MK Livestatus, que iremos configurar no
Nagvis agora. Clique em Options -> Manage Backends:

Agora, em Set default backend, escolha live_1:

Clique em Save.
Agora todos os objetos que trazem informaes do Nagios para o Nagvis j iro vir
com o backend do MK Livestatus.
Para a criao dos mapas, voc precisa sempre lembrar que um mapa sempre tem
que ter um background.
Vamos criar um background que ser o nosso mapa de rede. Abaixo o desenho
efetuado:

Marcio Jos Atansio 40


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade

Vamos ento criar o background, clicando em Options -> Manager Backgrounds.


Utilize a opo Upload background image:

Obs.: O nome do arquivo no pode conter espaos.

Escolha a imagem criada clicando em Browse e aps clique em Upload.


Aps, vamos criar o mapa com base na imagem de fundo que enviamos.
Clique em Options -> Manage Maps.

A seguinte tela ser apresentada:

Marcio Jos Atansio 41


NAGIOS APLICADO Funes e configuraes voltadas aplicabilidade
Em Create Map, coloque o nome do mapa que deseja criar. Ex.: Rede
Em Map Iconset, voc pode deixar pr determinado o tamanho dos cones de
alerta dos servios e hosts. Deixe como std_medium.
Em Background, coloque o seu arquivo de imagem recm adicionado ao Nagvis.
Clique em Create.
J criamos a imagem e o mapa, falta agora buscar as informaes do Nagios. Para
isso, vamos adicionar os cones de alerta.
Clique em Open -> Rede.
Aps, clique em Edit Map. Voc ver as seguintes opes:

Lock/Unlock all: Bloquear a movimentao dos cones de alerta.


Show/Hide Grid: Exibir ou no malha.
Add Icon: Adicionar cone. Corresponde a host, servio, host group, service group
ou outro mapa que voc criou.
Add Line: Para adicionar ao invs de um con, uma linha que mostrar alertas
sobre o servio. Muito utilizada para os servios de ping.
Add Special: Objetos de desenho do prprio Nagvis. No tem demonstrao de
alertas.
Agora voc pode colocar os cones de cada host seu na forma que quiser. Os
cones em que voc adicionar como servio, eles iram mudar de cor conforme o estado
do servio. Nos demais, que dizem respeito objetos que tem vrios servios, o cone
mudar de cor caso algum dos servios esteja com alerta.

Marcio Jos Atansio 42

You might also like