Cómo instalar Cacti en Ubuntu 18.04 LTS

En este artículo vamos a ver cómo instalar Cacti en Ubuntu 18.04 LTS Bionic Beaver paso a paso, un sistema de monitorización de equipos de red con el que podrás conocer el estado de tus dispositivos gracias a su interfaz web.

Este tutorial está disponible también para otras versiones de Ubuntu e incluso para otros sistemas operativos que puedes encontrar en nuestro buscador.

Antes de instalar Cacti en Ubuntu 18.04 LTS

Si quieres completar los pasos de esta guía de instalación de Cacti en Ubuntu 18.04 LTS Bionic Beaver, debes asegurarte de cumplir estos requerimientos:

  • Un sistema Ubuntu 18.04 LTS Bionic Beaver actualizado.
  • Una pila o entorno tipo LAMP (servicio web con PHP y bases de datos).
  • Paquetes adicionales: wget.
  • Acceso a línea de comandos con permisos de sudo.
  • Conexión a Internet.

Si todavía no dispones del entorno mínimo, puedes consultar previamente nuestra guía de instalación de la pila LAMP en Ubuntu 18.04.

Cómo descargar Cacti para Ubuntu 18.04

Vamos a descargar Cacti para Ubuntu 18.04 desde el sitio web del proyecto para obtener la última versión estable, ya que los paquetes disponibles en los repositorios de la distribución son algo antiguos.

como descargar cacti para ubuntu 18.04 lts bionic beaver

En la sección de descargas encontramos el paquete disponible en varios formatos de compresión:

descargar cacti para ubuntu 18.04 lts bionic beaver

Para Ubuntu 18.04 escogeremos el paquete .tar.gz, cuyo enlace podemos copiar para descargar desde consola con el comando wget:

~$ wget https://www.cacti.net/downloads/cacti-1.2.20.tar.gz

Cómo instalar Cacti en Ubuntu 18.04

Para conseguir instalar Cacti en Ubuntu 18.04 LTS será necesario realizar bastantes preparativos en el sistema, ya que el instalador web de Cacti es bastante ‘exigente’. Vamos a detallar este proceso a continuación.

Pre-requisitos

Instalaremos algunos paquetes necesarios, para lo que antes actualizamos la información de los repositorios de Ubuntu 18.04 LTS:

~$ sudo apt update

E instalamos los pre-requisitos:

~$ sudo apt install -y rrdtool

Archivos de Cacti

Descomprimimos el paquete de Cacti que acabamos de descargar en su ubicación definitiva:

~$ sudo tar xf cacti-1.2.20.tar.gz -C /var/www/

Para facilitar la configuración e instalación, interesa crear un enlace simbólico sin números de versión en su nombre:

~$ sudo ln -s /var/www/cacti-1.2.20/ /var/www/cacti

Cambiaremos la propiedad de algunos subdirectorios para que la aplicación, a través del servidor web, pueda escribir en ellos:

~$ sudo chown www-data: /var/www/cacti/log/
~$ sudo chown -R www-data: /var/www/cacti/cache/
~$ sudo chown -R www-data: /var/www/cacti/resource/
~$ sudo chown www-data: /var/www/cacti/scripts
~$ sudo chown www-data: /var/www/cacti/include/vendor/csrf/
~$ sudo chown -R www-data: /var/www/cacti/rra/

Cacti incluye unos valores de configuración por defecto para la conexión con el servicio de bases de datos en Ubuntu 18.04 que se almacenan en el archivo include/config.php. Editamos este archivo:

~$ sudo nano /var/www/cacti/include/config.php

Y en la sección de valores de configuración de la base de datos veremos lo siguiente:

...
$database_default  = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'cactiuser';
...

La base de datos se llama cacti, el usuario del servicio de bases de datos es cactiuser y la contraseña también es cactiuser. Puedes dejar todos estos valores tal cual están o modificarlos. En este tutorial, por seguridad, modificaremos la contraseña:

...
$database_password = 'XXXXXXXX';
...

Si vamos a acceder a la aplicación Cacti desde el dominio o nombre DNS del servidor Ubuntu 18.04, para aumentar la seguridad sería interesante configurar la variable cacti_cookie_domain:

...
//$cacti_cookie_domain = 'cacti.net';
...

La activaremos eliminando los caracteres // al inicio de línea y cambiaremos su valor por defecto con el dominio de la máquina Ubuntu 18.04 donde residirá Cacti (ubuntu64.local.lan en este ejemplo):

...
$cacti_cookie_domain = 'ubuntu64.local.lan';
...

Si no lo consideras necesario, piensas acceder por dirección IP, etc. puedes dejar desactivada esta variable.

Guardamos los cambios y cerramos el archivo.

Servidor web

Para integrar Cacti en el servicio web de Ubuntu 18.04, crearemos un archivo de configuración de Apache para esta aplicación:

~$ sudo nano /etc/apache2/sites-available/cacti.conf

Con este contenido:

Alias /cacti /var/www/cacti

Guardamos los cambios, cerramos el archivo y activamos esta nueva configuración:

~$ sudo a2ensite cacti.conf

Y recargamos la configuración del servicio web para aplicarla:

~$ sudo systemctl reload apache2

PHP

Cacti requiere ciertos valores en la configuración general de este lenguaje, por lo que editamos el archivo php.ini:

~$ sudo nano /etc/php/x.x/apache2/php.ini

Buscaremos las siguientes directivas:

...
max_execution_time = 30
...
memory_limit = 128M
...

Y cambiamos sus valores por defecto por los siguientes:

...
max_execution_time = 60
...
memory_limit = 400M
...

Por otro lado, Cacti también necesita la presencia en Ubuntu 18.04 de ciertas extensiones que instalaremos con apt. Si usas la versión nativa de PHP para Ubuntu 18.04 bastará con usar el siguiente comando:

~$ sudo apt install -y php-{gd,gmp,ldap,mbstring,snmp,xml}

Pero si usas una versión procedente del repositorio alternativo, habrá que indicar el número de la misma en el nombre de los paquetes; por ejemplo, para la versión 7.4:

~$ sudo apt install -y php7.4-{gd,gmp,ldap,mbstring,snmp,xml}

Y recargamos la configuración del servicio web o PHP, según corresponda:

~$ sudo systemctl reload apache2

Servicio de bases de datos

Hay que preparar el servicio de bases de datos MariaDB/MySQL que tengamos en funcionamiento, ya que Cacti necesita algunos cambios sobre la configuración por defecto de estos servicios en Ubuntu 18.04.

Empezaremos cargando la información de las zonas horarias, usando el comando mysql_tzinfo_to_sql:

~$ mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql

Puede que se muestre un pequeño mensaje de advertencia sobre el archivo leap-seconds.list, pero puedes ignorarlo.

Configuración del servicio

Por otro lado debemos realizar algunos ajustes de configuración del servicio de bases de datos, editando su configuración.

Para MariaDB 10.1 procedente de los repositorios de Ubuntu o MariaDB 10.3 ó 10.5, editaríamos el archivo 50-server.cnf:

~$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Mientras que para MariaDB 10.4 editaríamos my.cnf:

~$ sudo nano /etc/mysql/my.cnf

En otras versiones de MariaDB o MySQL el archivo de configuración puede ser otro.

En cualquier caso, en la sección server o mysqld debemos asegurarnos de que existen los siguientes valores:

...
[server]
...
character_set_server		= utf8mb4
collation_server                = utf8mb4_unicode_ci
join_buffer_size                = 31M
innodb_file_format              = Barracuda
innodb_large_prefix             = 1
innodb_doublewrite		= OFF			# MariaDB > 10.1
innodb_buffer_pool_size         = 1024M
innodb_additional_mem_pool_size = 80M			# Sólo MariaDB 10.1
innodb_flush_log_at_timeout     = 3
innodb_read_io_threads          = 32
innodb_write_io_threads         = 16
innodb_buffer_pool_instances    = 9
innodb_io_capacity              = 5000
...

Dependiendo de la versión de MariaDB/MySQL usada, algunas de estas directivas estarán ausentes, otras aparecerán con los mismos valores y otras aparecerán con valores distintos. Será necesario revisar el archivo de configuración para hacer los cambios oportunos.

Guardamos los cambios y reiniciamos el servicio, por ejemplo en MariaDB:

~$ sudo systemctl restart mariadb

Preparación de la base de datos para Cacti

Ya podemos crear la base de datos y el usuario para Cacti, conectando al servicio con el cliente de consola mysql y el usuario administrador:

~$ mysql -u root -p

En un paso anterior vimos los valores por defecto que usa Cacti para la conexión al servicio de bases de datos. Ahora crearemos la base, el usuario y la contraseña de acuerdo a cómo aparezcan en el archivo de configuración de Cacti.

En este tutorial sólo hemos cambiado la clave del usuario.

Creamos la nueva base de datos:

> create database cacti charset utf8mb4 collate utf8mb4_unicode_ci;

Creamos el usuario, en MariaDB o MySQL 5 del siguiente modo:

> create user cactiuser@localhost identified by 'XXXXXXXX';

Aunque en MySQL 8 se recomienda especificar el plugin de autenticación:

> create user cactiuser@localhost identified with mysql_native_password by 'XXXXXXXX';

Como en este tutorial modificamos la clave del usuario en la configuración de Cacti, hemos creado el usuario con dicha nueva contraseña.

Concedemos los privilegios:

> grant all privileges on cacti.* to cactiuser@localhost;

También le concedemos algún privilegio sobre la tabla de zonas horarias de MySQL:

> grant select on mysql.time_zone_name to cactiuser@localhost;

Y cerramos la sesión:

> exit

Inicializaremos la nueva base de datos usando el script SQL que Cacti proporciona:

~$ mysql -u root -p cacti < /var/www/cacti/cacti.sql

Cron

Cacti usará el servicio cron de Ubuntu 18.04 para lanzar las consultas de estado, por lo que debemos crear la tarea correspondiente:

~$ sudo nano /etc/cron.d/cacti

Con esta línea, que configura la ejecución de la consulta cada 5 minutos:

*/5 * * * *    www-data    /usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1

Instalador web

Llega el momento de acceder al instalador web de Cacti en Ubuntu 18.04 LTS, usando la dirección IP o dominio del servidor (ten en cuenta cómo has configurado la variable cacti_cookie_domain) y el alias que hemos configurado.

Por ejemplo, en este tutorial la máquina Ubuntu 18.04 es accesible en el dominio ubuntu64.local.lan, y hemos configurado el alias /cacti, por lo que usaremos http://ubuntu64.local.lan/cacti como URL.

Se mostrará la página de inicio de sesión:

como instalar cacti en ubuntu 18.04 lts bionic beaver

Introduciremos el nombre de usuario admin y la contraseña admin, aunque en la siguiente página debemos cambiar la contraseña:

instalar cacti en ubuntu 18.04 lts bionic beaver

Introducimos la contraseña del paso anterior y la contraseña definitiva y su confirmación, y pulsamos el botón «Guardar«.

Se inicializará el proceso de instalación y en unos instantes se mostrará el Acuerdo de licencia:

instalacion de cacti en ubuntu 18.04 lts bionic beaver

Elegimos el tema para la aplicación, el idioma y aceptamos el acuerdo de licencia antes de pulsar el botón «Comenzar«.

Se realizará una comprobación de los requisitos del sistema y se mostrará el resultado:

configuracion de ubuntu 18.04 lts para cacti

Si has seguido los pasos previos, los únicos mensajes de alerta que podrían aparecer serían relativos a la configuración general del servicio de bases de datos, mostrándose sugerencias  para ajustes de rendimiento, que serán aplicables de forma personalizada a cada sistema, dependiendo de la cantidad de memoria RAM, número y tipo de discos, etc.

Pero en cualquier caso son sólo sugerencias y la instalación puede continuar, pulsando el botón «Siguiente«.

El siguiente paso es elegir el tipo de instalación:

instalador de cacti en ubuntu 18.04 lts bionic beaver

En principio, la instalación habitual es de servidor primario, por lo que dejamos el valor por defecto y continuamos.

La siguiente comprobación es de permisos de escritura:

instalando cacti en ubuntu 18.04 lts bionic beaver

La siguiente comprobación corresponde a herramientas y binarios del sistema:

Tamtién tendremos que confirmar el uso de los métodos de captura de datos:

Confirmaremos el perfil predeterminado y las opciones por defecto, aunque es importante asegurarnos de que el rango de red sea correcto, ya que por defecto trabaja con la red 192.168.1.0/24 y hay muchas posibilidades de que nuestra red local sea distinta:

En la sección de configuración de plantillas se mostrarán las que puede ofrecer el instalador de Cacti:

En principio podemos dejarlas todas seleccionadas.

El siguiente paso será comprobar la base de datos:

Ahora empezará el proceso de instalación, que debemos confirmar:

Se iniciará el proceso de instalación, que tomará unos instantes, mostrándose el progreso:

Finaliza la instalación y se muestra un registro de acciones y resultados:

Siguiendo el enlace «Comenzar» se mostrará la página de inicio, con sesión iniciada con el usuario «admin«:

cacti para ubuntu 18.04 lts bionic beaver

Podremos ver los gráficos de estado de la máquina local visitando la solapa «Gráficos» y seleccionando «Local Linux Machine» en el panel lateral:

cacti en ubuntu 18.04 lts bionic beaver

Si has realizado la instalación y la visita a la sección de gráficos en 5 minutos es posible que aún no estén disponibles, al no haber ejecutado el servicio cron la tarea de consulta de datos.

Conclusión

Ahora que sabes cómo instalar Cacti en Ubuntu 18.04 LTS Bionic Beaver ya puedes empezar a monitorizar tus dispositivos y sistemas en red, y vigilar en qué estado se encuentran a través de su magnífica interfaz web.

Si te ha surgido alguna duda o pregunta, quieres sugerir mejoras o actualizaciones de este artículo, notificar algún error, etc., puedes dejar tu comentario que, aunque será moderado, estaré encantado de leer.

¡Apoya comoinstalar.me!

¿Ya has conseguido hacer funcionar la monitorización de tu red gracias a esta guía de instalación de Cacti en Ubuntu 18.04 LTS Bionic Beaver? En ese caso quizás te apetezca mostrar tu agradecimiento con una mínima aportación al mantenimiento de este sitio y la creación de más tutoriales.

Puedes ayudarnos dejando 1 $ de propina en PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

Valora esta entrada

5/5 - (2 votos)

4 comentarios en «Cómo instalar Cacti en Ubuntu 18.04 LTS»

Deja un comentario