Categorías
18.04 20.04 HowTos RASPBIAN

Instalar Servidor NUT (Network UPS Tools) y Clientes en Ubuntu/Debian

En esta entrada vamos a ejecutar el procedimiento para la instalación de un servidor NUT y configurar clientes. Esto nos va a permitir automatizar el correcto apagado de los equipos en caso de una interrupción de la energía eléctrica.

Nut Logo

Network UPS Tools (NUT) es un software para diseñado para el monitoreo de fuentes de energía. Soporta varias marcas y expone por red un servicio de protocolo estandarizado.

NUT soporta más de 140 fabricantes y más de 1000 modelos de dispositivos. Podemos verificar la compatibilidad en https://networkupstools.org/stable-hcl.html

En un software de código abierto licenciado bajo la GPL.

Extraído de Wikipedia

Procedimiento para configurar Servidor NUT (Network UPS Tools):

Previo a la instalación debemos asegurarnos de tener el sistema actualizado, esto lo aseguramos con los siguientes comandos.

sudo apt update
sudo apt full-upgrade

Ahora vamos a proceder a instalar y configurar NUT

sudo apt install nut

Una vez instalada la solución procedemos a ejecutar nut-scanner para que nos reconozca la UPS que tenemos conectada al equipo.

sudo nut-scanner

Salida de pantalla de la ejecución del comando «nut-scanner».

En este caso detecto la UPS RS 900G, (APC Power-Saving Back-UPS Pro 900), utilizando el driver «usbhid-ups». Con esta información podemos configurar nut.

Sobre el final del /etc/nut/ups.conf agregar las líneas

[apc-900g]
         driver= usbhid-ups
         port = auto

finalizada la configuración de la ups reiniciamos el servicio nut-driver para que tome la configuración.

sudo systemctl restart nut-driver.service

Ahora vamos a configurar el servicio para que opere con nuestra ups. Para eso debemos editar el archivo nut.conf y definir el modo en el cual se va a funcionar el mismo. Los modos soportados son:

  • none: Configuración por defecto, servicio deshabilitado
  • standalone: Se utiliza cuando es un solo equipo alimentado desde la UPS.
  • netserver: Cuando hay varios servidores / dispositivos alimentados desde la UPS y el este es el que esta conectado a la UPS por USB.
  • netclient: Equipo alimentado por la UPS pero sin administración de la misma.

Para este ejemplo vamos a configurar el equipo en modo «netserver».

sudo vi /etc/nut/nut.conf

E incorporamos la siguiente línea definiendo el modo en el cual va a funcionar nut en este equipo (netserver -> Servidor de estado de UPS de red).

MODE=netserver

En el archivo /etc/nut/upsd.conf debemos editar e incorporar las ips sobre las cuales escuchará el servicio. En este caso definó el loopback y la ip del servidor representada en xxx.xxx.xxx.xxx

sudo vi /etc/nut/upsd.conf 

Incorporando estas líneas

LISTEN    127.0.0.1   3493
LISTEN    10.0.0.53   3493   # IP DEL EQUIPO

Con esto configurado iniciamos el servicio.

sudo systemctl start nut-server.service
sudo systemctl status nut-server.service

El siguiente paso es configurar los usuarios con los que trabajará el servicio. Para esto se debe editar el archivo upsd.user

sudo vi /etc/nut/upsd.users

E incorporar las siguientes líneas sobre el pie del mismo

[admin]
      password = S3cr3t0
      actions = SET FSD
      instcmds = ALL
      upsmon master
 [slave]
      password = S3cr3t1t0
      upsmon slave

Para verificar el correcto funcionamiento de la configuración podemos ejecutar el siguiente comando adecuando el nombre de la UPS que configuramos. Este comando muestra las variables de estado de la ups.

Con esto configurado volvemos a reiniciar el servicio.

sudo systemctl restart nut-server.service
sudo systemctl status nut-server.service
sudo upsc apc-900g
Información de la UPS.

Si queremos evitar despertarnos a los saltos ante el primer corte de luz, podemos deshabilitar el pitido de alerta de la UPS.

sudo upscmd apc-900g beeper.disable
Deshabilito el beep ante el corte de luz. El usuario y contraseña es el definido en el paso anterior.

Para saber que comandos soporta nuestra UPS podemos ejecutar el comando «sudo upscmd -l apc-900g» . Recuerden que apc-900g es el nombre que le asigne a esta UPS.

Cuando vi la información de la UPS ví que no se había ejecutado nunca un test de las baterías. Así que voy a proceder a ejecutar uno.

Hay dos tipos de test que se pueden ejecutar. Uno largo y uno corto.

sudo upscmd apc-900g test.battery.start.quick

Para ver el resultado del test podemos ejecutar el comando

sudo upsc apc-900g |grep ups.test.result
Revisión del resultado del test de la UPS.

Procedimiento para configurar Cliente NUT (Network UPS Tools):

Previo a la instalación debemos asegurarnos de tener el sistema actualizado, esto lo aseguramos con los siguientes comandos.

sudo apt update
sudo apt full-upgrade

La instalación del cliente nut la realizamos con la siguiente instrucción.

sudo apt install nut-client

Finalizada la descarga se debe proceder a configurar el cliente. El primer archivo a editar es el /etc/nut/nut.conf

sudo vi /etc/nut/nut.conf

E incorporamos la siguiente línea definiendo el modo en el cual va a funcionar nut en este equipo (netclient -> cliente de red).

MODE=netclient

Y en el archivo /etc/nut/upsmon.conf debemos incorporar la linea donde definimos la UPS que alimenta a este equipo, el equipo que la administra y las credenciales para establecer la conexión (línea 85 en mi versión de NUT).

sudo vi /etc/nut/upsmon.conf

Línea a incorporar:

MONITOR apc-900g@XXX.XXX.XXX.XXX 1 slave S3cr3t1t0 slave
Ejemplo de configuración del archivo upsmon.conf donde se incorporó la línea de configuración de la ups.

Para que el sistema tome los cambios debemos reiniciar el servicio nut-client

sudo systemctl start nut-client

Y verificamos que nada explote pidiendo el estado del servicio

sudo systemctl status nut-client
Revisión del cliente NUT funcionando correctamente.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.