Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the jetpack domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rank-math-pro domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wpforms-lite domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the breadcrumb-navxt domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the advanced-ads domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the post-views-counter domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/u540705931/domains/danielbenites.com/public_html/wp-includes/functions.php on line 6114
Como instalar CACTI en Ubuntu 20.04 - Parte 1 | Daniel Benites
https://youtu.be/w6iV9vKCV5s

Introduccion

Sigo buscando un software de monitoreo que me brinde alguna solución que mejore mi trabajo, por ello es que trato de probar cuanto software veo o escucho por la red.

Anuncios

Hoy, instalaremos en mi Laboratorio una versión de Cacti.

Que es Cacti?

Cacti es un software de monitoreo y reporte de fallas con una capacidad de manejar datos en entornos gráficos complejos, posee varios métodos de adquisición de Datos y su interfaz web es amigable y robusta.

Website de Cacti

Instalando Cacti

Para instalar Cacti necesitamos un LAMP y Ubuntu, u otra distribución de Linux o Unix, (En mi caso particular disfruto trabajar con Ubuntu por su sencillez)

En mi Caso, tengo en mi Laboratorio un Proxmox, con el que hago las pruebas y ya tengo lista un VM con Ubuntu.

Ubuntu Listo

Instalando Apache

Como es costumbre empezaremos por entrar como super usuario.

sudo su
SUDO Plis

Acto seguido por costumbre, actualizaremos el sistema

apt-get update -y

El -y hará que no tengamos que presionar el Y de Yes cuando salga el prompt.

Update

Seguimos con la instalación de Apache2

apt install apache2 -y
Instalando Apache

Iniciamos y activamos apache en nuestro sistema

systemctl start apache2
systemctl enable apache2
Otros comandos que permite systemctl son stop, restart, status.
Por ejemplo:
systemctl status apache2

De esto salimos con Ctrl + C, y volvemos a la línea de comandos.

Instalando MariaDB

Mucha de la informacion de configuracion y de los dispositivos que monitoreamos se almacena en una base de datos, como es de costumbre. Instalaremos el servidor y el cliente.

apt install madiadb-server mariadb-client -y
MariaDb instalación

Luego de Instalar el servidor, debemos hacer algunas adiciones al archivo de configuración, por lo que lo abriremos con nano:

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

Y agregaremos las siguientes líneas debajo de la sección [mysql]

Nano editando el archivo de configuración de MariaDB

Y nos quedara algo asi

Líneas agregadas

Hacemos Ctrl + X y Ponemos Y + Enter

Y recargamos el servicio de MariaDB

systemctl restart mariadb
Esto demora unos 10 segundos

Instalamos PHP y las extensiones que vamos a necesitar.

Como ya es costumbre, el manejo de este tipo de software se realiza vía web, tanto para la consulta de datos como para la manipulación de las configuraciones.

Y para ello lo que más se usa es php. De la documentación pude extraer que extensiones iba a necesitar

apt install libapache2-mod-php php-mysql php-xml php-gd php-snmp php-json php-intl php-mbstring php-ldap php-gmp -y
Deberíamos tener algo como esto.

Ahora, nos toca hacer varios ajustes en el archivo de configuración de apache.

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

Los cambios que vamos a realizar son 3:

date.timezone = "Tu zona horaria Continente/Ciudad"
memory_limit = 512M
max_execution_time = 60

Si ponemos Ctrl + W podremos buscar dentro del documento las líneas que deseamos encontrar, nos aparecerá una linea gris abajo, como esta:

Buscamos, hacemos los respectivos cambios, salvamos con Ctrl + X y Y+Enter y listo.

Instalamos SNMP y RRDTool

Ya estamos en los últimos pasos, ambas herramientas sirven para recopilar información y ver información dentro de equipos.

apt install rrdtool snmp snmpd snmp-mibs-downloader libsnmp-dev

Ahora ya te toca poner Y, para que no te duermas con el copy/paste (jeje)

Instalación de Herramientas

Creamos la Base de Datos de Cacti(OJO)

Te recomiendo tener mucho cuidado en este paso, en la creación de base de datos siempre hay que ser paciente, sea el software que sea. Y seguir los pasos con exactitud. Ya me ha pasado muchas veces que se ha fastidiado una instalación larguísima por andar de apurado.

Vamos a ingresar como root a mysql

mysql -u root -p

Nos preguntará por un password, solo damos enter

Creamos la base datos

CREATE DATABASE cacti DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
GRANT ALL PRIVILEGES ON cacti.* TO 'cacti_user'@'localhost' IDENTIFIED BY 'strongpassword';
GRANT SELECT ON mysql.time_zone_name TO cacti_user@localhost;
ALTER DATABASE cacti CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
FLUSH PRIVILEGES;
EXIT;
Base de datos creada

Descargamos y configuramos Cacti

Para descargar Cacti lo bajaremos desde su website, la última versión

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

En este momento, la ultima versión es la 1.2.20, cosa que deben tener en cuenta. Ya veremos por que.

Vamos a crear un directorio en el Public de Apache

mkdir /var/www/html/cacti

Extraemos el archivo descargado en ese directorio

tar xzf cacti-latest.tar.gz -C /var/www/html/

Vemos que la carpeta que ha creado tiene otro nombre, asi que lo que hago es copiar y ponerle el nombre

cp -r cacti-1.2.20/ cacti/

Borro la carpeta cacti-1.2.20

Borrando la carpeta
rm -r cacti-1.2.20/

Cambiamos los permisos del directorio dándole propiedad a www-data, ya que es data para la web:

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

Ahora nos toca importar la base de datos a la base de datos que creamos

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

Esto demora un poco, luego volvemos a Mysql

mysql -u root -p

Le damos permiso al usuario de Cacti para que acceda a la zona horaria

GRANT SELECT on mysql.time_zone_name to cacti_user@localhost;

FLUSH PRIVILEGES;

EXIT;

Configuramos los detalles de la conexión de la Base datos

Para ello, editaremos el php de configuración de Cacti

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

De ir todo bien, deberíamos ver esto

Config de Cacti

Y procedemos a bajar para cambiar los parametros

Cambiamos parametros
$database_type     = 'mysql';
$database_default  = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cacti_user';
$database_password = 'strongpassword';

Guardamos y salimos

Creamos una configuración para Cacti en Apache

Creamos un nuevo Host Virtual para la web de Cacti

nano /etc/apache2/sites-available/cacti.conf
Alias /cacti    /var/www/html/cacti
<Directory /var/www/html/cacti/>
  <IfModule mod_authz_core.c>
     Require all granted
  </IfModule>
</Directory>

Agregamos esas lineas al archivo vacío, guardamos y salimos. Reiniciamos Apache

systemctl restart apache2

Entrando al Servidor

Ya tendremos instalado el CActi, ahora solo deberemos configurar parámetros desde la interfaz web. Eso lo haremos en la parte 2.

Anuncios