Esta receta explica cómo instalar y configurar la herramienta NUT para aprovechar al máximo las posibilidades de un SAI en un sistema Debian GNU/Linux. Concretamente, los pasos son para un MGE Pulsar Extreme 1500C
Instalar un software de control para un SAI sólo tiene sentido si podemos hablar con él para obtener datos de su estado y funcionamiento. Si el SAI no tiene ningún tipo de conexión de datos (tal como serie o USB) esta receta no te sirve. En cualquier caso, un SAI que no dice nada sobre su estado es de muy poca utilidad. Si estás pensado en comprar un SAI, elige uno con el que puedas hablar. En la página de nut hay una lista de las marcas y modelos compatibles.
Si tienes una distro compatible Debian, instalar el paquete nut es así de fácil:
# apt-get install nut
Por este motivo, aunque el SAI dé servicio a una sola máquina, será necesario instalar un servidor y un cliente.
Con esa configuración, ante un corte de luz, ocurre lo siguiente:
Al volver la corriente:
No todos los SAIs pueden hacer todo lo que se índica. Tendrás más o menos posibilidades dependiendo de la gama y precio del SAI.
Lo primero, y antes de que se nos olvide, será cambiar los permisos del puerto serie (/dev/ttyS0 o /dev/ttyS1), pues nos debe dejar leer y escribir en él como root. En Debian, los puertos serie suelen pertenecer al grupo dialout, así que la manera más fácil de conseguir permiso es:
# addgrp nut dialout
En /etc/nut/ups.conf habrá que realizar algunos cambios (tanto en cliente como en servidor). Aquí es donde se añade el driver (cada familia de SAIs tiene su propio driver):
[id] driver = (driver) port = (port) (options)
Por ejemplo, para un SAI “MGE Pulsar Extreme” será:
[mge] driver = mge-utalk port = /dev/ttyS0 LowBatt = 90
Edita el fichero /etc/default/nut modificando la línea “START_UPSD=no” por “START_UPSD=yes”
En el fichero /etc/nut/upsd.conf tienes que crear la lista de control de acceso (ACL). Para ello incluye (si no existe ya):
ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 # host actual ACL [NombreMáquina] 192.168.0.0/24 # toda la red ACCESS grant login localhost [password] ACCESS grant monitor localhost [password] ACCESS grant login [NombreMaquina] [password] ACCESS grant monitor [NombreMáquina] [password] ACCESS deny all all
Por último, edita el fichero /etc/nut/upsd.users para dar acceso a los usuarios. Para ello, añade las líneas:
[monuser]
password = [password]
allowfrom = localhost 192.168.0.0/24 # tu redEdita el fichero /etc/default/nut modificando la línea “START_UPSMON=no” por “START_UPSMON=yes”
Lo siguiente será /etc/nut/upsmon.conf. Éste es el fichero de configuración del cliente. La línea obligatoria a añadir es la del monitor:
MONITOR [id]@[ip] 1 [password] slave|master
Lo normal para el equipo que tiene la conexión de datos al SAI es que funcione en modo “master”. Eso significa que debe esperar a que los “slaves” apaguen antes de hacerlo él. Así que quedará algo como esto:
MONITOR mge@192.168.0.1 1 [password] master
Ahora debes reniciar el servicio de la forma habitual:
# /etc/init.d/nut restart
Lo mejor es que la primera vez se arranque todo a mano, pues el script descrito en la sección anterior redirige todos los errores a /dev/null. Para ello se hará:
# upsdrvctl start Network UPS Tools – UPS driver controller 1.2.1 Network UPS Tools – MGE UPS SYSTEMS/U-Talk driver 0.51.0 (1.2.1) # # upsd Network UPS Tools upsd 1.2.1 # # upsmon UPS: mge@192.168.0.1 (slave) (power value 1) Using power down flag file /etc/killpower #
Puedes ver que la monitorización funciona adecuadamente con el comando upsc:
# upsc mge UPS: localhost MFR: MGE UPS SYSTEMS STATUS: OL CHRG UPSIDENT: EXtreme 1500C 15 MODEL: EXtreme 1500C FIRMREV: 15 UTILITY: 230.0 BATTPCT: 100.0 BATT_RUNTIME: 01890 ACFREQ: 50.00 LOADPCT: 026.0 WAKEDELAY: 001 GRACEDELAY: 120 SLFTSTINT: 10080 OUTVOLT: 230.5 BATTVOLT: 054.6 LOBATTPCT: 90 NOMBATVLT: 048.0 CURRENT: 001.2
Y eso es todo.
Comments
Pequeño ajuste...
Hola qué tal, bastante bueno tu minitutorial, sólo escribo para comentar que te equivocas en la configuración del cliente (/etc/nut/upsmon.conf), lo común no es que sea SLAVE, pues el equipo esclavo es aquel que NO tiene el cable de conexión directa al SAI (USB o serie normal). Lo común es MASTER, que es el equipo que está conectado al SAI tanto para energía eléctrica como para monitorización (siendo quisquillosos, los equipos slave también pueden monitorear, pero bueno, eso es otra cuestión). Saludos.
Tienes toda la razón
arreglado.
No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.