Gestione di un UPS in Debian con Nut

From RVM Wiki
Jump to navigation Jump to search

Server con UPS collegato

  • Installazione software
sudo apt-get install nut
  • Configurazione tipo ups e porta
sudoedit /etc/nut/ups.conf
    • Per UPS APC USB
[USB_UPS_NAME]
    driver = usbhid-ups
    port = auto
    • Per UPS APC Seriale
[SERIAL_UPS_NAME]
    driver = apcsmart
    port = /dev/ttyS0
  • Aggiungere l'utente nut al gruppo dialout, per poter usare la seriale:
sudo gpasswd -a nut dialout
  • Avviare il demone per controllare il dialogo con l'UPS:
sudo upsdrvctl start
Network UPS Tools - UPS driver controller 2.2.2
Network UPS Tools (version 2.2.2) - APC Smart protocol driver
        Driver version 1.99.8, command table version 2.0

Detected Smart-UPS 620    [NS0018141441] on /dev/ttyS0
  • Configurare il demone:
sudoedit /etc/nut/upsd.conf
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACL client_host 192.168.6.254/32
ACCEPT localhost
ACCEPT client_host
REJECT all
  • Configurare gli utenti e le password:
sudoedit /etc/nut/upsd.users
[local_mon]
    password = PASSWORD_HERE
    allowfrom = localhost
    upsmon master
[client_mon]
    password = PASSWORD_HERE
    allowfrom = client.host.dom
    upsmon master
  • Configurare il monitor:
sudoedit /etc/nut/upsmon.conf
MONITOR apc_smartups_620@localhost 1 local_mon PASSWORD_HERE master
POWERDOWNFLAG /etc/killpower
SHUTDOWNCMD "/sbin/shutdown -h now"
  • Sistemare le permission:
sudo chown root:nut /etc/nut/*
sudo chmod 640 /etc/nut/*
  • Abilitare i demoni all'avvio:
sudoedit /etc/default/nut
...
START_UPSD=yes
...
START_UPSMON=yes
  • Riavviare il tutto:
sudo invoke-rc.d nut  restart
Restarting Network UPS Tools: upsdrvctl upsdrvctl upsd upsmon.
  • Nei log:
sudo tail -f /var/log/syslog
Apr 12 13:54:18 pubserver apcsmart[32070]: Startup successful
Apr 12 13:54:18 pubserver upsd[32071]: listening on 0.0.0.0 port 3493
Apr 12 13:54:18 pubserver upsd[32071]: Connected to UPS [apc_smartups_620]: apcsmart-apc_smartups_620
Apr 12 13:54:18 pubserver upsd[32073]: Startup successful
Apr 12 13:54:18 pubserver upsmon[32075]: Startup successful
Apr 12 13:54:18 pubserver upsd[32073]: Connection from 127.0.0.1
Apr 12 13:54:18 pubserver upsd[32073]: Client local_mon@127.0.0.1 logged into UPS [apc_smartups_620]
  • Per leggere i dati dall'ups:
upsc apc_smartups_620
battery.alarm.threshold: L
battery.charge: 100.0
battery.charge.restart: 00
battery.date: 02/05/02
battery.runtime: 1920
battery.runtime.low: 120
battery.voltage: 13.85
battery.voltage.nominal: 012
driver.name: apcsmart
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ttyS0
driver.version: 2.2.2
driver.version.internal: 1.99.8
input.frequency: 50.00
input.quality: FF
input.sensitivity: H
input.transfer.high: 253
input.transfer.low: 208
input.transfer.reason: T
input.voltage: 227.5
input.voltage.maximum: 227.5
input.voltage.minimum: 224.6
output.voltage: 227.5
output.voltage.nominal: 230
ups.delay.shutdown: 180
ups.delay.start: 000
ups.firmware: 22.5.I
ups.id: UPS_IDEN
ups.load: 031.8
ups.mfr: APC
ups.mfr.date: 04/25/00
ups.model: Smart-UPS 620   
ups.serial: NS0018141441
ups.status: OL
ups.test.interval: 1209600
ups.test.result: NO

Client Linux collegato via rete

  • Installare
sudo apt-get install nut
  • Configurare SOLO il monitor
sudoedit /etc/nut/upsmon.conf
MONITOR apc_smartups_620@server.host.dom 1 client_mon PASSWORD_HERE slave
POWERDOWNFLAG /etc/killpower
SHUTDOWNCMD "/sbin/shutdown -h now"
  • Impostare l'autostart per il monitor:
sudo perl -pi -e 's{^START_UPSMON=no$}{START_UPSMON=yes}' /etc/default/nut && \
echo "702612de8e9e1a34c35cd7d4b05baf30  /etc/default/nut" | md5sum --check

O a mano:

sudoedit /etc/default/nut
...
START_UPSMON=yes
...


  • Vedere se fa login:
upsc -l server.host.dom
  • Vedere se legge i dati:
upsc  apc_smartups_620@server.host.dom
  • Riavviare
sudo invoke-rc.d nut restart

Client Windows collegato in rete

  • Lanciare il TOOL
  • Installare come servizio
  • Editare la configurazione, aggiungendo la sola riga:
 MONITOR apc_smartups_620@server.host.dom 1 client_win PASSWORD_HERE slave

Riferimenti