Sunteți pe pagina 1din 12

Guia de Instalacion de Cacti (Probada en CentOS 5.

5)
Cacti es una completa solución de graficado en red, diseñada para aprovechar el poder de
almacenamiento y la funcionalidad de graficar que poseen las RRDtool. Esta herramienta,
desarrollada en PHP, provee un pooler ágil, plantillas de gráficos avanzadas, múltiples métodos
para la recopilación de datos, y manejo de usuarios. Tiene una interfaz de usuario fácil de usar,
que resulta conveniente para instalaciones del tamaño de una LAN, así como también para redes
complejas con cientos de dispositivos, Aqui les dejare una completa y sencilla guia para lograr la
instalacion de Cacti, escribi la guia basandome en CentOS 5.5. A continuacion un poco mas de lo
que es Cacti, extraido de Wikipedia.

¿Qué es una RRDtool?

RRDtool es el acrónimo de Round Robin Database tool, o sea que se trata de una herramienta que
trabaja con una BD que manejaPlanificación Round-robin. Esta técnica trabaja con una cantidad
fija de datos y un puntero al elemento actual. El modo en que trabaja una base de datos
utilizando Round Robin es el siguiente; se trata la BD como si fuera un círculo, sobrescribiendo los
datos almacenados, una vez alcanzada la capacidad de la BD. La capacidad de la BD depende de
la cantidad de información como historial que se quiera conservar.

¿Qué tipo de datos pueden ser almacenados en una RRD?

Cualquiera, siempre que se trate de una serie temporal de datos. Esto significa que se tiene que
poder realizar medidas en algunos puntos de tiempo y proveer esta información a laRRDtool para
que la almacene.
Un concepto ligado a las RRDtool es el de SNMP, acrónimo de Simple Network Management
Protocol. Este protocolo puede ser usado para realizar consultas a dispositivos acerca del valor de
los contadores que ellos tienen (ej: una impresora). El valor obtenido de esos contadores es el
que queremos guardar en la RRD.

¿Qué puedo hacer con esta herramienta?

Puedo, a través de Cacti , representar graficamente los datos almacenados en la RRD: uso de
conexión a internet, datos como temperatura, velocidad, voltaje, número de impresiones, etc. La
RRD va a ser utilizada para almacenar y procesar datos recolectados vía SNMP.
En definitiva, para hacer uso de una RRDtool, lo que se necesita es un sensor para medir los datos
y poder alimentar al RRDtool con esos datos. Entonces, la RRDtool crea una base de datos,
almacena los datos en ella, recupera estos datos y basandose en ellos, Cacti crea gráficos en
formato PNG.

Mas info: Wikipedia

Instalación de Cacti

Dependencias a instalar:

-httpd
-php
-php-mysql
-php-snmp
-mysql
-mysql-server
-net-snmp

Luego de instaladas estas dependencias, debemos verificar que PHP tenga los siguientes módulos
externos (Lo podemos hacer con el comando “php –m | less”:

-mysql
-snmp
-xml
-session
-sockets
-ldap

Luego de verificar que php tenga los siguientes módulos externos, el siguiente paso será editar el
archivo de configuración “/etc/php.ini” y modificar el siguiente parámetro:

extensión_dir = /etc/php.d

En ese directorio se encuentran mayormente las librerías necesarias, pero en caso de CentOs y
otras distribuciones, estas librerías se encuentran en “/usr/lib/php/modules” así que
necesitaremos copiar las librerías ubicadas en ese directorio y copiarlas a “/etc/php.d”, con el
siguiente comando lo hacemos:

cp /usr/lib/php/modules/* /etc/php.d/

Y verificamos, modificamos o creamos los siguientes archivos del directorio /etc/php.d/

En /etc/php.d/mysql.ini

; Enable mysql extension module


extension=mysql.so

En /etc/php.d/snmp.ini

; Enable snmp extension module


extension=snmp.so

Luego de verificar que este todo correcto hasta el momento, debemos modificar el
archivo /etc/php.ini, verificando que este parámetro este de la siguiente manera:
file_upload = on ::: Para permitir la importación de plantillas :::

Configurando Apache

Editamos el archivo de configuración /etc/httpd/conf.d/php.conf y verificamos que los


siguientes parámetros estén de la siguiente manera:

LoadModule php5_module modules/libphp5.so

AddHandler php5-script .php

AddType text/html .php

DirectoryIndex index.php

Configurando Mysql

Subimos el servicio de mysql, con el comando ''service mysqld start''

Le damos una password a root:

mysqladmin –-user=root password ‘contraseña’

Instalando Cacti

Para instalar cacti en CentOS es necesario tener los repositorios RPMforge, para su instalación:

Descargamos los repositorios dependiendo de su arquitectura:

X86:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm

X86_64:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm

Importamos las llaves Públicas:

rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

Instalamos el paquete:

rpm –i rpmforge-release-XXX.XXX.XXX.rpm

Y verificamos que se instalaron los repositorios con:

yum check-update

Luego podemos instalar Cacti, con todos las dependencias necesarias.

yum install cacti

Entre las dependencias que se instalaran estan:


-rrdtool
-perl-rrdtool

Cuando finalice la instalación, podemos verificar que Cacti se instalo en /var/www/cacti, y que
creo un alias en /etc/http/conf.d/ llamado cacti.conf

Creación de base de datos MYSQL

Nos ubicamos en /var/www/cacti, y usamos mysql para crear nuestra base de datos para cacti.

Shell>mysqladmin –-user=root –p create cacti

shell> mysql --user=root -p cacti < cacti.sql

shell> mysql --user=root -p mysql

mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY ‘Contraseña’;

mysql> flush privileges;

mysql> exit

Editamos el archivo /var/www/cacti/include/config.php, y verificamos que los siguientes


parámetros estén de la siguiente manera:

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "127.0.0.1";
$database_username = "cacti";
$database_password = "contraseña";
Asignando permisos necesarios

Nos ubicamos en el directorio /var/www/, y le cambiamos el propietario a la carpeta cacti, le


ponemos como propietario a apache.

chown –R apache.apache cacti/

Entramos a el directorio cacti, y le cambiamos el usuario a las carpetas rra y log.

chown –R cacti rra/ log/

Agregamos a /etc/crontab, lo siguiente:

*/5 * * * * cacti php /var/www/html/cacti/poller.php > /dev/null 2>&1

Reiniciamos los servicios

service httpd restart


service snmpd restart
service mysqld restart

Y entramos desde nuestro explorador a htto://localhost/cacti/

Entorno Web paso a paso


(Extraido de el manual cacti de la FCLD - Franky Almonte)

1er Paso – Guia de Instalacion

2do Paso – Elegir nueva instalacion

3er Paso – Confirmas todas las rutas


En caso de falta de paquetes, instalar net-snmp-utils

4to Paso – Ingresar a Cacti

El UserName y el Password son admin, luego nos pedira que escribamos la nueva contraseña.

Graficando la Red

El primer paso para crear gráficas de la red es agregando un host por cada host en la
red que se desea crear gráficas. Un host especifica detalles importantes como el nombre
del host, parámetros SNMP y el tipo de host.
Para manejar equipos dentro de Cacti, haga click en Devices en el menú de la izquierda.
Luego haga click en Add para llenar el formulario de una nuevo equipo. Los primeros
dos campos, Description y Hostname son los únicos campos que requieren entrada mas
allá de las por defecto. Si su tipo de host esta definido bajo el menu desplegable,
asegúrese de seleccionar este en el menú. Usted siempre puede elegir “Generic SNMP-
enables host” si solo va a graficar trafico o “None” si no esta seguro.
Ahora que ha creado nuevos equipos, es tiempo de crear gráficas para el mismo. Para
hacer esto, selección del menú de la izquierda la opción “New Graphs”. SI aun esta en la
pantalla de editar el equipo, seleccione “Create Graphs for this Host” para ver una
pantalla similar a la siguiente imagen mostrada mas abajo.

El menú desplegable que contiene cada equipo debe ser usado para seleccionar el equipo al cual
usted quiere crear nuevas gráficas. El concepto básico en esta pagina es simple, seleccione el
cuadro de verificación en cada columna que usted quiere crear una grafica y haga click en
“Create”.

Si usted esta creando gráficas dentro de la caja “Data Query”, hay algunas cosas
adicionales para tener en mente. Primero es que se puede encontrar con la situación
mostrada en la grafica mostrada mas arriba con la consulta de datos “SNMP – Interface
Statistics”. Si esto ocurre usted quizás quiera consultar la sección en consultas de datos
en depuración para ver por que su consulta de datos no esta retornando ningún
resultado. También, usted quiera ver el menú desplegable debajo de algunas cajas de
consulta de datos. Cambiando el valor de este menú afecta cual tipo de grafica Cacti
construirá después de hacer click en el botón “Create”. Cacti solo muestra este menú
cuando hay mas de un tipo de donde escoger, así que puede que no se muestre en todos
los casos.

Una vez ha seleccionado las gráficas que quiere crear, simplemente haga click en el
botón “Create” al final de la pagina. Usted sera llevado a una nueva pagina que le
permite especificar información adicional sobre las gráficas que esta por crear. Solo
vera los campos que no son parte de cada plantilla, de todas formas el valor viene
automáticamente de la plantilla. Cuando todos los valores en esta pagina parezcan
correctos, haga click en el botón “Create” una ultima vez para crear finalmente las
gráficas.

Si le gustaría editar o eliminar gráficas después de haberlas creado, use el enlace


“Graph Management” en el menú de la izquierda de la pagina.

Viendo las graficas

En la parte superior de la pagina haga click en el boton “graphs” para ver las graficas.
Installing Cacti on CentOS Linux 5.4
February 17, 2010awalrathLeave a commentGo to comments
Cacti is a web frontend graphing tool for RRDtool. You can use it to create custom graphs for
network and host statistics provided by services such as SNMP. In this post I will guide you
through the process of installing Cacti 0.8.7e on CentOS Linux 5.4.

According to the documentation Cacti may have problems working correctly with SELinux. On
servers I generally disable this feature. I have not tried to install it on a system with SELinux
enabled. The documentation has details on how to configure SELinux for Cacti if you’d like to try
and leave it enabled. To disable SELinux, edit the section of the /etc/selinux/config as follows:

# disabled - SELinux is fully disabled.

SELINUX=disabled

# SELINUXTYPE= type of policy in use. Possible values are:


Save the changes, reboot your system, and log back in.

I prefer to use yum and RPM’s if they are available. Extra Packages for Enterprise Linux (EPEL)
has a Cacti package available in their yum repository. I’ll activate the EPEL repository, bear in
mind that I’m using the 32-bit version of CentOS:

shell# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/ \

> epel-release-5-4.noarch.rpm
Now time to install Cacti. We’ll also include the packages for the Apache and MySQL daemons.
The net-snmp-utils package is not installed as a dependency by yum when we install Cacti, so
we’ll explicitly include as well:

shell# yum install cacti httpd mysql-server net-snmp-utils


If MySQL was installed for the first time running yum above, it’s a good idea to set a default
password for the root user in MySQL now. Let’s verify the MySQL and Apache daemons are set to
start at boot and start them now:

shell# chkconfig mysqld on

shell# chkconfig httpd on

shell# service mysqld start

shell# service httpd start


Now we’ll set the password for the root inside MySQL:

shell# mysqladmin -u root password NewPassword


Time to create the MySQL database for Cacti, we specify the “-p” option so mysqladmin will
prompt for us for new password we entered above:

shell# mysqladmin -u root -p create cacti


Import the schema for the Cacti database:

shell# mysql -u root -p cacti < /usr/share/doc/cacti-0.8.7e/cacti.sql


Now it’s time to create a MySQL user specifically for Cacti to use. While this is not required it is
best to limit Cacti’s access to our MySQL database:
shell# mysql -u root -p mysql

mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'Passwrd';

mysql> flush privileges;

mysql> exit
Now we need to edit the /usr/share/cacti/include/config.php file and enter the correct database
user and password information:

$database_type = "mysql";

$database_default = "cacti";

$database_hostname = "localhost";

$database_username = "cactiuser";

$database_password = "NewPassword";
Now we need to install the cron daemon and crontabs packages so that we can poll the device
periodically we are collecting statistics from:

shell# yum install vixie-cron crontabs


Edit the /etc/crontab file and add the following line at the end:

*/5 * * * * cacti php /usr/share/cacti/poller.php > /dev/null 2>&1


Next we’ll edit the directory directive in the Cacti configuration file for apache
(/etc/httpd/conf.d/cacti.conf) to allow access to the web interface from other hosts besides
localhost. Change the Allow directive to suit your network:

<Directory /usr/share/cacti/>

Order Deny,Allow

Deny from all

Allow from 192.168.0.0/16

</Directory>
Restart the Apache web server to apply our configuration changes:

shell# service httpd restart


Installing Cacti on CentOS 5.5 tutorial

What is Cacti? Cacti is a complete network, server and application graphing solution harnessing
the power of RRDtool OpenSource industry standard, high performance data logging and
graphing.
So before we start just some general house keeping. The base CentOS 5.5 server hostname and
IP address that we’ll be using in this tutorial:

* centos01.how2centos.com (IP 10.0.0.3)

The Cacti server will eventually be available on http://cacti.how2centos.com


The assumption, for this Cacti and CentOS 5.5 tutorial, is that you are running as root and have a
medium understanding of the software required or you’re Awesome.

# yum install yum-priorities

# rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-


0.3.6-1.el5.rf.i386.rpm
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-
4.noarch.rpm
# rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1.0-
6.ius.el5.noarch.rpm

Install Cherokee web server.

# yum install cherokee rrdtool

Install PHP 5.3

# yum install php53-pear php53 php53-cli php53-common php53-devel php53-gd


php53-mbstring php53-mcrypt php53-mysql php53-pdo php53-soap php53-xml
php53-xmlrpc php53-bcmath php53-pecl-apc php53-pecl-memcache php53-snmp

Install MySQL and MySQL Server

# yum install mysql mysql-server

Install SNMP

# yum install net-snmp net-snmp-utils

and finally install Cacti

# yum install cacti

Configure snmpd, move snmpd.conf and create a new one. The ‘snmpuser’ is what you’ll use later
in the Cacti interface.

# mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.old
# echo "rocommunity snmpuser" > /etc/snmp/snmpd.conf
Let make sure that everything is added to runlevels 2, 3, 4 and start them up.

# chkconfig mysqld on
# chkconfig snmpd on
# chkconfig cherokee on

# service mysqld start


# service snmpd start
# service cherokee start

Create ‘cacti’ MySQL database and grant privileges to ‘cactiuser’ with password ‘cactipassword’

# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 14323
Server version: 5.0.77 Source distribution

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql>create database cacti;


mysql>GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactipassword';
mysql>quit

Import the Cacti database schema

# mysql -ucactiuser -pcactipassword cacti < /var/www/cacti/cacti.sql

Configure Cacti with the details above.

# vi /var/www/cacti/include/config.php

1 /* make sure these values refect your actual database/host/user/password */


2 $database_type = "mysql";
3 $database_default = "cacti";
4 $database_hostname = "localhost";
5 $database_username = "cactiuser";
6 $database_password = "cactipassword";
7 $database_port = "3306";
Once all that has been done time to get PHP 5.3 working with Cherokee and then adding the Cacti
virtual server.

Firstly lets get PHP 5.3 working with Cherokee

# cherokee-admin -b

S-ar putea să vă placă și