Un paso previo, pero necesario antes de empezar a instalar y configurar Centreon es la compilación e instalación de NDOUtis, un addon para Nagios que sirve para almacenar la información generada por Nagios en Mysql.
Los pasos para compilar NDOUtils son los siguientes:
- Descargar los siguientes paquetes necesarios para la instalación de NDOUtils
yum -y install mysql mysql-devel mysql-server gcc-c++ rrdtool.i386 perl-rrdtool.i386
- Iniciamos Mysql
/etc/init.d/mysqld start
- Creamos una base de datos llamada nagios, así como un usuario nagios
mysql> GRANT ALL ON nagios.* TO nagios@localhost IDENTIFIED BY "nagios"; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql> quit
- Descargamos ndoutils
wget http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b9.tar.gz tar zxvf ndoutils-1.4b9.tar.gz cd ndoutils-1.4b9/
- Descargamos el patch para la versión que bajamos en el punto anterior y lo aplicamos
wgethttp://svn.centreon.com/trunk/ndoutils-patch/ndoutils1.4b9_light.patch patch -p1 -N < ndoutils1.4b9_light.patch
- Compilamos NDOUTILS1.4B9
./configure make
- No se puede hacer un Make install por lo que se tienen que copiar las librerías a mano
NOTA: Ya que estamos usando nagios3 usamos las librerías para nagios 3 (ndomod-3x), si utilizáramos nagios2 entonces las apropiadas en este caso serian 2x(ndo2db-2x) # 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 # sudo chmod 774 /usr/local/nagios/bin/ndo* # sudo chown nagios:nagios /usr/local/nagios/bin/ndo*
- Ahora hacemos ndo2db ejecutable copiando el script “ndio” de la carpeta ndoutils1.4b9 el directorio init.
# cp ./daemon-init /etc/init.d/ndo2db # chmod +x /etc/init.d/ndo2db
- Añadimos el servicio ndo2db a nuestro runlevel para que arranque automáticamente cuando iniciemos la maquina
# chkconfig --add ndo2db
Al terminar la compilación de NDOUtils, pasamos a instalar y configurar Centreon. Los pasos son los siguientes:
- Descargamos Centreon de la siguiente dirección:
# wget http://download.centreon.com/centreon/centreon-2.2.0.tar.gz # tar zxvf centreon-2.2.0.tar.gz # cd centreon-2.2.0
- Antes de continuar, una buena forma de evitar diferentes path para Nagios o ndomod, ejecutamos
# export PATH="$PATH:/usr/local/nagios/bin/" # cd centreon-2.2.0 # ./install.sh -i.
- Al ejecutar el install.sh, el asistente de instalación nos hará una serie de preguntas
Se comprueba que contemos con todos los prerequisitos en nuestro sistema
###############################################################################
# #
# Centreon (www.centreon.com) #
# Thanks for using Centreon #
# #
# v2.1 #
# #
# 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
Se aceptan la licencia
Now the Centreon license (GPL2) is shown. If you don't accept it the setup will terminate.
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
Do you accept GPL license ?
[y/n], default to [n]:
> y
Seleccionamos los módulos a instalar
Now some questions regarding the modules to be installed: Centreon web interface, centcore (distributing module), Centreon plugins and Centreon Trap-Handler.
------------------------------------------------------------------------
Please choose what do 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
Now the installation of the different modules begins, starting with Centreon Web, the centreon interface.
------------------------------------------------------------------------
Start CentWeb Installation
------------------------------------------------------------------------
Where is your Centreon directory?
default to [/usr/local/centreon]
>
Where should centreon be installed? <Enter> accepts the shown default value. You can specify another path. If the directory doesn't exist you are asked if it should be created:
Do you want me to create this directory ? [/usr/local/centreon]
[y/n], default to [n]:
> y
Path /usr/local/centreon OK
Here you should specify where to put the centreon journals/logs.
Where is your Centreon log directory
default to [/usr/local/centreon/log/]
>
Do you want me to create this directory ? [/usr/local/centreon/log/]
[y/n], default to [n]:
> y
Path /usr/local/centreon/log/ OK
very important : the location of centreon config file.\\ ATTENTION: changing the path may result in problems...
Where is your Centreon etc directory
default to [/etc/centreon]
>
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/]
>
Path /usr/local/centreon/ OK
Where is your Centreon variable library directory?
default to [/var/lib/centreon]
>
Do you want me to create this directory ? [/var/lib/centreon]
[y/n], default to [n]:
> y
Path /var/lib/centreon
Where is your CentPlugins Traps binary
default to [/usr/local/centreon/bin]
>
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]
>
NOTA: En mi instalación esta ruta no existía, el fichero pedido se localizaba
en /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/RRDs.pm
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]
>
NOTA: En mi instalación esta ruta no existía, el fichero pedido se localizaba
en /usr/share/pear/PEAR.php
Path /usr/share/pear/PEAR.php OK
Where is installed Nagios ?
default to [/usr/local/nagios]
>
Path /usr/local/nagios OK
Where is your nagios config directory
default to [/usr/local/nagios/etc]
>
Path /usr/local/nagios/etc OK
Where is your Nagios var directory ?
default to [/usr/local/nagios/var]
>
Path /usr/local/nagios/var OK
Where is your Nagios plugins (libexec) directory ?
default to [/usr/local/nagios/libexec]
>
Path /usr/local/nagios/libexec OK
/usr/local/nagios/bin//nagios OK
Where is your Nagios image directory ?
default to [/usr/local/nagios/share/images/logos]
>
Path /usr/local/nagios/share/images/logos OK
/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
/usr/local/nagios/bin//ndomod.o OK
ATTENTION: the name of user and group of the web server depends from the used distribution!
------------------------------------------------------------------------
Configure Sudo
------------------------------------------------------------------------
Where is sudo configuration file
default to [/etc/sudoers]
>
/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
Setting up the centreon Aliases etc
------------------------------------------------------------------------
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]:
> n
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
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 archiveDayLog OK
Change macros for centAcl.php OK
Install cron directory OK
PEAR libraries: a set of libraries is still missing but they will be installed or updated as
nessecary (if you have a connection to the internet). Otherwise you have to install them manually
.
------------------------------------------------------------------------
Pear Modules
------------------------------------------------------------------------
Check PEAR modules
PEAR 1.4.9 1.6.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.2 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
After displaying the current versions you may get the request to update some libraries.
Do you want me to install/upgrade your PEAR modules
[y/n], default to [y]:
Upgrading PEAR modules
Installing PEAR modules
DB 1.7.6 1.7.13 OK
DB_DataObject 1.8.4 1.8.12 OK
DB_DataObject_FormBuilder 1.0.0RC4 1.0.0 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.2 OK
Auth_SASL 1.0.1 1.0.3 OK
Net_SMTP 1.2.8 1.3.3 OK
Net_Traceroute 0.21 0.21.1 OK
Net_Ping 2.4.1 2.4.4 OK
Validate 0.6.2 0.8.2 OK
XML_RPC 1.4.5 1.5.2 OK
SOAP 0.10.1 0.12.0 OK
Log 1.9.11 1.11.5 OK
Check PEAR modules
PEAR 1.4.9 1.6.1 OK
DB 1.7.6 1.7.13 OK
DB_DataObject 1.8.4 1.8.12 OK
DB_DataObject_FormBuilder 1.0.0RC4 1.0.0 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.11 OK
HTML_QuickForm_advmultiselect 1.1.0 1.5.1 OK
HTML_Table 1.6.1 1.8.2 OK
Archive_Tar 1.1 1.3.2 OK
Auth_SASL 1.0.1 1.0.3 OK
Console_Getopt 1.2 1.2.3 OK
Net_SMTP 1.2.8 1.3.3 OK
Net_Socket 1.0.1 1.0.9 OK
Net_Traceroute 0.21 0.21.1 OK
Net_Ping 2.4.1 2.4.4 OK
Validate 0.6.2 0.8.2 OK
XML_RPC 1.4.5 1.5.2 OK
SOAP 0.10.1 0.12.0 OK
Log 1.9.11 1.11.5 OK
All PEAR modules OK
The script will continue.
------------------------------------------------------------------------
Centreon Post Install
------------------------------------------------------------------------
Create /usr/local/centreon/www/install/install.conf.php OK
Create /etc/centreon/instCentWeb.conf OK
Now CentStorage will be installed, also called ODS (Oreon Data Storage). At the moment this module permits archiving on the basis of RRD and MySQL. Additionally CentStorage enables you to create graphs for monitoring the different metrics.
------------------------------------------------------------------------
Start CentStorage Installation
------------------------------------------------------------------------
Where is your Centreon Run Dir directory?
default to [/var/run/centreon]
>
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]
>
Path /usr/local/centreon/bin OK
Where is your CentStorage RRD directory
default to [/var/lib/centreon]
>
Path /var/lib/centreon OK
Attention: the centreon lib directory should be placed on a continously available partition to avoid problems. The directory contains the RRDTools. Consider to place the MySQl data on a reasonably dimensioned disk. The logs and performance data also need a lot of space.
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
Adding system startup for /etc/init.d/centstorage ...
/etc/rc0.d/K30centstorage -> ../init.d/centstorage
/etc/rc1.d/K30centstorage -> ../init.d/centstorage
/etc/rc6.d/K30centstorage -> ../init.d/centstorage
/etc/rc2.d/S40centstorage -> ../init.d/centstorage
/etc/rc3.d/S40centstorage -> ../init.d/centstorage
/etc/rc4.d/S40centstorage -> ../init.d/centstorage
/etc/rc5.d/S40centstorage -> ../init.d/centstorage
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
CentStorage is installed now.
------------------------------------------------------------------------
Start CentCore Installation
------------------------------------------------------------------------
Where is your CentCore binary directory
default to [/usr/local/centreon/bin]
>
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
Adding system startup for /etc/init.d/centcore ...
/etc/rc0.d/K30centcore -> ../init.d/centcore
/etc/rc1.d/K30centcore -> ../init.d/centcore
/etc/rc6.d/K30centcore -> ../init.d/centcore
/etc/rc2.d/S40centcore -> ../init.d/centcore
/etc/rc3.d/S40centcore -> ../init.d/centcore
/etc/rc4.d/S40centcore -> ../init.d/centcore
/etc/rc5.d/S40centcore -> ../init.d/centcore
Create /etc/centreon/instCentCore.conf OK
Please answer some questions regarding the installation of the centreon plugins.
------------------------------------------------------------------------
Start CentPlugins Installation
------------------------------------------------------------------------
Where is your CentPlugins lib directory
default to [/var/lib/centreon/centplugins]
>
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
------------------------------------------------------------------------
Start CentPlugins Traps Installation
------------------------------------------------------------------------
Where is your SNMP configuration directory
default to [/etc/snmp]
>
/etc/snmp OK
Where is your SNMPTT binaries directory
default to [/usr/local/centreon/bin/]
>
/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
Backup all your snmp files 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
###############################################################################
# #
# Go to the URL : http://your-server/centreon/ #
# to finish the setup #
# #
# Report bugs at http://forge.centreon.com #
# #
# Thanks for using Centreon. #
# ----------------------- #
# Contact : infos@centreon.com #
# http://www.centreon.com #
# #
###############################################################################
Reloading Apache configuration on Fedora:
# service httpd reload
Reloading Apache 1.3 configuration on Debian/Ubuntu/OpenSuse, etc:
# /etc/init.d/apache reload
Una vez finalizada la instalación, en un navegador vamos a la siguiente URL, donde confirmaremos diferentes aspectos de la instalación, en donde comprobaremos información relativa a nuestra instalación. http://IP_de_nuestro_servidor_centreon/centreon
- Definición de variables

- Comprobación de la configuración

- Comprobación de componentes

- Configuración de base de datos

- Comprobación de la base de datos

- Configuración de datos de usuario

- Selección de autenticación

- Comprobación y generación de ficheros de configuración

- Creación de la base de datos

- Finalización de Post-instalación
Luego de todos esto nuevo centron estará instalado el cual lucirá de la siguiente manera
Como mencionamos al principio de este post, Ndoutils es una capa intermedia entre Nagios y Centreon, utilizada para enviar los datos a Mysql, por lo que como ultimo paso, comprobaremos que este componente este correctamente configurado.
- Una vez logeados en Centreon, navegamos a Configuracion --> Nagios --> nagios.cfg

- Seleccionamos y abrimos el fichero de configuración. Luego pinchamos sobre la viñeta "DATA" y comprobamos que los valores lucen como los siguientes:
broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg event_broker_options=-1

- Esta vez vamos a Configuration -->Centreon --> ndomod.cfg en donde comprobaremos que los valores sean los siguientes:
Interface Type: tcpsocket Output : 127.0.0.1 Port : 5668

- La ultima comprobación la realizaremos en Configuration --> Centreon --> ndo2db.cfg en donde los valores tienen que ser los siguientes:
Socket type : tcp Socket Name : /var/run/ndo.sock TCP Port : 5668
