Centreon en un Nagios existente
Si no partimos de un servidor limpio, sino que ya tenemos una instalación de Nagios, en nuestro caso en una máquina CentOS, también podemos instalar Centreon.
En este post vamos a ver los pasos que seguiríamos para instalar Centreon en una máquina CentOS en la que ya tenemos instalado Nagios. El proceso de instalación de Nagios lo detallamos varios posts atrás:
http://www.franciscosepulveda.eu/2013/05/23/instalacion-de-nagios/
Un prerrequisito para instalar Centreon es NDOutils.
Empezamos instalando los paquetes de desarrollo de MySQL (ya está instalado en la máquina) y PHP-Pear:
# yum –y install mysql-devel
# yum –y install php-pear
# mkdir /usr/share/php
# ln -s /usr/share/pear/PEAR.php /usr/share/php/PEAR.php
Instalamos también el servidor MySQL y asignamos una contraseña a root (que no sea tan simple como la de nuestro ejemplo):
# yum –y install mysql-server
# yum –y install php-mysql
# chkconfig --add mysqld
# chkconfig mysqld on
# service mysqld start
# mysqladmin –u root password password
Habrá que actualizar PEAR.php:
# yum install php php-xml php-mbstring php-ldap
# yum install php-pear
# pear channel-update pear.php.net
# pear upgrade-all
# yum reinstall php-pear
# rpm -i --replacefiles ftp://ftp.pbone.net/mirror/yum.trixbox.org/centos/5/RPMS-2.4/php-pear-1.5.0-3.noarch.rpm
Las extensiones PEAR que usa Centreon son las siguientes:
PEAR 1.4.9
DB 1.7.6
DB_DataObject 1.8.4
DB_DataObject_FormBuilder 1.0.0RC4
MDB2 2.0.0
Date 1.4.6
HTML_Common 1.2.2
HTML_QuickForm 3.2.5
HTML_QuickForm_advmultiselect 1.1.0
HTML_Table 1.6.1
Archive_Tar 1.1
Auth_SASL 1.0.1
Console_Getopt 1.2
Net_SMTP 1.2.8
Net_Socket 1.0.1
Net_Traceroute 0.21
Net_Ping 2.4.1
Validate 0.6.2
XML_RPC 1.4.5
SOAP 0.10.1
Log 1.9.11
Archive_Zip 0.1.2
Para instalar cada una de ellas, basta con usar el comando “pear install extension”, por ejemplo:
pear install Auth_SASL
Y también las rrdtool para las gráficas:
# rpm -ivh http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
# yum install rrdtool php-gd –y
# ln -s /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/RRDs.pm /usr/lib/perl5/RRDs.pm
Una vez instalados los prerequisitos, ya podemos empezar a instalar Centreon. Descargamos los paquetes necesarios:
# cd /usr/local/src
# wget http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b9.tar.gz
Desempaquetamos:
# tar -xzf ndoutils-1.4b9.tar.gz
# cd ndoutils-1.4b9
Configuramos e instalamos:
# ./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql \ --with-ndo2db-user=nagios --with-ndo2db-group=nagios
# make
# make install
Hacemos ejecutable el demonio ndo2db:
# cp ./daemon-init /etc/init.d/ndo2db
# chmod +x /etc/init.d/ndo2db
# chkconfig --add ndo2db
En los siguientes pasos configuraremos el servicio.
Ahora vamos a instalar Centreon:
# cd /usr/local/src/
# wget http://download.centreon.com/index.php?id=187
Desempaquetamos:
# tar -xzf centreon-2.3.9.tar.gz
# cd centreon-2.3.9
Y empezamos la instalación:
# export PATH=$PATH:/usr/local/nagios/bin/
# ./install.sh -i Primero hará un chequeo de los prerequisitos:
Si todo es correcto, pulsamos enter y aparecerá la licencia, que tendremos que aceptar:
A continuación nos hará una serie de preguntas a las que responderemos “y”:
Después empezará la instalación de los diferentes módulos. La respuesta por defecto a las preguntas funcionará correctamente y en aquellas de respuesta (y/n) respondemos “y”.
Una vez finalizado el asistente, podemos seguir el proceso de instalación desde la interfaz web:
http://localhost/centreon
Antes de seguir, tenemos que añadir la siguiente línea al archivo /etc/php.ini:
extension=mysql.so
Y tendremos que asignar una contraseña a root para MySQL:
# mysqladmin –u root password password
Hola Francisco,
me surge una duda respecto a como monitorizar varias
redes desde nagios
Disculpad, quiero decir: monitorizar varias redes remotas entre si desde un equipo con nagios. El equipo seria del tipo cloud vps y las redes cuenta con conexion wan tipo vdsl.
Hola Jose.
Pienso que el principal problema que te puedes encontrar es la conectividad. Si por medio hay cortafuegos, NATs o algún otro elemento, habría que configurarlo para que puedas tener conectividad entre el agente y el servidor de Nagios.
Si quieres, envíame un esquema de la red y vemos con más detalle como hacerlo. Puedes enviármelo al correo electrónico para no ponerlo aquí.
Hola de nuevo Francisco,
me temo que no dispongo su su dirección de correo electrónico.
Un saludo.
Hola Francisco,
este es el esquema de red:
https://docs.google.com/file/d/0Bz8VbN6tyiPIMjVBbTlsY0MwbzQ/edit?usp=sharing
Lo normal sería colocar un agente nagios en cada una de estas redes, según comentas. ¿No se puede hacer directamente sin pasar por los agentes? ¿Que inconvenientes supondría hacerlo sin agentes?
Mi idea en principo era hacerlo sin agentes monitorizando directamente al servidor nagios conectando por vpn (periodicamente) a cada una de estas redes. Nagios sería el cliente vpn para que los hosts de la red a monitorizar sean accesibles. Una vez monitorizada la red, desconectar la vpn y conectar a la siguiente.
No supe encontrar documentación de como monitorizar redes remotas y las distintas formas de hacerlo. Como suele pasar
en esteos casos, la forma de hacerlo pasa por la «creatividad» del que lo implemente, hasta cierto punto ya que ha formas de hacer las cosas bien o mal…
Espero vuestros comentarios.
Saludos