NOTA: O
Nagios não depende do
NDOUtils para funcionar, decorrente a isso recomendo que você instale o NDOUtils apenas se for necessário à interação do Nagios com alguma outra aplicação ou interface que solicite informações de algum banco de dados, como por exemplo o NAGVIS.
A única função do NDOUtils é salvar em banco de dados todos os acontecimentos do Nagios, que por padrão salva tudo em log.
Instalando dependências:
# apt-get install mysql-server libmysqlclient15-dev
Obtendo fontes do NDOUtils:
# cd /opt
# wget http://downloads.sourceforge.net/project/nagios/ndoutils-1.x/ndoutils-1.4b9/ndoutils-1.4b9.tar.gz
# tar zxvf ndoutils-1.4b9.tar.gz
# cd /opt/ndoutils-1.4b9/
Compilando NDOUtils:
# ./configure --enable-mysql --disable-pgsql --with-ndo2db-user=nagios --with-ndo2db-group=nagios
# make
Criando base de dados do NDOUtils:
# cd /opt/ndoutils-1.4b9/db/
# mysqladmin --user=root -p"senha" create nagios
# mysql -u root -p nagios < mysql.sql
# ./installdb -u root -p senha do mysql -h 127.0.0.1 -d nagios
Gerando arquivos de configuração:
# cd /opt/ndoutils-1.4b9/src/
# cp ndomod-3x.o ndo2db-3x log2ndo file2sock /usr/local/nagios/bin/
# cp ndomod-3x.o /usr/local/nagios/bin/ndomod.o
# cd /opt/ndoutils-1.4b9/config/
# cp ndo2db.cfg-sample ndomod.cfg-sample /usr/local/nagios/etc/
# cd /usr/local/nagios/etc/
# mv ndo2db.cfg-sample ndo2db.cfg
# mv ndomod.cfg-sample ndomod.cfg
# chown nagios.nagios ndo*
Alterando Nagios para trabalhar com o NDOUtils
Edite o arquivo
nagios.cfg localizado na pasta /usr/local/nagios/etc, localize as entradas:
# vim /usr/local/nagios/etc/nagios.cfg
event_broker_options=-1
broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg
Caso as mesmas estejam comentadas, descomente-as e deixe da forma com estão acima. Ou as insira caso não existam.
Criando arquivo de configuração do NDOUtils (ndo2db.cfg)
Movendo arquivo original:
# mv /usr/local/nagios/etc/ndo2db.cfg /usr/local/nagios/etc/ndo2db-cfg-original
Gerando novo arquivo:
# vim /usr/local/nagios/etc/ndo2db.cfg
Insira o seguinte conteúdo:
lock_file=/usr/local/nagios/var/ndo2db.lock
ndo2db_user=nagios
ndo2db_group=nagios
socket_type=tcp
socket_name=/usr/local/nagios/var/ndo.sock
tcp_port=5668
use_ssl=0
db_servertype=mysql
db_host=localhost
db_port=3306
db_name=nagios
db_prefix=nagios_
db_user=root
db_pass=senha do mysql
max_timedevents_age=1440
max_systemcommands_age=10080
max_servicechecks_age=10080
max_hostchecks_age=10080
max_eventhandlers_age=44640
max_externalcommands_age=44640
debug_level=0
debug_verbosity=1
debug_file=/usr/local/nagios/var/ndo2db.debug
max_debug_file_size=1000000
Criando arquivo de configuração do NDOUtils (ndomod.cfg)
Movendo arquivo original:
# mv /usr/local/nagios/etc/ndomod.cfg /usr/local/nagios/etc/ndomod.cfg-original
Gerando novo arquivo:
# vim /usr/local/nagios/etc/ndomod.cfg
Insira o seguinte conteúdo:
instance_name=nagios
output_type=tcpsocket
output=127.0.0.1
tcp_port=5668
use_ssl=0
output_buffer_items=5000
buffer_file=/usr/local/nagios/var/ndomod.tmp
file_rotation_interval=14400
file_rotation_timeout=60
reconnect_interval=15
reconnect_warning_interval=15
data_processing_options=-1
config_output_options=2
Iniciando o NDOUtils:
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
Obs.: Para que o serviço inicialize automaticamente, insira essa linha no arquivo rc.local:
# vim /etc/rc.local
/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
Reinicie o Nagios:
# /etc/init.d/nagios restart
Verificando status do serviço:
# cat /usr/local/nagios/var/nagios.log | grep ndomod
Procure pela entrada do NDO.