Agora temos que configuarar o Nagios. Como já dito anteriormente, o Nagios funciona com vários arquivos de configuração, um dependendo do outro pra funcionar, os arquivos mais importantes são:
OBS: Essa parte do artigo serve tanto para o Debian quando Slackware.
cgi.cfg
Arquivo de configuração dos scripts de execução do Nagios, edite-o com seu editor de texto favorito. vá em:
use_authentication=1 # Quando essa opção está como 0, desativa o pedido de login e senha, vamos deixá-la como default.
host.cfg
Coleta informações sobre os dispositivos de rede (computador, switch, impressora, roteador).
Exemplo:
# Default gateway host definition
define host{
use generic-host ; Name of host template to use
host_name gw # Nome do host a ser monitorado
alias Default Gateway # "Apelido" do host a ser monitorado
address 192.168.1.1 # Ip do host a ser monitorado
check_command check-host-alive # Forma de checagem do host
max_check_attempts 20 # Número máximo de vezes que o programa irá checar pelo serviço até reportar um erro.
notification_interval 60 # Intervalo de tempo que será enviado uma notificação ao adminstrador do serviço.
notification_period 24x7 # Período de Notificação
notification_options d,u,r # Tipo de Notificação (d = down, u = up e r = recovery)
}
hostgrup.cfg
Coleta informações de grupos de equipamentos (computadores, switch, impressoras) existentes em sua rede.
Exemplo:
# Default gateway host group definition
define hostgroup{
hostgroup_name gateways # Nome do Grupo
alias Routers and Gateways # Apelido para o grupo
contact_groups router-admins # Contatos para receber as informações do grupo
members gw # Membros pertencentes ao grupo, para adicionar mais membros é só separa-los por (,) vírgula
}
É importante salientar que gateways terá que existir no arquivo de configuração hosts.cfg e router-admins terá que existir no arquivo de configuração contactgroups.cfg.
contacts.cfg
Determina quem vai ser avisado caso haja algum problema com na rede.
# 'nagios' contact definition
define contact{
contact_name nagios
alias Nagios Admin
service_notification_period 24x7
host_notification_period 24x7 #define o período de monitoramento do serviço/host, 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 nagios-admin@localhost
pager pagenagios-admin@localhost
}
contactgroup.cfg
Os contatos divididos em grupos.
Exemplo:
# 'router-admins' contact group definition
define contactgroup{
contactgroup_name router-admins
alias Router Technicians
members nagios
}
service.cfg
Determina qual tipo de serviço será monitorado na máquina.
checkcommands.cfg
Configura os plugins.
nagios.cfg
Arquivo de configuração principal do Nagios, nele se encontram todas as configurações básicas do mesmo.
Verificando erros na configuração do Nagios:
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Onde:
- /usr/local/nagios/bin/nagios --> caminho do binário do Nagios
- -v --> parâmetro usado na verificação da configuração do Nagios (mostra se existe algum erro)
- /usr/local/nagios/etc/nagios.cfg --> caminho do arquivo de configuração do Nagios
Se estiver usando Debian:
Se o resultado do comando acima for:
# nagios -v nagios.cfg
Nagios 2.5
Copyright (c) 1999-2003 Ethan Galstad (nagios@nagios.org)
Last Modified: 06-02-2003
License: GPL
Reading configuration data...
Running pre-flight check on configuration data...
Checking services...
Checked 16 services.
Checking hosts...
Checked 3 hosts.
Checking host groups...
Checked 3 host groups.
Checking contacts...
Checked 2 contacts.
Checking contact groups...
Checked 1 contact groups.
Checking service escalations...
Checked 0 service escalations.
Checking host group escalations...
Checked 0 host group escalations.
Checking service dependencies...
Checked 0 service dependencies.
Checking host escalations...
Checked 0 host escalations.
Checking host dependencies...
Checked 0 host dependencies.
Checking commands...
Checked 24 commands.
Checking time periods...
Checked 4 time periods.
Checking for circular paths between hosts...
Checking for circular service execution dependencies...
Checking global event handlers...
Checking obsessive compulsive service processor command...
Checking misc settings...
Total Warnings: 0
Total Errors: 0
Lembre-se que os "checking" variam de sistema pra sistema, o principal a ser verificado são os totais de erros e warnings.
Levantando o Nagios:
# /usr/local/nagios/bin/nagios -c /usr/local/nagios/etc/nagios.cfg -d
Onde:
- /usr/local/nagios/bin/nagios --> caminho do binário do Nagios;
- -c --> faz o nagios ler o seu arquivo de configuração;
- /usr/local/nagios/etc/nagios.cfg --> caminho do arquivo de configuração do Nagios;
- -d ---> faz o Nagios funcionar como daemon.
Agora vamos startar o serviço:
Debian:-
# /etc/init.d/nagios restart
Slackware:
# /usr/local/nagios /bin/nagios -d /usr/local/nagios/etc/nagios.cfg