En esta entrada veremos cómo instalar Cacti en openSUSE Leap 15 paso a paso, de forma que podrás monitorizar tu sistema openSUSE y otros sistemas y dispositivos de tu red local gracias a esta potente aplicación web.
Hay otras versiones de este tutorial para otros sistemas operativos que podrás encontrar con la caja de búsqueda de este sitio.
Contenido
Antes de instalar Cacti en openSUSE Leap 15
Si quieres seguir esta guía de instalación de Cacti en openSUSE Leap 15 será necesario partir del siguiente escenario:
- Una máquina openSUSE Leap 15.
- El entorno o pila LAMP (servicio web con PHP y bases de datos).
- Un usuario con permisos de sudo.
- Acceso a Internet.
Si no dispones aún del entorno necesario puedes consultar previamente nuestra guía de instalación de la pila LAMP en openSUSE Leap 15.
También necesitaremos algunas herramientas que obtendremos de los repositorios de openSUSE Leap 15, para lo que actualizamos las listas de paquetes:
~> sudo zypper refresh
E instalamos los paquetes necesarios:
~> sudo zypper install -y rrdtool
Cómo descargar Cacti para openSUSE Leap 15
Vamos a descargar Cacti para openSUSE Leap 15 desde la página de descargas del sitio oficial, para asegurarnos de obtener la última versión estable:
La descarga está disponible en forma de paquetes .tar.gz y .zip, siendo el más interesante el primer formato, que podremos descargar desde el navegador o directamente desde consola (especialmente si trabajamos de forma remota) con la herramienta wget:
~> wget https://www.cacti.net/downloads/cacti-1.2.20.tar.gz
Cómo instalar Cacti en openSUSE Leap 15
Para poder instalar Cacti en openSUSE Leap 15 tendremos que realizar toda una serie de preparativos en el sistema, que detallamos ordenadamente a continuación.
Archivos de Cacti
Descomprimimos el paquete que acabamos de descargar directamente en la ruta que nos interese:
~> sudo tar xf cacti-1.2.20.tar.gz -C /srv/www/
Como el nombre del subdirectorio que se crea contiene números de versión, podemos renombrarlo para facilitar la configuración y mantenimiento:
~> sudo mv /srv/www/cacti-1.2.20/ /srv/www/cacti
Cacti necesita escribir en su propia ruta de instalación, por lo que cambiamos la propiedad del directorio de instalación y de su contenido al usuario con el que corre el servicio web en openSUSE Leap 15:
~> sudo chown -R wwwrun: /srv/www/cacti/
Configuración de Cacti
En la configuración por defecto de Cacti para openSUSE Leap 15 se incluye la configuración de conexión a la base de datos, que modificaremos editando el archivo config.php:
~> sudo nano /srv/www/cacti/include/config.php
Localizamos la variable database_password:
... $database_type = 'mysql'; $database_default = 'cacti'; $database_hostname = 'localhost'; $database_username = 'cactiuser'; $database_password = 'cactiuser'; ...
Y por seguridad cambiamos el valor de la contraseña por defecto:
... $database_password = 'XXXXXXXX'; ...
El resto de valores los dejaremos intactos. Ya podemos guardar los cambios y continuar.
Servicio web
Creamos una configuración de Apache para poder hacer navegable Cacti:
~> sudo nano /etc/apache2/conf.d/cacti.conf
El contenido será el alias con el que acceder desde el navegador, y el permiso de acceso:
Alias /cacti /srv/www/cacti <Directory /srv/www/cacti> Require all granted </Directory>
Guardamos el archivo y recargamos la configuración del servicio web:
~> sudo systemctl reload apache2
PHP
Cacti requiere la instalación en openSUSE Leap 15 de ciertas extensiones, que instalamos desde los repositorios:
~> sudo zypper install -y php7-{gd,gettext,gmp,ldap,mbstring,posix,snmp,sockets,zlib}
O para la versión 8:
~> sudo zypper install -y php8-{gd,gettext,gmp,ldap,mbstring,posix,snmp,sockets,zlib}
Descargadas e instaladas las nuevas extensiones, recargamos la configuración del servicio web para que sean accesibles:
~> sudo systemctl reload apache2
Configuración
Por otro lado, modificaremos algunos parámetros de PHP, editando el archivo php.ini del módulo del servicio web:
~> sudo nano /etc/php7/apache2/php.ini
O si usas la versión 8:
~> sudo nano /etc/php8/apache2/php.ini
Buscamos las directivas max_execution_time y memory_limit:
... max_execution_time = 30 ... memory_limit = 128M ...
Y cambiamos los valores por defecto por los siguientes:
... max_execution_time = 60 ... memory_limit = 400M ...
Guardamos la configuración y la recargamos:
~> sudo systemctl reload apache2
También tendremos que realizar el mismo cambio para la variable memory_limit en el archivo php.ini de la versión de PHP para consola (CLI), editando su correspondiente archivo:
~> sudo nano /etc/php7/cli/php.ini
En este caso el cambio es de aplicación inmediata tras guardar el archivo.
Base de datos
Para crear la base de datos sobre la que se apoya Cacti, conectamos al servicio con el cliente de consola mysql con un usuario administrador:
~> mysql -u root -p
Creamos la base de datos para Cacti:
> create database cacti character set utf8mb4 collate utf8mb4_unicode_ci;
Creamos el usuario que administrará la base de datos de la siguiente forma:
> create user cactiuser@localhost identified by 'XXXXXXXX';
Concedemos los permisos al usuario sobre la base de datos:
> grant all privileges on cacti.* to cactiuser@localhost;
El usuario de la base de datos de Cacti también necesita acceder a la tabla de zonas horarias de MariaDB/MySQL, así que se lo concedemos:
> grant select on mysql.time_zone_name to cactiuser@localhost;
Y ya podemos cerrar la conexión:
> exit
Ya desde consola, cargamos la base de datos con el script SQL que proporciona Cacti:
~> mysql -u root -p cacti < /srv/www/cacti/cacti.sql
También debemos cargar la tabla de nombres de zonas horarias, que por defecto está vacía, pero necesitamos la herramienta adecuada.
Si has instalado la versión nativa de MariaDB para openSUSE Leap 15, habrá que instalar el siguiente paquete:
~> sudo zypper install -y mariadb-tools
Lo mismo se aplica para el caso de MySQL:
~> sudo zypper install -y mysql-community-server-tools
Una vez instaladas las herramientas, cargamos la tabla de nombre de zonas horarias:
~> mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql
Configuración del servicio
Serán necesarios algunos ajustes en el archivo de configuración, para MariaDB procedente del repositorio del sistema:
~> sudo nano /etc/my.cnf
Y para versiones procedentes del repositorio oficial:
~> sudo nano /etc/my.cnf.d/server.cnf
En la sección mysqld o server incluiremos o modificaremos (si ya existen) las siguientes directivas y sus valores:
... [mysqld] ... collation-server = utf8mb4_unicode_ci max-heap-table-size = 24M tmp-table-size = 24M join-buffer-size = 47M innodb-file-format = Barracuda innodb-large-prefix = 1 innodb-buffer-pool-size = 1024M 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 ...
Guardamos los cambios y reiniciamos el servicio:
~> sudo systemctl restart mariadb
Si durante la instalación se requiere algún valor distinto, repetiremos este paso para ajustarnos al requerimiento concreto.
Cron
Creamos una configuración para lanzar periódicamente la tarea que obtendrá los datos para las gráficas:
~> sudo nano /etc/cron.d/cacti
El contenido será la siguiente línea:
*/5 * * * * wwwrun /usr/bin/php /srv/www/cacti/poller.php > /dev/null 2>&1
Guardamos los cambios y la tarea se ejecutará a intervalos regulares (5 minutos en este caso).
Instalador web
Vamos a acceder al instalador web de Cacti para openSUSE Leap 15 desde el navegador, para lo que añadiremos el alias a la dirección (IP, nombre DNS, dominio, etc.) del servidor.
Por ejemplo, la máquina openSUSE Leap 15 sobre la que hemos desarrollado este tutorial es accesible en el subdominio opensuse15.local.lan, y hemos definido el alias /cacti, por lo que podremos acceder empleando http://opensuse15.local.lan/cacti como URL:
Se mostrará la página de inicio de sesión, en la que usamos el administrador por defecto, admin, con su contraseña por defecto, admin también.
Inmediatamente después de iniciar sesión habrá que cambiar la contraseña por otra más segura:
Realizado este trámite se presentará el acuerdo de licencia de Cacti:
En esta misma página del instalador también seleccionaremos el idioma en que queremos que se muestre la aplicación.
Aceptada la licencia, continuaremos con la página de requerimientos del sistema:
Si has seguido los pasos anteriores, todos los requisitos necesarios deberían cumplirse; si no es así, puedes solucionar el problema y recargar la comprobación para ver si es posible continuar.
A continuación elegiremos el tipo de instalación de Cacti para esta máquina openSUSE Leap 15:
Normalmente elegiremos instalar un nuevo servidor primario, ya que las sondas remotas son servidores secundarios que deben ir conectados a un servidor primario.
Seguidamente se comprobarán los permisos de los directorios, ya que Cacti debe poder escribir en algunos de ellos:
Otra comprobación será la presencia y ruta de acceso de determinadas utilidades de openSUSE Leap 15 que utilizará Cacti:
También habrá que confirmar que comprendemos el sistema de listas blancas para la toma de datos de Cacti:
En cuanto al perfil predeterminado, hace referencia a los intervalos de escaneo y lanzamiento de la tarea de Cron para la obtención de datos:
Los valores por defecto son aceptables, aunque en el apartado «Rango de Red» deberías asegurarte de especificar la dirección de tu red local.
La configuración de plantillas permite incorporar a Cacti una colección de ajustes predeterminados para cubrir una amplia variedad de sistemas y dispositivos:
Es seguro incluirlas todas inicialmente.
Otra comprobación será la relativa a la base de datos y sus tablas, en lo que respecta a la colación, juego de caracteres, etc.
Finalmente, reunida toda la configuración y pasados todos los requerimientos, llega el momento de iniciar el proceso de instalación como tal:
El proceso de instalación tomará unos instantes, mostrándose el progreso y la lista de tareas realizadas y su resultado:
Al terminar la instalación podremos revisar todo el registro de operaciones:
Podemos empezar a utilizar Cacti siguiendo el enlace «Comenzar» a pie de página.
Se mostrará la página principal de Cacti en openSUSE Leap 15, donde encontraremos todas las opciones recogidas en las solapas superiores y el panel lateral:
Como muestra del funcionamiento de Cacti, la aplicación monitoriza la máquina local openSUSE Leap 15, de modo que si visitamos la solapa «Gráficos» y a continuación en el panel lateral «Default Tree» y «Local Linux Machine» veremos los gráficos de actividad predeterminados:
Si ha transcurrido suficiente tiempo desde la creación de la tarea de Cacti para el servicio Cron, ya habrá datos disponibles para los gráficos. En caso contrario se mostrarán mensajes de error, pero como la página se refresca automáticamente, en pocos minutos aparecerán las gráficas.
Ya tienes todo listo para empezar a añadir y configurar más dispositivos de tu red local.
Conclusión
Ahora que sabes cómo instalar Cacti en openSUSE Leap 15 ya puedes comprobar de forma intuitiva el rendimiento de los sistemas y dispositivos de tu red local.
Si quieres notificar algún error o realizar alguna sugerencia, puedes dejar un comentario. Los comentarios están moderados para evitar SPAM, pero se revisan a diario.
¡Apoya comoinstalar.me!
¿Ya funciona Cacti en tu máquina openSUSE Leap 15? Si es así y quieres agradecérnoslo colaborando con el mantenimiento de este sitio y la creación de más guías y artículos, puedes hacerlo dejando una propina de 1 $ para una CocaCola desde PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!
Actualizado a la versión 1.2.20.