Cómo instalar la herramienta de monitoreo de red Cacti en Ubuntu 20.04

Inicio de sesión de cactus

Cacti es una herramienta de monitoreo de red gratuita, de código abierto y basada en la web escrita en PHP. Es una aplicación front-end para RRDtool. Utiliza el protocolo SNMP para monitorear la utilización del ancho de banda y el tráfico de red de un enrutador o conmutador. Muestra la carga de la CPU y la utilización del ancho de banda de la red en un formato de gráfico y los completa con datos en una base de datos MySQL.

En este tutorial, le mostraremos cómo instalar la herramienta de monitoreo Cacti en el servidor Ubuntu 20.04.

requisitos previos

  • Un servidor con Ubuntu 20.04.
  • Se configura una contraseña de root en el servidor.

Empezando

Antes de comenzar, es una buena idea actualizar todos los paquetes del sistema a la última versión. Puede actualizarlos con el siguiente comando:

apt-get update -y

Una vez que todos los paquetes estén actualizados, instale otras dependencias requeridas ejecutando el siguiente comando:

apt-get install snmp php-snmp rrdtool librrds-perl unzip curl git gnupg2 -y

Una vez que todas las dependencias estén instaladas, puede continuar con el siguiente paso.

Instalar servidor LAMP

A continuación, deberá instalar el servidor web Apache, MariaDB, PHP y otras extensiones de PHP requeridas en su servidor. Puede instalarlos todos ejecutando el siguiente comando:

apt-get install apache2 mariadb-server php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y

Después de instalar todos los paquetes, edite el archivo php.ini y realice algunos cambios:

nano /etc/php/7.4/apache2/php.ini

Cambia las siguientes líneas:

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Guarde y cierre el archivo, luego edite otro archivo php.ini y realice algunos cambios:

nano /etc/php/7.4/cli/php.ini

Cambia las siguientes líneas:

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servicio de Apache para aplicar los cambios:

systemctl restart apache2

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar servidor MariaDB

Cacti usa MariaDB como base de datos. Por lo tanto, deberá crear una base de datos y un usuario para Cacti.

Primero, edite el archivo de configuración predeterminado de MariaDB y modifique algunas configuraciones:

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

Agregue / modifique las siguientes líneas dentro [mysqld] sección:

collation-server = utf8mb4_unicode_ci
max_heap_table_size = 128M
tmp_table_size = 64M
join_buffer_size = 64M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 512M
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000

Guarde y cierre el archivo, luego reinicie el servicio MariaDB para aplicar los cambios:

systemctl reiniciar mariadb

A continuación, inicie sesión en el shell de MariaDB con el siguiente comando:

mysql

Una vez que inicie sesión, cree una base de datos y un usuario para Cacti con el siguiente comando:

MariaDB [(none)]> create database cactidb;
MariaDB [(none)]> GRANT ALL ON cactidb.* TO [email protected] IDENTIFIED BY 'password';

A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

A continuación, deberá importar los datos de la zona horaria a la base de datos MySQL. Puedes importarlo con el siguiente comando:

mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql

A continuación, inicie sesión en el shell de MariaDB y otorgue los privilegios necesarios en la zona horaria de MySQL con el siguiente comando:

mysql
MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO [email protected];

A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Una vez que haya terminado, puede continuar con el siguiente paso.

Instalar y configurar cactus

Primero, deberá descargar la última versión de Cacti desde su sitio web oficial. Puedes descargarlo con el siguiente comando:Publicidad

wget https://www.cacti.net/downloads/cacti-latest.tar.gz

Una vez que se complete la descarga, extraiga el archivo descargado con el siguiente comando:

tar -zxvf cacti-latest.tar.gz

A continuación, mueva el directorio extraído al directorio raíz de Apache con el siguiente comando:

mv cacti-1* /var/www/html/cacti

A continuación, importe la base de datos a cactidb ​​con el siguiente comando:

mysql cactidb < /var/www/html/cacti/cacti.sql

A continuación, edite el archivo Cacti config.php y defina la configuración de su base de datos:

nano /var/www/html/cacti/include/config.php

Cambia las siguientes líneas:

$database_type     = 'mysql';
$database_default  = 'cactidb';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'password';
$database_port     = '3306';

Guarde y cierre el archivo y luego cree un archivo de registro para Cacti.

touch /var/www/html/cacti/log/cacti.log

A continuación, establezca la propiedad y el permiso del directorio de cactus con el siguiente comando:

chown -R www-data:www-data /var/www/html/cacti/
chmod -R 775 /var/www/html/cacti/

A continuación, cree un nuevo archivo de trabajo cron de Cacti con el siguiente comando:

nano /etc/cron.d/cacti

Agregue la siguiente línea:

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

Guarde y cierre el archivo cuando haya terminado.

En este punto, Cacti está instalado y configurado. Ahora puede continuar con el siguiente paso.

Configurar Apache para Cactus

A continuación, deberá crear un archivo de configuración de host virtual de Apache para Cacti. Puedes crearlo con el siguiente comando:

nano /etc/apache2/sites-available/cacti.conf

Agregue las siguientes líneas:

Alias /cacti /var/www/html/cacti

  <Directory /var/www/html/cacti>
      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_php.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>

Guarde y cierre el archivo, luego habilite el archivo de host virtual con el siguiente comando:

a2ensite cacti

A continuación, reinicie el servicio de Apache para aplicar los cambios de configuración:

systemctl restart apache2

También puede verificar el estado del servicio de Apache con el siguiente comando:

systemctl status apache2

Deberías obtener el siguiente resultado:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-12-02 03:11:25 UTC; 9s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 15445 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 15459 (apache2)
      Tasks: 6 (limit: 4691)
     Memory: 13.2M
     CGroup: /system.slice/apache2.service
             ??15459 /usr/sbin/apache2 -k start
             ??15460 /usr/sbin/apache2 -k start
             ??15461 /usr/sbin/apache2 -k start
             ??15462 /usr/sbin/apache2 -k start
             ??15463 /usr/sbin/apache2 -k start
             ??15464 /usr/sbin/apache2 -k start

Dec 02 03:11:25 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceder a la interfaz web de cactus

Ahora, abra su navegador web y acceda a la interfaz web de Cacti usando la URL http://su-servidor-ip/cacti. Será redirigido a la página de inicio de sesión de Cacti:

Inicio de sesión de cactus

Proporcione el nombre de usuario y la contraseña de administrador predeterminados como administrador y haga clic en el Acceso botón. Debería ver la pantalla de restablecimiento de contraseña:

Cambiar contraseña de cactus

Cambie su contraseña predeterminada y haga clic en el Ahorrar botón. Debería ver la página del acuerdo de licencia:

Aceptar licencia

Acepte el acuerdo y haga clic en el Empezar botón. Debería ver la pantalla de comprobación previa a la instalación:

Comprobaciones previas a la instalación

Haga clic en el próximo botón. Debería ver la pantalla Tipo de instalación:

Tipo de instalación

Seleccione el tipo de instalación que desee y haga clic en el botón próximo botón. Debería ver la pantalla de verificación de permisos de directorio:

Permisos de directorio

Haga clic en el próximo botón. Debería ver la pantalla de verificación de versiones y ubicaciones binarias:

Ubicaciones binarias

Haga clic en el próximo botón. Debería ver la siguiente pantalla:

Listas blancas

Comprobar el «He leído esta declaración» y haga clic en el próximo botón. Debería ver la siguiente pantalla:

Red de automatización

Seleccione las opciones deseadas y haga clic en el próximo botón. Debería ver la pantalla de configuración de la plantilla:

Configuración de plantilla

Haga clic en el próximo botón. Debería ver la siguiente pantalla:

Configuración de la base de datos

Haga clic en el próximo botón. Debería ver la pantalla Confirmar instalación:

Confirmar instalación

Comprobar el «Confirmar instalación» y haga clic en el Instalar botón. Una vez finalizada la instalación, debería ver la siguiente pantalla:

Instalación completa

Haga clic en el Obtener Empezado botón. Debería ver el tablero de Cacti en la siguiente pantalla:

Tablero de cactus

Conclusión

¡Felicidades! Ha instalado y configurado con éxito la herramienta de monitoreo Cacti en el servidor Ubuntu 20.04. Ahora puede agregar dispositivos de red desde el tablero de Cacti y comenzar a monitorearlos desde el navegador web. No dude en preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *