Instalação e Configuração do Nagios com Centreon e de Cliente Nagios com Centreon no Debian Squeeze

E ai galera, aqui vou abordar a instalação e a configuração de um Servidor Nagios com um FrontEnd chamado Centreon aonde podemos fazer toda a configuração do Nagios sem precisar editar os arquivos de configuração (“Depois do Nagios Instalado”) e vou abordar também a configuração de um cliente para o Nagios com Centreon.

Nagios é uma popular aplicação de monitoração de rede de código aberto distribuída sob a licença GPL. Ele pode monitorar tanto hosts quanto serviços, alertando-o quando ocorrerem problemas e também quando os problemas forem resolvidos.

O Nagios foi originalmente criado sob o nome de Netsaint, foi escrito e é atualmente mantido por Ethan Galstad, junto com uma equipe de desenvolvedores que ativamente mantém plugins oficiais e não-oficiais.

Nagios primeiramente foi escrito para o sistema operacional Linux, mas pode rodar em outros Unixes também.

Visão Geral

  • Monitora serviços de rede (SMTP, POP3, HTTP, NNTP, ICMP, SNMP)
  • Monitora recursos de computadores ou equipamentos de rede (carga do processador, uso de disco, logs do sistema) na maioria dos sistemas operacionais com suporte a rede, mesmo o Microsoft Windows com o plugin NRPE_NT.
  • Monitoração remota suportada através de túneis criptografados SSH ou SSL.
  • Desenvolvimento simples de plugins que permite aos usuários facilmente criar seus próprios modos de monitoração dependendo de suas necessidades, usando a ferramenta de desenvolvimento da sua escolha (Bash, C, Perl, Python, PHP, C#, etc.)
  • Checagem dos serviços paralelizadas, ou seja, se você tiver muitos itens monitorados não há risco de alguns deles não serem checados por falta de tempo.
  • Capacidade de definir a rede hierarquicamente definindo equipamentos “pai”, permitindo distinção dos equipamentos que estão indisponíveis daqueles que estão inalcançáveis.
  • Capacidade de notificar quando um serviço ou equipamento apresenta problemas e quando o problema é resolvido (via email, pager, SMS, ou qualquer outro meio definido pelo usuário por plugin).
  • Capacidade de definir tratadores de eventos que executam tarefas em situações pré-determinadas ou para a resolução pró-ativas de problemas.
  • Rotação automática de log.
  • Suporte para implementação de monitoração redundante.
  • Excelente interface web para visualização do atual status da rede, notificações, histórico de problemas, arquivos de log, etc…
  • Versão atual, estável core: 3.4.1

Centreon

Na minha opinião é um ótimo frontend para o Nagios, ele gera vários tipos de relatórios e toda a configuração do Nagios pode ser configurada por ele. Ele é um pouco chatinho pra configurar no começo até pegar a prática de como ele funciona mas depois de ajustado você não vai querer trocar ele ;)

Podemos ver alguns screenshots em http://www.centreon.com/Content-Products-IT-network-monitoring/screenshots-for-centreon-it-monitoring-centreon

Podemos acessar o demo dele em https://demo.centreon.com/index.php usuário: admin senha: centreon

O que vou utilizar de máquinas

  • Nome do Servidor: centreon
  • Ip: 10.101.0.25
  • Nome do Cliente: ldap
  • Ip: 10.101.0.26

Prepare o seu sistema com o seguinte script http://wiki.douglasqsantos.com.br/doku.php/confinicialsqueeze_en para que não falte nenhum pacote ou configuração.

Vamos atualizar os repositórios e fazer um upgrade do servidor Nagios

aptitude update && aptitude dist-upgrade -y

Agora vamos instalar as dependências

aptitude install apache2 libapache2-mod-php5 build-essential php5 libgd-graph-perl postfix libssl-dev openssl -y
aptitude install libgd2-xpm-dev  libjpeg62 libjpeg62-dev libpng12-dev snmp snmpd libsnmp-base mc php-pear -y
aptitude install libsnmp9-dev libsasl2-2 libsasl2-modules mutt -y

Agora vamos criar o usuário para o Nagios

useradd nagios -s /bin/bash -m -r

Agora precisamos criar um grupo para o nagios

/usr/sbin/groupadd nagcmd

Agora vamos atribuir os usuários nagios e www-data ao grupo nagcmd

/usr/sbin/usermod -a -G nagcmd nagios
/usr/sbin/usermod -a -G nagcmd www-data

Agora vamos criar um diretório em /usr/src para armazenarmos os fontes do nagios

mkdir -p /usr/src/downloads

Agora vamos obter os fontes, vamos acessar o diretório aonde vai ficar armazenado os fontes

cd /usr/src/downloads

Vamos obter o nagios core

wget -c http://wiki.douglasqsantos.com.br/Downloads/monitoring/nagios-3.4.1.tar.gz

Agora vamos obter os plugins

wget -c http://wiki.douglasqsantos.com.br/Downloads/monitoring/nagios-plugins-1.4.16.tar.gz

Agora vamos obter um thema para o nagios

wget -c http://wiki.douglasqsantos.com.br/Downloads/monitoring/vautour_style.zip

Agora vamos desempacotar o nagios

tar -xzvf nagios-3.4.1.tar.gz

Agora vamos acessar o diretório do nagios para podermos configurar e compilar ele

cd nagios

Agora vamos preparar ele para a compilação

./configure --with-command-group=nagcmd

Agora vamos compilar o nagios e os cgis

make all

Agora vamos instalar o nagios, cgis e os arquivos html

make install

Vamos mandar instalar o script de controle do daemon

make install-init

Agora precisamos fazer um ajuste neste arquivo o início do arquivo tem que ficar como abaixo.

vim /etc/init.d/nagios
#!/bin/sh
### BEGIN INIT INFO
# Provides:          nagios
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Start/stop nagios server
### END INIT INFO
[...]

Agora vamos retirar ele da inicialização

insserv -r -v nagios

Agora vamos inserir ele na inicialização

insserv -f -v nagios

Agora vamos mandar instalar os arquivos de configuração de exemplo

make install-config

Agora vamos mandar instalar e configurar as permissões dos diretórios para os comandos externos

make install-commandmode

Agora vamos mandar instalar a parte web

make install-webconf

Vamos mandar instalar o tema classico

make install-classicui

Agora vamos acessar o diretório com os fontes novamente

cd /usr/src/downloads

Agora vamos extrair o novo tema

unzip vautour_style.zip -d ./vautour

Agora vamos fazer um backup do tema classico

cp -Rfa /usr/local/nagios/share /usr/local/nagios/share_OLD

Agora vamos instalar o novo tema

cp -Rfa vautour/* /usr/local/nagios/share/

Agora vamos cadastrar o usuário para o acesso ao frontend do nagios

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Agora vamos criar um virtualhost para o nagios caso queira verificar os hosts por ele porém mais a frente vamos configurar o virtualhost para o Centreon ;)

vim /etc/apache2/sites-available/nagios
<VirtualHost  *:80>
ServerName nagios.douglasqsantos.com.br
ServerAdmin douglas@douglasqsantos.com.br
DocumentRoot "/usr/local/nagios/share"
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
ScriptAlias /cgi-bin "/usr/local/nagios/sbin"

<Directory "/usr/local/nagios/sbin">
   Options ExecCGI
   AllowOverride None
   Order allow,deny
   Allow from all
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>

Alias /nagios "/usr/local/nagios/share"

<Directory "/usr/local/nagios/share">
   Options None
   AllowOverride None
   Order allow,deny
   Allow from all
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>
ServerSignature Off
ErrorLog ${APACHE_LOG_DIR}/nagios-error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/nagios-access.log combined
</VirtualHost>

Agora vamos desativar o virtualhost default

a2dissite default

Agora vamos ativar o virtualhost do nagios

a2ensite nagios

Agora vamos remover o arquivo que o nagios instalou no apache

rm -rf /etc/apache2/conf.d/nagios.conf

Vamos acessar o diretório dos fontes

cd /usr/src/downloads

Agora vamos instalar os plugins

tar -xzvf nagios-plugins-1.4.16.tar.gz

Agora vamos acessar o diretório dos plugins

cd nagios-plugins-1.4.16/

Agora vamos preparar ele para a compilação

./configure --with-nagios-user=nagios --with-nagios-group=nagios

Agora vamos mandar compilar ele

make

Agora vamos mandar instalar os plugins

make install

Agora vamos testar a configuração do nagios

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Nagios Core 3.4.1
Copyright (c) 2009-2011 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 05-11-2012
License: GPL

Website: http://www.nagios.org
Reading configuration data...
   Read main config file okay...
Processing object config file '/usr/local/nagios/etc/objects/commands.cfg'...
Processing object config file '/usr/local/nagios/etc/objects/contacts.cfg'...
Processing object config file '/usr/local/nagios/etc/objects/timeperiods.cfg'...
Processing object config file '/usr/local/nagios/etc/objects/templates.cfg'...
Processing object config file '/usr/local/nagios/etc/objects/localhost.cfg'...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking services...
  Checked 8 services.
Checking hosts...
  Checked 1 hosts.
Checking host groups...
  Checked 1 host groups.
Checking service groups...
  Checked 0 service groups.
Checking contacts...
  Checked 1 contacts.
Checking contact groups...
  Checked 1 contact groups.
Checking service escalations...
  Checked 0 service 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 5 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

Sempre precisamos ficar atentos com Total Warnings e Total erros, já que não temos nenhum problema podemos iniciar o nagios

/etc/init.d/nagios start

Agora já podemos mandar reiniciar o apache e testar o nagios

/etc/init.d/apache2 restart

Agora é so acessar http://nagios.douglasqsantos.com.br ou http://ip_servidor usuário: nagiosadmin senha: senha que foi definida com htpasswd

Considerações:

  • Em Host Detail: Vamos ter informações de todos os hosts cadastrados e se eles estão up.
  • Em Service Detail: Vamos ter informações sobre todos os serviços cadastrados para os hosts.

Instalação do Centreon

Agora vamos instalar as dependências do Centreon

aptitude install sudo heirloom-mailx lsb-release build-essential apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd -y
aptitude install mysql-server libmysqlclient-dev rrdtool librrds-perl libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha1-perl -y
aptitude install libgd-gd2-perl snmp snmpd libnet-snmp-perl libsnmp-perl libgd2-xpm libgd2-xpm-dev libpng12-dev libsnmp-perl libnet-snmp-perl -y
aptitude install libconfig-inifiles-perl libmcrypt4 libmysqlclient-dev fping libldap2-dev libgnutls-dev libssl-dev smbclient librrdtool-oo-perl -y

Agora vamos instalar o ndoutils que é um plugin do nagios para alimentar o banco de dados o Centreon vai utilizar este plugin para alimentar o banco de dados.

Vamos acessar o diretório que vamos armazenar os fontes

cd /usr/src/downloads

Agora vamos obter o pacote do ndoutils

wget -c http://wiki.douglasqsantos.com.br/Downloads/monitoring/ndoutils-1.5.2.tar.gz

Agora vamos desempacotar ele

tar -xzvf ndoutils-1.5.2.tar.gz

Agora vamos acessar o diretório do ndoutils

cd ndoutils-1.5.2/

Vamos mandar criar a configuração dele para compilarmos

./configure --enable-mysql --with-ndo2db-user=nagios --with-ndo2db-group=nagios

Agora vamos mandar compilar ele

make

Não execute o meka install vamos copiar os arquivos manualmente vamos seguir a recomendação da documentação do Centreon

cp ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
cp ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db
cp ./config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
cp ./config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg

Agora vamos acertar as permissões dos arquivos

chmod 774 /usr/local/nagios/bin/ndo*
chown nagios:nagios /usr/local/nagios/bin/ndo*

Agora vamos copiar o arquivo de controle do serviço para /etc/init.d

cp ./daemon-init /etc/init.d/ndo2db

Agora vamos acertar a permissão dele

chmod +x /etc/init.d/ndo2db

Agora vamos inserir ele não inicialização do sistema

insserv -f -v ndo2db

Agora vamos acessar o diretório dos fontes

cd /usr/src/downloads

Agora vamos obter o Centreon

wget -c http://wiki.douglasqsantos.com.br/Downloads/monitoring/centreon-2.3.9.tar.gz

Agora vamos desempacotar ele

tar -xzvf centreon-2.3.9.tar.gz

Agora vamos acessar o diretório do Centreon

cd centreon-2.3.9

Agora vamos mandar executar o script de instalação, quando mandar executar pressione enter para ler a licença

./install.sh -i
###############################################################################
#                                                                             #
#                         Centreon (www.centreon.com)                         #
#                          Thanks for using Centreon                          #
#                                                                             #
#                                    v2.3                                     #
#                                                                             #
#                               infos@centreon.com                            #
#                                                                             #
#                   Make sure you have installed and configured               #
#                   sudo - sed - php - apache - rrdtool - mysql               #
#                                                                             #
###############################################################################
------------------------------------------------------------------------
  Checking all needed binaries
------------------------------------------------------------------------
rm                                                         OK
cp                                                         OK
mv                                                         OK
/bin/chmod                                                 OK
/bin/chown                                                 OK
echo                                                       OK
more                                                       OK
mkdir                                                      OK
find                                                       OK
/bin/grep                                                  OK
/bin/cat                                                   OK
/bin/sed                                                   OK

You will now read Centreon Licence.
  Press enter to continue.

Após ler a licença, vamos selecionar o que vamos mandar instalar

Do you accept GPL license ?
[y/n], default to [n]:
> y
------------------------------------------------------------------------
  Please choose what you want to install
------------------------------------------------------------------------

Do you want to install : Centreon Web Front
[y/n], default to [n]:
> y

Do you want to install : Centreon CentCore
[y/n], default to [n]:
> y

Do you want to install : Centreon Nagios Plugins
[y/n], default to [n]:
> y

Do you want to install : Centreon Snmp Traps process
[y/n], default to [n]:
> y

Agora vamos a configuração da instalação da parte Web do Centreon.

------------------------------------------------------------------------
  Start CentWeb Installation
------------------------------------------------------------------------
Where is your Centreon directory?
default to [/usr/local/centreon]
>  #ENTER

Do you want me to create this directory ? [/usr/local/centreon]
[y/n], default to [n]:
> y
Path /usr/local/centreon                                   OK

Where is your Centreon log directory
default to [/usr/local/centreon/log]
> #ENTER

Do you want me to create this directory ? [/usr/local/centreon/log]
[y/n], default to [n]:
> y
Path /usr/local/centreon/log                               OK

Where is your Centreon etc directory
default to [/etc/centreon]
> #ENTER

Do you want me to create this directory ? [/etc/centreon]
[y/n], default to [n]:
> y
Path /etc/centreon                                         OK

Where is your Centreon generation_files directory?
default to [/usr/local/centreon]
> #ENTER
Path /usr/local/centreon                                   OK

Where is your Centreon variable library directory?
default to [/var/lib/centreon]
>  #ENTER

Do you want me to create this directory ? [/var/lib/centreon]
[y/n], default to [n]:
> y
Path /var/lib/centreon                                     OK

Where is your CentPlugins Traps binary
default to [/usr/local/centreon/bin]
> #ENTER

Do you want me to create this directory ? [/usr/local/centreon/bin]
[y/n], default to [n]:
> y
Path /usr/local/centreon/bin                               OK

Where is the RRD perl module installed [RRDs.pm]
default to [/usr/lib/perl5/RRDs.pm]
> #ENTER
Path /usr/lib/perl5                                        OK
/usr/bin/rrdtool                                           OK
/usr/bin/mail                                              OK

Where is PEAR [PEAR.php] 
default to [/usr/share/php/PEAR.php]
> #ENTER
Path /usr/share/php                                        OK

Where is installed Nagios ?
default to [/usr/local/nagios]
> #ENTER
Path /usr/local/nagios                                     OK

Where is your nagios config directory
default to [/usr/local/nagios/etc]
> #ENTER
Path /usr/local/nagios/etc                                 OK

Where is your Nagios var directory ?
default to [/usr/local/nagios/var]
> #ENTER
Path /usr/local/nagios/var                                 OK

Where is your Nagios plugins (libexec) directory ?
default to [/usr/local/nagios/libexec]
> #ENTER
Path /usr/local/nagios/libexec                             OK

Where is your nagios binary ? 
default to [/usr/local/nagios/bin/nagios]
> #ENTER
/usr/local/nagios/bin/nagios                               OK

Where is your Nagios image directory ?
default to [/usr/local/nagios/share/images/logos]
> #ENTER
Path /usr/local/nagios/share/images/logos                  OK

Where is your nagiostats binary ? 
default to [/usr/local/nagios/bin/nagiostats]
> #ENTER
/usr/local/nagios/bin/nagiostats                           OK
p1_file : /usr/local/nagios/bin/p1.pl                      OK
/usr/bin/php                                               OK
/usr/bin/perl                                              OK
Finding Apache group :                                     www-data
Finding Apache user :                                      www-data
Finding Nagios user :                                      nagios
Finding Nagios group :                                     nagios

Após isso vamos ser questionados sobre a localização do módulo do ndoutils precisamos informar /usr/local/nagios/bin/ndomod.o

Where is your NDO ndomod binary ? 
default to [/usr/sbin/ndomod.o]
> /usr/local/nagios/bin/ndomod.o
/usr/local/nagios/bin/ndomod.o                             OK

Agora precisamos acertar a configuração do sudo para o Centreon poder manipular o nagios

------------------------------------------------------------------------
  Configure Sudo
------------------------------------------------------------------------

Where is sudo configuration file
default to [/etc/sudoers]
> #ENTER
/etc/sudoers                                               OK
Nagios init script                                         OK
Your sudo is not configured

Do you want me to configure your sudo ? (WARNING) 
[y/n], default to [n]:
> y
Configuring Sudo                                           OK

Agora vamos a configuração do Apache

------------------------------------------------------------------------
  Configure Apache server
------------------------------------------------------------------------

Do you want to add Centreon Apache sub configuration file ?
[y/n], default to [n]:
> y
Create '/etc/apache2/conf.d/centreon.conf'                 OK
Configuring Apache                                         OK

Do you want to reload your Apache ?
[y/n], default to [n]:
> y
Reloading Apache service                                   OK
Preparing Centreon temporary files
Change right on /usr/local/centreon/log                    OK
Change right on /etc/centreon                              OK
Change right on /usr/local/nagios/share/images/logos       OK
Install nagios documentation                               OK
Change macros for insertBaseConf.sql                       OK
Change macros for php files                                OK
Change right on /usr/local/nagios/etc                      OK
Copy CentWeb in system directory
Install CentWeb (web front of centreon)                    OK
Install libraries                                          OK
Copying libinstall                                         OK
Change macros for centreon.cron                            OK
Install Centreon cron.d file                               OK
Change macros for centAcl.php                              OK
Change macros for downtimeManager.php                      OK
Change macros for eventReportBuilder.pl                    OK
Change macros for dashboardBuilder.pl                      OK
Install cron directory                                     OK
Change right for eventReportBuilder.pl                     OK
Change right for dashboardBuilder.pl                       OK

Agora o Centreon vai nos questionar sobre os módulos do pear vamos mandar ele resolver as dependências

------------------------------------------------------------------------
Pear Modules
------------------------------------------------------------------------
Check PEAR modules
PEAR                            1.4.9       1.9.1          OK
DB                              1.7.6                      NOK
DB_DataObject                   1.8.4                      NOK
DB_DataObject_FormBuilder       1.0.0RC4                   NOK
MDB2                            2.0.0                      NOK
Date                            1.4.6                      NOK
HTML_Common                     1.2.2                      NOK
HTML_QuickForm                  3.2.5                      NOK
HTML_QuickForm_advmultiselect   1.1.0                      NOK
HTML_Table                      1.6.1                      NOK
Archive_Tar                     1.1         1.3.7          OK
Auth_SASL                       1.0.1                      NOK
Console_Getopt                  1.2         1.2.3          OK
Net_SMTP                        1.2.8                      NOK
Net_Socket                      1.0.1                      NOK
Net_Traceroute                  0.21                       NOK
Net_Ping                        2.4.1                      NOK
Validate                        0.6.2                      NOK
XML_RPC                         1.4.5                      NOK
SOAP                            0.10.1                     NOK
Log                             1.9.11                     NOK
Archive_Zip                     0.1.2                      NOK

Do you want me to install/upgrade your PEAR modules
[y/n], default to [y]:
> y
Upgrading PEAR modules
Installing PEAR modules
DB                              1.7.6       1.7.14         OK
DB_DataObject                   1.8.4       1.10.0         OK
DB_DataObject_FormBuilder       1.0.0RC4    1.0.2          OK
MDB2                            2.0.0       2.4.1          OK
HTML_QuickForm_advmultiselect   1.1.0       1.5.1          OK
HTML_Table                      1.6.1       1.8.3          OK
Auth_SASL                       1.0.1       1.0.6          OK
Net_SMTP                        1.2.8       1.6.1          OK
Net_Traceroute                  0.21        0.21.3         OK
Net_Ping                        2.4.1       2.4.5          OK
Validate                        0.6.2       0.8.5          OK
XML_RPC                         1.4.5       1.5.5          OK
SOAP                            0.10.1      0.13.0         OK
Log                             1.9.11      1.12.7         OK
Archive_Zip                     0.1.2       0.1.2          OK
Check PEAR modules
PEAR                            1.4.9       1.9.4          OK
DB                              1.7.6       1.7.14         OK
DB_DataObject                   1.8.4       1.10.0         OK
DB_DataObject_FormBuilder       1.0.0RC4    1.0.2          OK
MDB2                            2.0.0       2.4.1          OK
Date                            1.4.6       1.4.7          OK
HTML_Common                     1.2.2       1.2.5          OK
HTML_QuickForm                  3.2.5       3.2.13         OK
HTML_QuickForm_advmultiselect   1.1.0       1.5.1          OK
HTML_Table                      1.6.1       1.8.3          OK
Archive_Tar                     1.1         1.3.7          OK
Auth_SASL                       1.0.1       1.0.6          OK
Console_Getopt                  1.2         1.2.3          OK
Net_SMTP                        1.2.8       1.6.1          OK
Net_Socket                      1.0.1       1.0.10         OK
Net_Traceroute                  0.21        0.21.3         OK
Net_Ping                        2.4.1       2.4.5          OK
Validate                        0.6.2       0.8.5          OK
XML_RPC                         1.4.5       1.5.5          OK
SOAP                            0.10.1      0.13.0         OK
Log                             1.9.11      1.12.7         OK
Archive_Zip                     0.1.2       0.1.2          OK
All PEAR modules                                           OK

Após isso vamos receber uma mensagem sobre a criação de dois arquivos de configuração do Centreon

------------------------------------------------------------------------
    Centreon Post Install
------------------------------------------------------------------------
Create /usr/local/centreon/www/install/install.conf.php    OK
Create /etc/centreon/instCentWeb.conf                      OK

Agora temos a configuração do CentStorage que é quem vai alimentar o banco de dados, neste processo vamos receber uma mensagem de falha que é a respeito do parada do CentStorage por que ele ainda não esta iniciado no sistema.

------------------------------------------------------------------------
  Start CentStorage Installation
------------------------------------------------------------------------

Where is your Centreon Run Dir directory?
default to [/var/run/centreon]
> #ENTER

Do you want me to create this directory ? [/var/run/centreon]
[y/n], default to [n]:
> y
Path /var/run/centreon                                     OK

Where is your CentStorage binary directory
default to [/usr/local/centreon/bin]
> #ENTER
Path /usr/local/centreon/bin                               OK

Where is your CentStorage RRD directory
default to [/var/lib/centreon]
> #ENTER
Path /var/lib/centreon                                     OK
Finding Nagios group :                                     nagios
Finding Nagios user :                                      nagios
Preparing Centreon temporary files
/tmp/centreon-setup exists, it will be moved...
install www/install/createTablesCentstorage.sql            OK
Creating Centreon Directory '/var/lib/centreon/status'     OK
Creating Centreon Directory '/var/lib/centreon/metrics'    OK
Change macros for centstorage binary                       OK
Install CentStorage binary                                 OK
Install library for centstorage                            OK
Change right : /var/run/centreon                           OK
Change macros for centstorage init script                  OK

Do you want me to install CentStorage init script ?
[y/n], default to [n]:
> y
CentStorage init script installed                          OK

Do you want me to install CentStorage run level ?
[y/n], default to [n]:
> y
update-rc.d: using dependency based boot sequencing
Configuration file /etc/centreon/conf.pm not found.  Exiting.
CentStorage stop                                           FAIL
Change macros for logAnalyser                              OK
Install logAnalyser                                        OK
Change macros for nagiosPerfTrace                          OK
Install nagiosPerfTrace                                    OK
Change macros for purgeLogs                                OK
Install purgeLogs                                          OK
Change macros for purgeCentstorage                         OK
Install purgeCentstorage                                   OK
Change macros for centreonPurge.sh                         OK
Install centreonPurge.sh                                   OK
Change macros for centstorage.cron                         OK
Install CentStorage cron                                   OK
Create /etc/centreon/instCentStorage.conf                  OK

Agora vamos a instalação do Core do Centreon

------------------------------------------------------------------------
  Start CentCore Installation
------------------------------------------------------------------------

Where is your CentCore binary directory
default to [/usr/local/centreon/bin]
> #ENTER
Path /usr/local/centreon/bin                               OK
/usr/bin/ssh                                               OK
/usr/bin/scp                                               OK
Finding Nagios group :                                     nagios
Finding Nagios user :                                      nagios
Preparing Centreon temporary files
/tmp/centreon-setup exists, it will be moved...
Change CentCore Macro                                      OK
Copy CentCore in binary directory                          OK
Change right : /var/run/centreon                           OK
Change right : /var/lib/centreon                           OK
Replace CentCore init script Macro                         OK

Do you want me to install CentCore init script ?
[y/n], default to [n]:
> y
CentCore init script installed                             OK

Do you want me to install CentCore run level ?
[y/n], default to [n]:
> y
update-rc.d: using dependency based boot sequencing
Create /etc/centreon/instCentCore.conf                     OK

Agora vamos para a instalação do Plugins do Centreon

------------------------------------------------------------------------
  Start CentPlugins Installation
------------------------------------------------------------------------

Where is your CentPlugins lib directory
default to [/var/lib/centreon/centplugins]
> #ENTER

Do you want me to create this directory ? [/var/lib/centreon/centplugins]
[y/n], default to [n]:
> y
Path /var/lib/centreon/centplugins                         OK
Finding Nagios user :                                      nagios
Finding Nagios group :                                     nagios
Preparing Centreon temporary files
/tmp/centreon-setup exists, it will be moved...
Change macros for CentPlugins                              OK
Installing the plugins                                     OK
Change right on centreon.conf                              OK
CentPlugins is installed

Agora vamos a configuração do Snmp

------------------------------------------------------------------------
  Start CentPlugins Traps Installation
------------------------------------------------------------------------

Where is your SNMP configuration directory
default to [/etc/snmp]
> #ENTER
/etc/snmp                                                  OK

Where is your SNMPTT binaries directory
default to [/usr/local/centreon/bin/]
> #ENTER
/usr/local/centreon/bin/                                   OK
Finding Nagios group :                                     nagios
Finding Apache user :                                      www-data
Preparing Centreon temporary files
/tmp/centreon-setup exists, it will be moved...
Change macros for CentPluginsTraps                         OK
Installing the plugins Trap binaries                       OK
Change macros for snmptrapd.conf                           OK
Change macros for snmptt.ini                               OK
Install : snmptrapd.conf                                   OK
Install : snmp.conf                                        OK
Install : snmptt.ini                                       OK
Install : snmptt                                           OK
Install : snmpttconvertmib                                 OK
Create /etc/centreon/instCentPlugins.conf                  OK

Após estes processos vamos receber a seguinte mensagem

###############################################################################
#                                                                             #
#                 Go to the URL : http://centreon.douglasqsantos.com.br/centreon/           #
#                          to finish the setup                              #
#                                                                             #
#                  Report bugs at http://forge.centreon.com                   #
#                                                                             #
#                         Thanks for using Centreon.                          #
#                          -----------------------                            #
#                        Contact : infos@centreon.com                         #
#                          http://www.centreon.com                            #
#                                                                             #
###############################################################################

Agora vamos criar um virtualhost para o centreon, caso não queira criar o virtualhost ignore a parte abaixo.

vim /etc/apache2/sites-available/centreon
<VirtualHost  *:80>
ServerName centreon.douglasqsantos.com.br
ServerAdmin douglas@douglasqsantos.com.br
DocumentRoot "/usr/local/centreon/www"

<Directory "/usr/local/centreon/www">
    Options Indexes
    AllowOverride AuthConfig Options
    Order allow,deny
    Allow from all
</Directory>
ServerSignature Off
ErrorLog ${APACHE_LOG_DIR}/centreon-error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/centreon-access.log combined
</VirtualHost>

Agora vamos remover o arquivo padrão de configuração padrão do centreon para o Apache

rm -rf /etc/apache2/conf.d/centreon.conf

Agora vamos carregar o novo virtualhost

a2ensite centreon

Agora vamos reiniciar o apache

/etc/init.d/apache2 restart

Agora vamos acessar http://centreon.douglasqsantos.com.br ou http://ip_servidor/centreon se você não configurou o virtualhost

Agora vamos a configuração dele siga os passos abaixo.

  • Nesta primeira tela é a Intrudução do que vamos fazer configurar o banco de dados e acertar algumas variáveis do Centreon aqui selecione Start
  • Nesta próxima tela selecione I Accept e selecione Next
  • Nesta próxima tela é só a questão das variáveis que o Centreon está utilizando aqui selecione Next
  • Nesta próxima tela temos mais alguma variáveis que foram mapeadas devem estar tudo em Verde aqui selecione Next
  • Nesta próxima tela temos mais algumas variáveis referentes aos módulos Pear aqui selecione Next
  • Nesta próxima tela vamos a configuração do Banco de dados
  • Em Root password for Mysql informa a senha do root
  • Em Centreon Database Name deixe o padrão: centreon
  • Em Centstorage Database Name deixe o padrão: centstorage
  • Em NDO Database Name deixe o padrão: centstatus
  • Em Data base Password informe uma senha
  • Em Confirm it confirme a senha que foi informada acima
  • Em Database location deixe em branco caso o servidor Mysql seja o localhost
  • Em Centreon Web Interface location deixe em branco caso o servidor Mysql seja o localhost
  • Em MySQL Cliente version (Password HAching Changes) Deixe o valor padrão >= 4.1 - PASSWORD()
  • Agora selecione Next
  • Agora nesta próxima tela vamos ter os valores em verde caso os valores informados anteriormente então selecione Next
  • Nexta prócxima tela informe:
  • Em Administrator login for Centreon informe o nome de um usuário ex: admin
  • Em Administrator password informe a senha para o usuário
  • Em Confirm password confirme a senha informada acima.
  • Em Administrator firstname informe um nome para ele ex: Administrador
  • Em Administrator lastname informe um sobrenome pra ele ou obs ex: da Matriz
  • Em Administrator email informe o email do usuário que vai receber as notificações que forem enviadas para o usuário admin.
  • Agora selecione Next
  • Agora vamos ser questionados se queremos configurar a autenticação em Ldap vamos selecione No e selecione Next
  • Na próxima página vamos ter informações sobre a geração dos arquivos de configuração para o Centreon aqui selecione Next
  • Na próxima tela vamos ter o resultado da criação do banco de dados e de outras operações no banco aqui selecione Next
  • Na próxima tela vamos ter alguns links para sites do centreon aqui selecione Click here to completo your install
  • Agora vamos ser direcionados para a página de login informe o usuário e senha cadastrado.

Agora já estamos logados no Centreon, aqui precisamos habilitar o centreon para monitorar ele mesmo

Precisamos fazer alguns ajustes no arquivo do snmp

vim /etc/snmp/snmpd.conf
[...]
#Deixe o agentAddress como abaixo
agentAddress  udp::161
[...]
#Deixe o rocommunity como abaixo está linha deve estar comentada então precisamos só descomentar ela.
rocommunity public  localhost
[...]
#Agora vamos comentar a linha abaixo
# rocommunity public  default    -V systemonly

Agora vamos reiniciar o serviço do snmp

/etc/init.d/snmpd restart

Agora vamos testar o nosso snmp

/usr/local/nagios/libexec/check_centreon_snmp_remote_storage -n -d "/home" -H localhost -C public -v 1c -w 80 -c 90
Disk OK - /home TOTAL: 2.779GB USED: 0.067GB (2%) FREE: 2.712GB (98%)|size=2983809024B used=71659520B;2387047219;2685428121;0;2983809024

Agora na Tela Web do Centreon:

  • Selecione Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Agora vamos iniciar o ndoutils

/etc/init.d/ndo2db start

Agora vamos iniciar o Nagios

/etc/init.d/nagios start

Visualizando os hosts monitorados Agora na tela Web selecione:

  • Monitoring/Hosts
  • Agora no painel da esquerda selecione Hosts
  • Aqui vamos ter todos os hosts que vamos monitorar

Visualizando os serviços monitorados Agora na tela Web selecione:

  • Monitoring/Services
  • No painel da esquerda selecione All Services

Agora vamos habilitar mais alguns serviços padrões

Na tela Web selecione:

  • Configuration/Services
  • Aqui podemos selecione os serviços que queremos monitorar e após os serviços temos um menu More Actions selecione Enable para habilitar os serviços.

Agora vamos acertar os serviços que vão ser adicionados por padrão dependendo do template. Na tela Web selecione:

  • Configuration/Services
  • Agora no painel lateral da esquerda selecione Templates
  • Agora vamos pegar um serviço de exemplo selecione SNMP-Disc-/usr
  • Agora selecione a aba Relations
  • Agora adicione os host templates que vão ter este serviço como padrão ex: Servers-Linux
  • Agora selecione Save.

Faça o mesmo procedimento para os outros serviços que você acha necessário deixar como default.

Agora na tela Web selecione:

  • Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Agora vamos habilitar as notificações do serviços

Agora na tela Web selecione:

  • Monitoring/Hosts
  • Agora no painel da esquerda selecione Hosts
  • Aqui selecione o Centreon-Server
  • No menu da direita selecione Enable all service notifications on this host
  • Na mensagem de Submit que vai aparecer só selecione Ok

Agora quando formos consultar os serviços não vai aparecer o ícone que no serviço não esta habilitado ;)

Para criarmos mais serviços selecione:

  • Configuration/Services
  • No painel da esquerda selecione Templates

Vamos criar um serviço para checar a interface eth0 Selecione:

  • Configuration/Services
  • No painel da esquerda selecione Templates
  • No final da página do no painel centra selecione Add
  • Aqui em Alias informe o nome vou informar eth0
  • Em Service Template Name precisamos informar o nome do template vou informar eth0
  • Em Service Template Model selecione generic-service
  • Em Check Period selecione 24×7
  • Em check Command selecione check_centreon_traffic
  • Em args:
  • Em interface informe: eth0
  • Em warning informe: 80
  • Em Critical informe: 90
  • Agora selecione a aba Relations
  • Aqui adicione Servers-Linux
  • Agora selecione Save no final da página

Agora selecione:

  • Configuration/Hosts
  • Aqui selecione Centreon-Server
  • Agora informe em SNMP Community & Version: public e ao lado na flexinha informe: 1
  • Agora em Host Templates selecione: Servers-Linux
  • Agora em Create Service linked to the Template too selecione: yes
  • Agora selecione Save

Agora vamos exportar a configuração para o nagios Agora selecione:

  • Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Agora em All Services já vamos ter o monitoramento da interface eth0.

Configuração do Cliente

Vamos instalar os pacotes necessários no cliente

aptitude update && aptitude install snmp snmpd -y

Agora vamos acertar a configuração do snmp

vim /etc/snmp/snmpd.conf
[...]
#Vamos deixar o agentAddress como abaixo
agentAddress  udp::161
[...]
#Vamos comentar a linha abaixo
# rocommunity public  default    -V systemonly
#Agora vamos adicionar a seguinte linha
rocommunity douglas 10.101.0.0/24

Agora vamos reiniciar o serviço do snmp

/etc/init.d/snmpd restart

Agora no servidor vamos testar o snmp que foi configurado no cliente

/usr/local/nagios/libexec/check_centreon_snmp_remote_storage -n -d "/home" -H 10.101.0.26 -C douglas -v 1c -w 80 -c 90
Disk OK - /home TOTAL: 2.779GB USED: 0.067GB (2%) FREE: 2.712GB (98%)|size=2983809024B used=71643136B;2387047219;2685428121;0;2983809024

Agora vamos cadastrar o cliente na tela do Centreon Selecione:

  • Configuration/Hosts
  • Agora selecione Add
  • Em Host Name informe um nome para o cliente ex: Ldap
  • Em alias informe uma descrição para o host ex: Servidor Ldap
  • Em IP Address /DNS informe o ip do cliente ex: 10.101.0.26
  • Em SNMP community & Version informe: douglas na flexina lateral selecione 1.
  • Em Host Templates Selecione Add a template
  • Agora em Host Templete Selecione: Server-Linux
  • Agora em Create Services linked to the Template too selecione: yes
  • Agora na aba Relations
  • Agora adicione Linux-Servers
  • Agora selecione Save.

Agora vamos exportar a configuração para o nagios Agora selecione:

  • Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Na tela Web selecione:

  • Configuration/Services
  • Aqui podemos selecione os serviços que vai querer monitorar no cliente e após os serviços temos um menu More Actions selecione Enable para habilitar os serviços.

Agora vamos exportar a configuração para o nagios Agora selecione:

  • Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Agora na tela Web selecione:

  • Monitoring/Hosts
  • Agora no painel da esquerda selecione Hosts
  • Aqui selecione o Ldap
  • No menu da direita selecione Enable all service notifications on this host
  • Na mensagem de Submit que vai aparecer só selecione Ok

Agora em Configuration/Services/Services by host

  • Aqui selecione algum serviço por ex: Disk-/home
  • Selecione a aba Relations
  • Agora selecione o cliente para adicionar a este serviço.

Agora vamos exportar a configuração para o nagios Agora selecione:

  • Configuration/Nagios
  • Agora selecione Move Export Files e selecione também Restart Nagios agora selecione Export

Agora galera é só ir acompanhando os logs e cadastrando os hosts ;)

Referências