Utilizzare un UPS APC con Debian

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

Debian 7 "wheezy"
Debian 8 "jessie"
Debian 10 "buster"

Utilizzare un UPS APC con Debian

I gruppi di continuità APC funzionano egregiamente con Debian.

Questa guida è stata testata su Debian Etch con un UPS APC1000 ad interfaccia seriale, e Debian Buster con un UPS XS700U con interfaccia USB, ma non vi è motivo per cui non funzioni con release più nuove di Debian e con modelli diversi di UPS.

Installazione del demone

Innanzitutto si colleghi il gruppo di continuità al server. Si ricordi di farlo a server spento, se si utilizza la presa seriale, mentre può essere tranquillamente fatto a caldo se si utilizza l'interfaccia USB. Si proceda poi con l'installazione del demone per la gestione del collegamento con l'UPS:

# apt-get install apcupsd

Configurazione di apcupsd

I file di configurazione di apcupsd risiedono nella directory /etc/apcupsd/. Procediamo con la configurazione

Per UPS con interfaccia USB

Aprire con il proprio editor preferito il file /etc/apcupsd/apcupsd.conf

Si cerchino le voci e si modifichino con i seguenti parametri:

UPSNAME nome_ups

UPSCABLE usb

UPSTYPE usb

#DEVICE /dev/TTySx

Dove:

  • UPSNAME = non è obbligatorio, ma aiuta nel caso si gestiscano più UPS o si voglia amministrare l'UPS da una macchina della LAN. Metteteci un nome che descriva l'UPS in questione, si ricordi di non superare gli 8 caratteri.
  • UPSCABLE = indica il tipo di cavo con cui l'UPS è collegato al server. Nel caso di cavo usb si indichi usb.
  • UPSTYPE = come la voce precedente, indica se l'UPS è USB o seriale, nel caso USB si indichi usb.
  • DEVICE /dev/TTyS0 = è la porta del server a cui il cavo è collegato. Nel caso USB, è buona norma utilizzare l'auto-detect. Per utilizzare l'auto rilevazione si può tranquillamente commentare la riga, oppure cancellare /dev/TTyS0 in modo da lasciare uno spazio bianco dopo la variabile di configurazione.
  • Le altre voci possono essere lasciate così come sono, a meno che non vogliate giocare con il tempo di delay prima dello spegnimento del server o se abbiate necessità di indicare al demone di preservare lo stato della batteria spegnendo subito il PC (o viceversa di mantenere il PC acceso il più possibile)


Per UPS con interfaccia seriale

Aprire con il proprio editor preferito il file /etc/apcupsd/apcupsd.conf

Si cerchino le voci:

UPSNAME nome_ups

UPSCABLE usb/smart

UPSTYPE usb/apcsmart

DEVICE /dev/TTySx

Dove:

  • nome_ups = non è obbligatorio, ma aiuta nel caso si gestiscano più UPS o si voglia amministrare l'UPS da una macchina della LAN. Metteteci un nome che descriva l'UPS in questione.
  • usb/smart = indica il tipo di cavo con cui l'UPS è collegato al server. Nel caso di cavo seriale si indichi smart.
  • usb/apcsmart = come la voce precedente, indica se l'UPS è USB o seriale.
  • /dev/TTySx = è la porta del server a cui il cavo è collegato. Nel caso sia la prima porta seriale, si indichi /dev/TTyS0
  • Le altre voci possono essere lasciate così come sono, a meno che non vogliate giocare con il tempo di delay prima dello spegnimento del server o se abbiate necessità di indicare al demone di preservare lo stato della batteria spegnendo subito il PC (o viceversa di mantenere il PC acceso il più possibile)

Per sistemi con systemd

Se il vostro sistema (come è probabile) ha systemd avete finito. Riavviate il demone per rendere effettive le modifiche con

# systemctl restart apcupsd

e potete controllare lo stato di funzionamento con

# systemctl status apcupsd

Per sistemi senza systemd

Aprire con il proprio editor preferito il file /etc/default/apcupsd

Si cerchi la voce

ISCONFIGURED

e si ponga il valore a yes.

Fatto ciò, si può riavviare il demone:

# /etc/init.d/acpupsd restart

Monitorare l'UPS via web

È possibile monitorare lo stato dell'UPS anche tramite un'interfaccia web.
Come prerequisito è necessario avere un server web installato sullo stesso server da monitorare.
In questa guida facciamo riferimento ad Apache, quindi è sufficiente installare due pacchetti:

# apt-get install apache2 apcupsd-cgi

aprire un browser e recarsi all'indirizzo:

http://ip_address_server/cgi-bin/apcupsd/multimon.cgi

In Debian 8 (Jessie) l'esecuzione degli script cgi da parte di Apache non è abilitata di default.
Per abilitarla:

# a2enmod cgi
# a2enconf serve-cgi-bin.conf
# service apache2 restart

Nota: nel caso Apache vi servisse anche per altri scopi, potete consultare questa guida: Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5.

Configurare le notifiche via email

È possibile anche impostare il destinatario delle notifiche via email. Di default tutte le notifiche vengono inviate all'utente locale root; per cambiare questa impostazione abbiamo due strade:

  • andare nella cartella /etc/apcupsd e modificare la variabile SYSADMIN in tutti gli script dei vari eventi, ad esempio:
SYSADMIN=postmaster@azienda.com
  • modificare il file /etc/aliases aggiungendo, se non esiste già, un alias per smistare la posta destinata all'utente root. Si noti che questo metodo avrà effetto per tutte le email inviate all'utente root e non solo per il pacchetto apcupsd.


Bulb.png Suggerimento
Ovviamente per inviare l'email a un utente esterno bisogna aver preventivamente configurato la macchina a inviare esternamente le email.


Controllo di un UPS via rete

Nel caso in cui si desideri che l'UPS avente cavo di monitoraggio fisicamente collegato alla macchina A possa servire e spegnere anche la macchina B (ad esempio perché entrambe le macchine sono alimentate dallo stesso UPS, ma solo una ha il cavo di monitoraggio collegato) si operi come segue:

Macchina A (Server)
Si configuri il server come nel caso di una macchina standalone visto prima, avendo l'avvertenza di specificare anche le seguenti voci nel file di configurazione:

NETSERVER on

NISIP 0.0.0.0
# (Indica su quale indirizzo IP il server deve mettersi in ascolto:
# tipicamente è l'IP di una delle eth del server.
# Mettendo 0.0.0.0 si indica al server di mettersi in ascolto
# su tutte le interfacce disponibili)

NISPORT 3551

Macchina B (Client) Si configuri il client come nel caso di una macchina standalone visto prima, avendo però l'avvertenza di utilizzare questi parametri nel file di configurazione:

UPSCABLE ether
UPSTYPE net
DEVICE indirizzo.ip.del.server:3551
UPSCLASS standalone
UPSMODE disable
NETTIME 10




Guida scritta da: Ferdybassi Swirl-auth20.png Debianized 20%
Estesa da:
Sirio81
marcomg
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized