cacti on Centos

Primero tenemos que instalar todos los componentes que vamos a necesitar.
1. Instalar net-snmp :
shell> yum install net-snmp net-snmp-utils
2. Instalar RRDTool: Para poder instalar este paquete, es necesario crear un archivo de repositorio para este paquete.
2.1 Crear un fichero dag.repo dentro de  /etc/yum.repos.d :
shell> vi /etc/yum.repos.d/dag.repo

2.2 Copia el  códido y guardalo:
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1

2.3 Instalar RRDTool:
shell> yum install perl-rrdtool rrdtool
3. Instalar RPHP y HTTP:
shell> yum install php httpd
4. Instalar MYSQL:
shell> yum install mysql mysql-server php-mysql php-snmp
5. Instalar componente para el CRONTAB:
shell> yum install vixie-cron
Una vez instalados todos los componentes que vamos a necesitar para que funcione el CACTI, pasamos a configurar los componentes.
 

Tenemos que configurar en los servicios que arranquen automaticamente los componentes instalados:
-       http
-       mysql
-       ntpd
-       snmpd
-      
shell> setup

6. Configurar MYSQL:
Como la Base de Datos solo es accesible desde local, hay que modificar el config.
 shell> vi /etc/my.cnf
Copiar el código:
[mysqld]
bind-address=localhost
Crear y configurar la Base de Datos
Iniciar el servidor de Base de Datos:
shell> /etc/init.d/mysqld start
Cambiar asignar el password de usuario “root” de mysql, que no es el mismo que el “root” del sistema:
shell> mysqladmin –u root password 'la_pass_que_quieras'
Accedemos al mysql para configurar el CACTI:
shell> mysql -u root –p
Enter password:*******
Creamos la BD de CACTI y le damos permisos a los usuarios “root” y “cactiuser”, este último será el usuario que configuraremos para utilizar CACTI, también la asignaremos una contraseña.
mysql > create database cacti;
mysql> grant all on cacti.* to root;
mysql> grant all on cacti.* to root@localhost;
mysql> grant all on cacti.* to cactiuser;
mysql> grant all on cacti.* to cactiuser@localhost;
mysql> flush privileges;
mysql> exit
Ya tenemos configurado el mysql para CACTI, solo falta lanzar un “stored” que lo tenemos en la instalación de CACTI.

Tenemos dos manera de isntalar el CACTI mediante el "yum install" que nos instalara la versión publicada por Cacti o la instalar la versión que nosostros necesitemos, en nuestro caso la version que instalaremos es la 0.8.7e
shell> yum install cacti
La version publicada es la

7. Configurar CACTI:
Para la instalación de CACTI, nos descargaremos la última versión, nosotros utilizaremos la 0.8.7e, Para poder descargarnos el paquete, tendremos que instalar “wget”
shell> yum install wget
Luego podemos descarganos el paquete directamente desde  www.cacti.net , la instalación del paquete “wget” es necesario para poder instalar los parches posteriores de CACTI.
Lo descargaremos desde la carpeta /root
shell> cd /root
descargamos el paquete:
shell> wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
Extraemos el paquete:
shell> tar xzvf cacti-0.8.7e.tar.gz
Copiamos el contenido en la /var/www/cacti esta sera el destino donde estar la aplicación CACTI.
shell> mv cacti-0.8.7e /var/www/cacti
Podemos crear un usuario dedicado para usar CACTI, pero nosotros utilizaremos el propio “root” para usar CACTI. Ahora tenemos que asignar el propietario al “root” sobre las carpetas /rra y /log.
shell> cd /var/www/cacti
shell> chown -R root rra log
Y damos permisos de “total” a las dos carpetas
shell> chmod -R 777 rra
shell> chmod -R 777 log

Ahora tenemos que lanzar el “stored” que nos va a configurar la Base de Datos de CACTI, este “stored” lo tenemos en la carpeta de la aplicación /var/www/cacti.
shell> cd /var/www/cacti
lanzamos el comando mysql
shell> mysql --user=root --password=xxxxxx cacti < cacti.sql
Ya tenemos configurado el  mysql para utilizar CACTI, ahora tenemos que configurar CACTI para que utilicé mysql, modificamos el fichero de configuración /var/www/cacti/config.php
 shell> vi /var/www/cacti/include/config.php
Y modificamos el código
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "xxxxx";
$database_port = "3306";

8. Configurar HTTP:
Tenemos que dar permisos al “apache” para que podamos acceder a CACTI  vía http. Hay que  crear el fichero “cacti.conf” en el directorio “/etc/httpd/conf.d”
shell> vi /etc/httpd/conf.d/cacti.conf
hay que copiar el código siguiente:
Alias /cacti/ /var/www/cacti/
    DirectoryIndex index.php
    Options -Indexes
    AllowOverride all
    order deny,allow
    allow from all
    AddType application/x-httpd-php .php
    php_flag magic_quotes_gpc on
    php_flag track_vars on
Una vez guardado el código ya podemos iniciar el servidor CACTI, http://server/cacti/ y configurar CACTI.

9. Configurar SNMP:
Para poder hacer gráficas del propio servidor de CACTI, tenemos que podificar el fichero de configuracion /etc/snmp/snmpd.conf
shell> vi /etc/snmp/snmpd.conf
Añadimos el siguiente código
rocommunity public

10. Configurar CACTI
Ya podemos configurar la aplicación de CACTI, tenemos que ir al navegador y acceder a la dirección del servidor que hemos configurado, http://cactiserver/cacti/ hay que serguir los pasos:


Tenemos que tener todas las opciónes en  [OK:FILE FOUND] y comprobar las versiones que utilizaremos para “SNMP Utility” y “RRDTool”


Ya hemos terminado la instalación de CACTI, el nombre de usuario y la contraseña de seriel de CACTI
admin
admin



Tenemos que cambiar la contraseña



11. Configurar Shceduler CACTI
Solo nos queda configurar el “scheduled” de recogidad de datos, en Linux tenemos que añadir un “crond”, como ya habíamos realizado la instalación de “vixie-cron”
Hay que modificar:
shell> vi /etc/cron.d/cacti
y añadir el siguiente código:
*/5****/usr/bin/php/var/www/cacti/poller.php > /dev/null 2>%1
Ya que hemos modificado el “crontab”, hay que añadir la línea de sincronización de la “fecha-hora”
50 3 * * * root /usr/sbin/ntpdate –u hora.uv.es
Tenemos que reiniciar el servicio “crond”
shell> /etc/init.d/crond restart

1 comentario:

Anónimo dijo...

Muchas gracias por tu aporte, fue de mucha utilidad para mi, lo he instalado en un centos 6.2, solo fue necesario corregir en vi /etc/httpd/conf.d/cacti.conf las cabeceras de los alias y al ingreso web de cacti se realiza con usuario admin password admin y de inmediato solicita se cambie, todo lo demas esta muy bueno, si que funciona.