Preparando o Nagios 3 para receber os arquivos de configuração

Já faz alguns anos que o Nagios vem sendo, largamente, utilizado para o monitoramento de hosts e serviços, mas seu processo de configuração nem sempre é simples, pois este processo é  baseado na edição de vários arquivos texto; além disto, para configurarmos o Nagios precisamos conhecer o ambiente a ser monitorado, ou seja, dá trabalho.

Após realizar várias instalações e customizações, passei a adotar um padrão de instalação e configuração, neste utilizo para cada objeto um arquivo de configuração separado, ou seja, cada host, cada contato e serviço possuem seu próprio arquivo. Apesar de, inicialmente, ser mais trabalhoso este método facilita a reutilização de configurações e minimiza a probabilidade de erros.

Desta forma, o objetivo deste artigo é explicar e demonstrar o que deve ser feito para prepararmos o Nagios antes de utilizamos esse  padrão de configuração e nos próximos artigos explicarei como criar os objetos utilizados pelo Nagios.

Iniciaremos nosso trabalho removendo do arquivo /etc/nagios3/nagios.cfg, todas as linhas que apontam para algum arquivo ou diretório de configuração. Então vamos a editar o arquivo.

sudo nano /etc/nagios3/nagios.cfg

Com o arquivo aberto, devemos verificar se as linhas abaixo estão comentadas, senão estiverem devemos comentá-las.

#cfg_file=/etc/nagios3/objects/commands.cfg
#cfg_file=/etc/nagios3/objects/contacts.cfg
#cfg_file=/etc/nagios3/objects/timeperiods.cfg
#cfg_file=/etc/nagios3/objects/templates.cfg

# Definitions for monitoring a Windows machine
#cfg_file=/etc/nagios3/objects/windows.cfg

# Definitions for monitoring a router/switch
#cfg_file=/etc/nagios3/objects/switch.cfg

# Definitions for monitoring a network printer
#cfg_file=/etc/nagios3/objects/printer.cfg

#cfg_dir=/etc/nagios3/servers
#cfg_dir=/etc/nagios3/printers
#cfg_dir=/etc/nagios3/switches
#cfg_dir=/etc/nagios3/routers

Continuando, devemos verificar se a linha abaixo está descomentada e senão estiverem devemos descomentá-la

##
# Configuracoes Personalizadas
##
cfg_dir=/etc/nagios3/conf.d

Bem, já podemos iniciar o próximo passo, que consiste em criar a estrutura para receber os novos arquivos de configuração. Desta forma, devemos criar alguns subdiretórios dentro do diretório /etc/nagios3/conf.d/

cd /etc/nagios3/conf.d/
sudo mkdir commands contacts hostgroups \
hosts network servicegroups services templates timeperiods

Cada diretório armazenará um tipo específico de arquivo, mas antes de utiliza-los devemos realizar alguns ajuste nas permissões da pasta /etc/nagios3/conf.d/

chmod 775 -R /etc/nagios3/conf.d/
chown -R nagios:nagios /etc/nagios3/conf.d/
chmod +s -R /etc/nagios3/conf.d/

Finalmente, podemos mover os arquivos de configuração, criados pelo instalado do Nagios, para as novas pastas.

mv contacts_nagios2.cfg  contacts
mv generic-host_nagios2.cfg  hosts
mv localhost_nagios2.cfg  hosts
mv generic-service_nagios2.cfg  services
mv hostgroups_nagios2.cfg  hostgroups
mv services_nagios2.cfg  services
mv timeperiods_nagios2.cfg  timeperiods
mv extinfo_nagios2.cfg  hosts/


Com isto finalizamos o processo de customização básica dos diretórios,
mas antes de prosseguir com o processo de configuração devemos verificar
se, após os ajustes, o Nagios continua funcionando corretamente. Podemos
utilizar o comando abaixo para realizar esta verificação. 


sudo /usr/sbin/nagios3 -v /etc/nagios3/nagios.cfg

Este comando deve gerar uma saída semelhante à:

...
Checking time periods...
	Checked 4 time periods.
Checking for circular paths between hosts...
Checking for circular host and service dependencies...
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

E como podemos observar nas linhas abaixo, até este ponto, não há  nenhum erro.

Total Warnings: 0
Total Errors:   0


Logo, podemos reiniciar o Nagios 


sudo service nagios3 reload

Com isto finalizamos o processo e já podemos iniciar a criação dos objetos utilizados para monitorar o nosso ambiente. Nos próximos artigos explicarei como criar estes arquivos e como adicionar os hosts e os serviços a serem monitorados pelo Nagios.