Monitoreo con Cacti

De WikiSalud
Saltar a: navegación, buscar

Contenido

Resumen

Instalación y puesta en marcha de Cacti como herramienta de monitoreo

Introducción

Cacti es una herramienta de monitoreo basada en estándares libres y herramientas de amplio uso: SNMP por un lado y RRD por el otro. Su sistema de plugin le ha conferido una base de usuarios amplia

Procedimiento

Vamos a proyectar explícitamente un equipo con el que nos asistamos en la configuración, al cual nos referimos como host_asistente

Instalación

Usaremos la versión (0.8.8b) que se encuentra en los repositorios de Debian:

aptitude install cacti
Descripción Ilustración
El siguiente mensaje de error es para evidenciar un problema de retrocompatibilidad que no nos interesa en este punto
(thumbnail)
Quinto paso
Configurar una contraseña cualquiera. Más adelantes podríamos cambiarla como parte de nuestros esfuerzos por securizar a mysql
(thumbnail)
Quinto paso
En medio de la instalación, aparece este mensaje que no tiene mayor repercusión porque nosotros configuramos manualmente más adelante
(thumbnail)
Quinto paso
La siguiente pantalla nos sugiere ayudarnos en la configuración de la base de datos. Pasamos de su ayuda y lo haremos manualmente en el transcurso de esta guía
(thumbnail)
Quinto paso

Configuración

Servidor Web

La configuración más básica consiste en desactivar la configuración por defecto para /cacti, tomar el fichero de configuración /etc/apache2/conf-available/cacti.conf y copiárselo a /etc/apache2/sites-enabled/000-default.conf, así que este fichero queda básicamente de la siguiente forma:

<VirtualHost *:80>
    #ServerName www.example.com

    ServerAdmin alortiz@salud.gob.sv
    DocumentRoot /usr/share/cacti/site

    <Directory /usr/share/cacti/site>
        Options +FollowSymLinks
        AllowOverride None
        <IfVersion >= 2.3>
            Require all granted
        </IfVersion>
        <IfVersion < 2.3>
            Order Allow,Deny
            Allow from all
        </IfVersion>

        AddType application/x-httpd-php .php

        <IfModule mod_php5.c>
            php_flag magic_quotes_gpc Off
            php_flag short_open_tag On
            php_flag register_globals Off
            php_flag register_argc_argv On
            php_flag track_vars On
            # this setting is necessary for some locales
            php_value mbstring.func_overload 0
            php_value include_path .
        </IfModule>

        DirectoryIndex index.php
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Aprovechamos a borrar la configuración que cacti traía por defecto, además de un par de módulos de Apache que no necesitaremos para su funcionamiento. (De hecho, podrían ser más)

a2disconf cacti
a2dismod cgi autoindex status -f
systemctl restart apache2.service

Servidor de Base de Datos

Cambiamos algunas opciones de seguridad por defecto corriendo mysql_secure_installation

mysql_secure_installation

Respondemos de la siguiente manera

Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y 
Reload privilege tables now? [Y/n] y

Configuramos un usuario (cacto) y contraseña (cacto) para usar una base de datos específica (cacto).

mysql -u root -p
mysql> create database cacto;
mysql> grant all privileges on cacto.* to 'cacto'@'%' identified by 'cacto';

Creación de Base de Datos

Hay dos locaciones para el script de creación de la base de datos (/usr/share/doc/cacti/cacti.sql y /usr/share/cacti/conf_templates/cacti.sql).

Tome en cuenta que lo primero que hace el script es borrar todos los datos disponibles en la base de datos

mysql -h localhost -u cacto -pcacto cacto < /usr/share/doc/cacti/cacti.sql

Migración desde un servidor existente

Para migrar desde una instalación existente, nuestro enfoque será el de exportar la base de datos a una nueva. Así, ejecutar desde el servidor en producción en el que se encuentra la base de datos:

mysqldump --default-character-set=latin1  -uroot -p123456 cacti -r backup.sql

siendo backup.sql el fichero que debemos tener disponible para nuestra nueva instalación. La opción -h' debería permitir hacerlo de un equipo remoto si se dispone de permisos para acceso directo, lo cual de hecho no debería estar disponible.

Movemos el fichero desde host_asistente:

scp root@servidor_produccion:~/backup.sql .
scp backup.sql root@192.168.2.12:~/

Ahora recuperamos la base de datos a usar. Ejecutamos en el servidor de migración:

mysql -u cacto -pcacto cacto < ~/backup.sql

La opción -h debería permitir hacerlo desde un equipo remoto si se dispone de permisos, pero lo mejor es que dichos permisos no estén disponible por cuestiones de seguridad.

El verdadero proceso de actualización será llevado a cabo por la herramienta de instalación de cacti, ella se encarga de adecuar la base de datos según los nuevos requerimientos. Según parece, es posible migrar desde la versión 0.8.0 a la 0.8.8b, aunque para esta guía lo probamos desde una versión 0.8.7.g

Configuración Inicial de Cacti

Modificar el fichero /usr/share/cacti/site/include/config.php para acceder a la base de datos y establecer la url por defecto:

$database_type = "mysql";
$database_default = "cacto";
$database_hostname = "localhost";
$database_username = "cacto";
$database_password = "cacto";
$database_port = "";
$database_ssl = false;

/*
   Edit this to point to the default URL of your Cacti install
   ex: if your cacti install as at http://serverip/cacti/ this
   would be set to /cacti/

   Debian addition:
   If used together with a http deamon, it should be configured
   consistently. Using an empty path makes all links relative.
*/
$url_path = "/";

Ahora accedemos con el navegador de nuestra preferencia al servidor en el cual hemos instalado a cacti. El proceso de instalación irá de la siguiente forma:

Descripción Ilustración
Iniciando la herramienta de instalación/migración
(thumbnail)
Primer Paso
La opción por defecto parece ser New Install, pero al haber recuperado la base de datos de la instalación anterior, la selección se situa en Upgrade from cacti 0.8.x, sin embargo, es necesario verificar este pequeño detalle
(thumbnail)
Primer Paso
El siguiente debería ser el resultado final de la actualización que realiza la herramienta de cacti
(thumbnail)
Primer Paso
Estas últimas verificaciones sobre software requerido no deberían ser problema habiendo instalado a cacti desde los repositorios
(thumbnail)
Primer Paso

Luego aparece la página de acceso a cacti. Podemos usar con nuestras credenciales anteriores, que para eso copiamos toda la base de datos.

Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas