Instalación y configuración de LibreNMS en un VPS para la monitorización de la infraestructura de red
TL;DR
En esta guía detallada, configuraremos paso a paso LibreNMS en un VPS moderno con Ubuntu 24.04 LTS para que pueda monitorizar eficazmente el rendimiento y el estado de su infraestructura de red, servidores y aplicaciones. Obtendrá un sistema de monitorización completamente funcional, capaz de recopilar datos mediante SNMP, ICMP y otros protocolos, visualizarlos y alertar sobre problemas.
- Instalación completa de LibreNMS desde cero en Ubuntu 24.04 LTS.
- Configuración del servidor web Nginx, PHP-FPM y la base de datos MariaDB.
- Garantía de seguridad del servidor mediante UFW y Fail2ban.
- Configuración de TLS/HTTPS para un acceso seguro a la interfaz web.
- Recomendaciones para copias de seguridad y mantenimiento del sistema.
- Sección detallada sobre la resolución de problemas comunes.
¿Qué configuramos y por qué?
La monitorización de la infraestructura de red es una tarea de vital importancia para cualquier propietario de servidor, desarrollador o administrador de sistemas. Permite identificar problemas a tiempo, analizar el rendimiento, planificar la escalabilidad y prevenir interrupciones. Hoy instalaremos y configuraremos LibreNMS – un potente sistema de monitorización de código abierto y completamente gratuito, basado en PHP/MySQL/SNMP. Ofrece una amplia gama de funciones para la recopilación, análisis y visualización de datos sobre el estado de servidores, dispositivos de red, aplicaciones y servicios.
Al final, obtendrá un panel centralizado que mostrará gráficos de uso de CPU, memoria, tráfico, estado de discos, temperaturas y muchas otras métricas para todos sus dispositivos. Podrá configurar alertas sobre el exceso de valores umbral o la indisponibilidad de servicios, recibiendo notificaciones por correo electrónico, Slack, Telegram u otros canales. Esto le permitirá reaccionar rápidamente a los incidentes y mantener la estabilidad de su infraestructura.
Existen varias alternativas a LibreNMS, cada una con sus propias características. Entre las soluciones populares se encuentran Zabbix (más complejo de configurar, pero muy flexible), Prometheus + Grafana (una potente pila para métricas, pero requiere una configuración separada de exportadores), Observium (un producto comercial con una versión gratuita limitada) o soluciones en la nube como Datadog, New Relic, Grafana Cloud. Sin embargo, los servicios en la nube suelen ser caros y ofrecen menos control sobre los datos, además de que pueden no ser adecuados para la monitorización de redes privadas sin una configuración VPN adicional. La instalación autónoma de LibreNMS en un VPS le otorga control total sobre los datos, ahorra presupuesto y permite adaptar el sistema a los requisitos únicos de su infraestructura, garantizando al mismo tiempo un alto rendimiento y flexibilidad.
¿Qué configuración de VPS se necesita para esta tarea?
La elección de un VPS adecuado para LibreNMS depende del número de dispositivos que planee monitorizar y de la frecuencia de recopilación de datos. LibreNMS puede ser bastante intensivo en recursos, especialmente si tiene muchos dispositivos y almacena datos durante un período prolongado.
Requisitos mínimos (para 5-10 dispositivos):
- CPU: 2 núcleos (por ejemplo, Intel Xeon E5 o similar).
- RAM: 4 GB. LibreNMS, PHP-FPM, Nginx y MariaDB consumen una cantidad significativa de memoria.
- Disco: 100 GB SSD. El SSD es crítico para el rendimiento de la base de datos y los archivos RRD (Round Robin Database), donde se almacenan los gráficos.
- Red: 100 Mbps. Para la monitorización suele ser suficiente, a menos que su VPS sea un nodo central para una gran cantidad de datos.
Plan de VPS recomendado (para 20-50 dispositivos):
Para un uso más serio, que incluya la monitorización de varias decenas de dispositivos y el almacenamiento de historial durante varios meses, se recomienda la siguiente configuración:
- CPU: 4 núcleos (por ejemplo, Intel Xeon Gold o AMD EPYC).
- RAM: 8 GB.
- Disco: 200-300 GB NVMe SSD. NVMe garantizará la máxima velocidad para las operaciones de disco.
- Red: 1 Gbps.
Puede considerar VPS con las características indicadas para alojar su instancia de LibreNMS. Asegúrese de que el plan tarifario elegido ofrezca suficiente memoria y una E/S de disco rápida.
Cuándo se necesita un dedicado y no un VPS
Si planea monitorizar cientos o miles de dispositivos, almacenar datos durante años, o si requiere un rendimiento muy alto y recursos aislados, entonces debería considerar un servidor dedicado (dedicated server). Los servidores dedicados ofrecen toda la potencia del hardware físico sin virtualización, lo que es ideal para bases de datos con mucha carga y operaciones intensivas de E/S. En este caso, puede elegir un dedicado adecuado para garantizar el nivel de rendimiento y escalabilidad necesarios.
Ubicación: qué afecta
La elección de la ubicación del VPS es importante para minimizar la latencia en la recopilación de datos. Aloje LibreNMS en la misma región o lo más cerca posible de los dispositivos que planea monitorizar. Esto reducirá el tiempo de respuesta de las solicitudes SNMP y proporcionará datos más precisos y oportunos.
Preparación del servidor
Antes de instalar LibreNMS, es necesario preparar su VPS. Utilizaremos Ubuntu Server 24.04 LTS como sistema operativo, ya que es actual y cuenta con soporte hasta 2029.
1. Conexión al servidor
Conéctese a su VPS por SSH, utilizando las credenciales proporcionadas por su proveedor. Se recomienda usar claves SSH para mayor seguridad.
ssh root@your_vps_ip_address
2. Creación de un nuevo usuario con permisos sudo
Trabajar como root no es seguro. Crearemos un nuevo usuario y lo añadiremos al grupo sudo.
adduser librenms_admin # Creamos un nuevo usuario
usermod -aG sudo librenms_admin # Lo añadimos al grupo sudo
Ahora, salga de root e inicie sesión con el nuevo usuario:
exit
ssh librenms_admin@your_vps_ip_address
3. Actualización del sistema e instalación de utilidades básicas
Actualizaremos la lista de paquetes y todos los paquetes instalados, además de instalar las utilidades necesarias.
sudo apt update && sudo apt upgrade -y # Actualizamos la lista de paquetes y el sistema
sudo apt install -y curl wget git vim htop screen unzip # Instalamos las utilidades básicas
4. Configuración del firewall (UFW)
UFW (Uncomplicated Firewall) es una interfaz fácil de usar para iptables. Lo configuraremos para permitir solo los puertos necesarios.
sudo ufw allow OpenSSH # Permitimos SSH (puerto 22)
sudo ufw allow http # Permitimos HTTP (puerto 80)
sudo ufw allow https # Permitimos HTTPS (puerto 443)
sudo ufw allow 161/udp # Permitimos SNMP (puerto 161 UDP) - para recibir traps SNMP
sudo ufw enable # Habilitamos el firewall
sudo ufw status # Verificamos el estado del firewall
La salida de sudo ufw status debería mostrar los puertos permitidos.
5. Instalación de Fail2ban
Fail2ban ayuda a proteger su servidor contra ataques de fuerza bruta, bloqueando las direcciones IP desde las cuales se han detectado múltiples intentos fallidos de inicio de sesión.
sudo apt install -y fail2ban # Instalamos Fail2ban
sudo systemctl enable fail2ban # Habilitamos el inicio automático de Fail2ban
sudo systemctl start fail2ban # Iniciamos Fail2ban
Fail2ban ya está configurado por defecto para proteger SSH. Puede crear un archivo de configuración /etc/fail2ban/jail.local para una configuración más fina, pero para empezar no es necesario.
Instalación de software — paso a paso
Ahora procederemos a instalar todos los componentes necesarios para LibreNMS. Utilizaremos Nginx como servidor web, PHP-FPM para procesar scripts PHP y MariaDB para la base de datos.
1. Instalación de Nginx
Nginx es un servidor web de alto rendimiento, ideal para contenido estático y para trabajar con PHP-FPM.
sudo apt install -y nginx # Instalamos Nginx
sudo systemctl enable nginx # Habilitamos el inicio automático de Nginx
sudo systemctl start nginx # Iniciamos Nginx
Puede verificar que Nginx está funcionando navegando a la dirección IP de su VPS en el navegador. Debería ver la página de bienvenida de Nginx.
2. Instalación de MariaDB
MariaDB es un fork de MySQL, totalmente compatible con él y que a menudo ofrece un mejor rendimiento.
sudo apt install -y mariadb-server mariadb-client # Instalamos el servidor y cliente de MariaDB
sudo systemctl enable mariadb # Habilitamos el inicio automático de MariaDB
sudo systemctl start mariadb # Iniciamos MariaDB
sudo mysql_secure_installation # Ejecutamos el script para proteger MariaDB
Durante la ejecución de mysql_secure_installation, se le pedirá que establezca una contraseña para el usuario root de la base de datos, elimine usuarios anónimos, prohíba el inicio de sesión remoto de root y elimine la base de datos de prueba. Se recomienda responder "Y" a todas las preguntas.
3. Instalación de PHP y PHP-FPM
LibreNMS requiere PHP. Para 2026, PHP 8.2 u 8.3 (o incluso más reciente) será relevante. Ubuntu 24.04 LTS generalmente viene con PHP 8.3.
sudo apt install -y php8.3-cli php8.3-fpm php8.3-mysql php8.3-gd php8.3-snmp php8.3-curl php8.3-xml php8.3-zip php8.3-mbstring php8.3-json php8.3-gmp php8.3-pear php8.3-bcmath php8.3-memcached php8.3-imagick php8.3-ssh2 php8.3-redis # Instalamos PHP-FPM y las extensiones necesarias
sudo systemctl enable php8.3-fpm # Habilitamos el inicio automático de PHP-FPM
sudo systemctl start php8.3-fpm # Iniciamos PHP-FPM
También es necesario instalar algunos paquetes del sistema que LibreNMS utiliza para la recopilación de datos y el procesamiento de gráficos.
sudo apt install -y snmp snmpd rrdtool fping imagemagick whois mtr-tiny nmap python3-pymysql python3-memcache python3-dotenv # Instalamos utilidades adicionales
4. Configuración de PHP para LibreNMS
Editaremos el archivo de configuración de PHP-FPM para aumentar los límites de memoria y tiempo de ejecución, lo cual es necesario para LibreNMS.
sudo vim /etc/php/8.3/fpm/php.ini # Abrimos el archivo de configuración de PHP-FPM
Encuentre las siguientes líneas y cambie sus valores:
memory_limit = 256M
max_execution_time = 300
date.timezone = Europe/Moscow ; o su zona horaria
Guarde los cambios y reinicie PHP-FPM:
sudo systemctl restart php8.3-fpm
5. Instalación de Composer
Composer es un gestor de dependencias para PHP, utilizado por LibreNMS para instalar componentes.
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer # Descargamos e instalamos Composer
6. Creación del usuario LibreNMS y clonación del repositorio
Crearemos un usuario de sistema separado para LibreNMS sin capacidad de inicio de sesión SSH y descargaremos el código fuente.
sudo useradd -r -M -d /opt/librenms librenms # Creamos el usuario de sistema librenms
sudo usermod -a -G librenms www-data # Añadimos el usuario librenms al grupo www-data (para Nginx)
sudo mkdir /opt/librenms # Creamos el directorio para LibreNMS
sudo chown librenms:librenms /opt/librenms # Establecemos el propietario del directorio
sudo chmod 775 /opt/librenms # Establecemos los permisos del directorio
sudo su - librenms # Cambiamos al usuario librenms
git clone https://github.com/librenms/librenms.git /opt/librenms # Clonamos el repositorio de LibreNMS
exit # Volvemos a nuestro usuario sudo
7. Instalación de dependencias de LibreNMS
Nos movemos al directorio de LibreNMS e instalamos todas las dependencias usando Composer.
sudo su - librenms # Cambiamos al usuario librenms
cd /opt/librenms # Nos movemos al directorio de LibreNMS
composer install --no-dev --optimize-autoloader # Instalamos las dependencias
exit # Volvemos a nuestro usuario sudo
8. Configuración de permisos de archivos de LibreNMS
Es necesario establecer los permisos de acceso correctos para algunos directorios para que LibreNMS pueda escribir datos.
sudo chown -R librenms:librenms /opt/librenms # Establecemos el propietario para todo el directorio
sudo setfacl -R -m g:www-data:rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ # Establecemos permisos ACL para el servidor web
sudo setfacl -R -m o::--- /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ # Denegamos el acceso a otros
Configuración
Después de instalar todos los componentes, es necesario configurarlos correctamente.
1. Configuración de la base de datos MariaDB
Crearemos una base de datos y un usuario para LibreNMS.
sudo mysql -u root -p # Nos conectamos a MariaDB como root (requerirá la contraseña que estableció anteriormente)
Dentro de la consola de MariaDB, ejecute los siguientes comandos, reemplazando your_db_password por una contraseña segura:
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'your_db_password';
GRANT ALL PRIVILEGES ON librenms. TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
2. Configuración de Nginx para LibreNMS
Crearemos un archivo de configuración de Nginx para LibreNMS. Eliminaremos la configuración predeterminada y crearemos una nueva.
sudo rm /etc/nginx/sites-enabled/default # Eliminamos la configuración por defecto
sudo vim /etc/nginx/sites-available/librenms.conf # Creamos una nueva configuración
Pegue el siguiente contenido en el archivo librenms.conf. Reemplace your_domain_or_ip con su dominio o dirección IP del VPS.
server {
listen 80;
server_name your_domain_or_ip;
root /opt/librenms/html;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/xml application/xml application/xml+rss text/javascript;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
location ~ /.env {
deny all;
}
location /images/os {
deny all;
}
# Enable for LibreNMS API
location /api {
try_files $uri $uri/ /api_v2.php?$query_string;
}
}
Guarde el archivo, cree un enlace simbólico y verifique la configuración de Nginx, luego reinícielo.
sudo ln -s /etc/nginx/sites-available/librenms.conf /etc/nginx/sites-enabled/ # Creamos el symlink
sudo nginx -t # Verificamos la configuración de Nginx en busca de errores
sudo systemctl reload nginx # Reiniciamos Nginx
3. Configuración básica de LibreNMS
LibreNMS utiliza el archivo config.php para las configuraciones principales. Lo crearemos a partir de un ejemplo.
sudo cp /opt/librenms/config.php.default /opt/librenms/config.php # Copiamos la plantilla de configuración
sudo vim /opt/librenms/config.php # Abrimos para editar
Encuentre y edite las siguientes líneas, reemplazando los valores con los suyos:
// Database config
$config['db_host'] = 'localhost';
$config['db_user'] = 'librenms';
$config['db_pass'] = 'your_db_password'; // Contraseña que estableció para el usuario librenms
$config['db_name'] = 'librenms';
// Other settings
$config['snmp']['community'][] = 'public'; // Añada sus cadenas de comunidad SNMP
$config['rrd_dir'] = '/opt/librenms/rrd'; // Directorio para archivos RRD
$config['log_dir'] = '/opt/librenms/logs'; // Directorio para logs
$config['timezone'] = 'Europe/Moscow'; // Su zona horaria
Guarde los cambios. Asegúrese de que la zona horaria en config.php coincida con la zona horaria en php.ini.
4. Configuración de tareas Cron
LibreNMS utiliza tareas cron para el sondeo regular de dispositivos, el procesamiento de datos y la ejecución de otras tareas en segundo plano.
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms # Copiamos el archivo cron
sudo vim /etc/cron.d/librenms # Abrimos para editar
Asegúrese de que todas las líneas comiencen con librenms, como el usuario bajo el cual se ejecutarán las tareas.
# /etc/cron.d/librenms: crontab entries for librenms
# Update LibreNMS every 5 minutes
/5 librenms /opt/librenms/discovery.php -h all >> /dev/null 2>&1
/5 librenms /opt/librenms/poller-wrapper.py 16 >> /dev/null 2>&1
# Daily maintenance tasks
15 0 librenms /opt/librenms/daily.sh >> /dev/null 2>&1
# Housekeeping
0 /6 librenms /opt/librenms/cronic /opt/librenms/db-schema-validate.php >> /dev/null 2>&1
Guarde el archivo.
5. Configuración del demonio SNMP (snmpd)
En el VPS donde está instalado LibreNMS, también es útil configurar snmpd para que el propio servidor LibreNMS pueda ser monitoreado como un dispositivo normal.
sudo vim /etc/snmp/snmpd.conf # Abrimos el archivo de configuración de snmpd
Comente o elimine la línea agentAddress udp:127.0.0.1:161 y añada agentAddress udp:161,udp6:[::1]:161 para escuchar en todas las interfaces.
Encuentre la línea rocommunity public default -V systemonly y cámbiela a algo como:
rocommunity your_snmp_community_string default -V systemonly
Reemplace your_snmp_community_string con su cadena de comunidad SNMP segura. También añada la siguiente línea para que snmpd pueda obtener información sobre discos y otras métricas:
disk /
Guarde los cambios y reinicie snmpd:
sudo systemctl restart snmpd
6. Instalación de TLS/HTTPS con Certbot
Para un acceso seguro a la interfaz web de LibreNMS, es necesario configurar HTTPS. Utilizaremos Certbot para obtener y renovar automáticamente los certificados SSL de Let's Encrypt.
sudo apt install -y certbot python3-certbot-nginx # Instalamos Certbot y el plugin para Nginx
sudo certbot --nginx -d your_domain_or_ip # Ejecutamos Certbot para obtener el certificado
Siga las instrucciones de Certbot. Cambiará automáticamente la configuración de Nginx, añadirá las entradas necesarias para HTTPS y configurará la renovación automática de certificados.
7. Verificación de la funcionalidad
Después de todas las configuraciones, abra su dominio o dirección IP en el navegador (ahora ya con HTTPS). Debería ver la página de instalación de LibreNMS.
- Paso 1: Vaya a
https://your_domain_or_ip. - Paso 2: Siga las instrucciones del instalador web de LibreNMS. Comprobará todas las dependencias. Si hay advertencias, asegúrese de haber completado correctamente todos los pasos anteriores.
- Paso 3: Cree el primer usuario administrativo.
- Paso 4: Una vez finalizada la instalación, accederá al panel de LibreNMS.
Ahora puede añadir su VPS con LibreNMS como dispositivo para monitorear, utilizando la cadena de comunidad que configuró en /etc/snmp/snmpd.conf.
Copias de seguridad y mantenimiento
Las copias de seguridad y el mantenimiento regulares son cruciales para cualquier sistema de producción. LibreNMS no es una excepción.
Qué respaldar
- Base de datos MariaDB: Contiene toda la información sobre sus dispositivos, configuraciones, usuarios e historial de eventos.
- Archivos de configuración de LibreNMS: Especialmente
/opt/librenms/config.phpy cualquier script o plantilla personalizada. - Archivos RRD: Estos archivos en
/opt/librenms/rrd/contienen todos los datos de los gráficos. Pueden ser muy grandes.
Script simple de copia de seguridad automática
Crearemos un script simple para la copia de seguridad diaria. El script realizará un volcado de la base de datos y archivará los archivos de configuración y los datos RRD.
sudo mkdir -p /opt/librenms/backups # Creamos el directorio para las copias de seguridad
sudo chown librenms:librenms /opt/librenms/backups # Establecemos el propietario
sudo vim /opt/librenms/backup.sh # Creamos el script de copia de seguridad
Pegue el siguiente contenido en backup.sh, reemplazando your_db_password con su contraseña de la base de datos de LibreNMS.
#!/bin/bash
# Configuración
DB_USER="librenms"
DB_PASS="your_db_password"
DB_NAME="librenms"
BACKUP_DIR="/opt/librenms/backups"
LIBRENMS_DIR="/opt/librenms"
TIMESTAMP=$(date +%Y%m%d%H%M%S)
# Creamos un volcado de la base de datos
echo "Volcando base de datos..."
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/librenms_db_$TIMESTAMP.sql
# Archivando configuraciones y RRDs
echo "Archivando configuraciones y RRDs..."
tar -czvf $BACKUP_DIR/librenms_files_$TIMESTAMP.tar.gz \
$LIBRENMS_DIR/config.php \
$LIBRENMS_DIR/rrd \
$LIBRENMS_DIR/logs \
--exclude="$LIBRENMS_DIR/backups"
# Eliminando copias de seguridad antiguas (más de 7 días)
echo "Limpiando copias de seguridad antiguas..."
find $BACKUP_DIR -type f -name "librenms_*" -mtime +7 -delete
echo "¡Copia de seguridad completada!"
Haga el script ejecutable y agréguelo a cron.
sudo chmod +x /opt/librenms/backup.sh # Hacemos el script ejecutable
sudo crontab -e -u librenms # Abrimos crontab para el usuario librenms
Agregue la siguiente línea al final del archivo cron para ejecutar la copia de seguridad diariamente (por ejemplo, a las 3:00 de la madrugada):
0 3 * * * /opt/librenms/backup.sh >> /opt/librenms/logs/backup.log 2>&1
Dónde almacenar
Almacenar las copias de seguridad en el mismo servidor que los datos originales no es seguro. Considere las siguientes opciones:
- Almacenamiento externo compatible con S3: Utilice utilidades como
s3cmdorclonepara sincronizar automáticamente las copias de seguridad con un almacenamiento en la nube (por ejemplo, Amazon S3, DigitalOcean Spaces, Backblaze B2). - VPS separado: Configure
rsynca través de SSH para copiar las copias de seguridad a otro de sus VPS. - Almacenamiento local con cifrado: Para volúmenes pequeños, se puede utilizar almacenamiento local, pero debe estar cifrado y copiarse regularmente de forma manual o mediante un script a un medio externo.
Actualizaciones: continuas vs ventana de mantenimiento
LibreNMS lanza actualizaciones regularmente. Es importante mantener el sistema actualizado.
- Actualizaciones continuas (Rolling updates): LibreNMS tiene un script
daily.shque realiza la actualización del código si se ejecuta desde cron. Esto es relativamente seguro para actualizaciones menores. - Ventana de mantenimiento: Para actualizaciones importantes (por ejemplo, cambio de versión de PHP o del kernel del SO) se recomienda asignar una ventana de mantenimiento.
- Detenga el poller de LibreNMS:
sudo systemctl stop librenms-poller.service(si utiliza el servicio systemd para el poller). - Realice una copia de seguridad completa.
- Realice la actualización del SO:
sudo apt update && sudo apt upgrade -y. - Actualice LibreNMS manualmente:
cd /opt/librenms && git pull && composer install --no-dev --optimize-autoloader && ./daily.sh. - Verifique los registros y la interfaz web.
- Inicie el poller:
sudo systemctl start librenms-poller.service.
- Detenga el poller de LibreNMS:
Solución de problemas + Preguntas frecuentes
P: ¿Qué configuración mínima de VPS es adecuada para LibreNMS?
R: Para empezar, si planea monitorear hasta 10 dispositivos, una configuración mínima aceptable sería 2 núcleos de CPU, 4 GB de RAM y 100 GB de SSD. Sin embargo, para un funcionamiento estable y el almacenamiento de datos durante un período más largo, se recomienda aumentar estos parámetros a 4 núcleos de CPU, 8 GB de RAM y 200 GB de NVMe SSD. Esto asegurará un mejor rendimiento de la base de datos y un funcionamiento más fluido de la interfaz web.
P: ¿Qué elegir: un VPS o un servidor dedicado para esta tarea?
R: Para la mayoría de los usuarios individuales o equipos pequeños, un VPS será la opción óptima, ofreciendo un buen equilibrio entre costo y rendimiento. Sin embargo, si gestiona una infraestructura grande con cientos o miles de dispositivos, requiere el máximo rendimiento del subsistema de disco y desea un aislamiento completo de los recursos, un servidor dedicado será una solución más adecuada. Le proporcionará control total sobre el hardware y un rendimiento garantizado.
P: La interfaz web de LibreNMS no carga o muestra un error 502 Bad Gateway. ¿Qué hacer?
R: El error 502 generalmente indica problemas con PHP-FPM. Verifique el estado de PHP-FPM: sudo systemctl status php8.3-fpm. Asegúrese de que esté en ejecución y funcionando. También revise los registros de Nginx (sudo tail /var/log/nginx/error.log) y PHP-FPM (sudo tail /var/log/php8.3-fpm.log o una ruta similar). A menudo, el problema está relacionado con permisos de archivo incorrectos, falta de memoria o errores en la configuración de PHP.
P: Los dispositivos han sido añadidos, pero los gráficos están vacíos o no hay datos.
R: Esto significa que el poller de LibreNMS no puede recopilar datos SNMP. Verifique lo siguiente:
- Firewall: Asegúrese de que el puerto 161 UDP esté abierto en el servidor LibreNMS y en el dispositivo de destino.
- Comunidad SNMP: Asegúrese de que la cadena de comunidad SNMP en LibreNMS (en
config.phpy al añadir el dispositivo) coincida con la configurada en el dispositivo de destino. - Daemon SNMP: En el dispositivo de destino, asegúrese de que
snmpdesté en ejecución y configurado correctamente. - Poller: Ejecute el poller manualmente para un dispositivo:
sudo su - librenms -c "/opt/librenms/poller.php -h <device_id_or_hostname> -r -f -d". Esto proporcionará una salida detallada del proceso de recopilación de datos.
P: LibreNMS funciona lento, las páginas tardan en cargar.
R: El funcionamiento lento puede ser causado por varias razones:
- Falta de recursos: Verifique la carga de la CPU, el uso de RAM y las operaciones de E/S del disco en su VPS (
htop,iostat,free -h). Si algún recurso está constantemente cargado, es posible que necesite un VPS más potente. - Optimización de MariaDB: Asegúrese de que MariaDB esté configurada de manera óptima. Para empezar, puede usar el script
mysqltuner.plpara obtener recomendaciones. - Workers de PHP-FPM: Es posible que no tenga suficientes procesos PHP-FPM. Edite
/etc/php/8.3/fpm/pool.d/www.confy aumentepm.max_children,pm.start_serversy otros parámetros, reiniciando PHP-FPM. - Actualizaciones RRD: Asegúrese de que las tareas cron funcionen correctamente y no haya retrasos en la actualización de los archivos RRD.
P: ¿Cómo añadir un nuevo dispositivo para monitoreo?
R: Después de iniciar sesión en la interfaz web de LibreNMS, vaya a la sección "Devices" -> "Add Device". Deberá especificar la dirección IP o el nombre de host del dispositivo, así como la cadena de comunidad SNMP. LibreNMS detectará automáticamente el tipo de dispositivo y comenzará la recopilación de datos.
Conclusiones y próximos pasos
¡Felicidades! Ha instalado y configurado LibreNMS con éxito en su VPS, creando un sistema potente y flexible para monitorear la infraestructura de red. Ahora tiene una herramienta centralizada para rastrear el estado y el rendimiento de todos sus dispositivos, lo que simplificará significativamente la gestión y reducirá el tiempo de respuesta a posibles problemas. Puede estar seguro de que su infraestructura está bajo control constante.
Ahora que la configuración básica está completa, puede seguir adelante:
- Adición de dispositivos: Comience a añadir todos sus servidores, routers, switches y otros dispositivos de red a LibreNMS.
- Configuración de alertas: Explore el sistema de alertas de LibreNMS. Configure notificaciones por correo electrónico, Slack, Telegram u otros canales para una información oportuna sobre eventos críticos.
- Exploración de funcionalidades: LibreNMS cuenta con una amplia funcionalidad, incluyendo autodescubrimiento, gráficos personalizados, mapas de red, integraciones. Dedique tiempo a estudiar la documentación y a experimentar con las diversas funciones para aprovechar al máximo el potencial de su nuevo sistema de monitoreo.