Il est vivement recommandé de mettre ses serveurs sur onduleur. Mais encore faut il pouvoir contrôler l’état de l’onduleur. Que se passe t’il si la coupure dure plus longtemps que les batteries ? Les serveurs vont ils s’éteindre proprement ? Et d’ailleurs, s’il est facile de connecter un onduleur à un serveur par un cable série ou USB, comment le reste des serveurs peut connaître l’état des batteries de l’onduleur ? C’est là que le démon apcupsd (APC UPS power control daemon) intervient. Ce logiciel permet de surveiller en temps réel un onduleur connecté à un ordinateur. C’est aussi une application client-serveur qui partage par le réseau les informations de l’onduleur à tous les clients connectés.

  • Installation de apcupsd

Télécharger le RPM : apcupsd.rpm (DAG wieers)

rpm -Uvh apcupsd-xxx.rpm
  • Configuration

Editer le fichier : /etc/apcupsd/apcupsd.conf.
Il faut distinguer 2 cas :

- Mode serveur : l’onduleur est directement connecté

Mon fichier de configuration : apcupsd.conf (à modifier)

Explication des valeurs clefs de la config :

# connexion par cable USB
UPSCABLE usb
UPSTYPE usb
# 'halt' quand la batterie atteint 5% ou 1 minute
BATTERYLEVEL 5
MINUTES 1
# etat de l'onduleur par le reseau, port 3551
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Consulter la documentation officielle pour de plus amples informations : Apcupsd User’s Guide

 

- Mode client : informations de l’onduleur transmises par le réseau

Mon fichier de configuration : apcupsd.conf (à modifier)

Explication des valeurs clefs de la config :

# connexion par ethernet
# serveur 10.1.1.15 port 3551
UPSCABLE ether
UPSTYPE net
DEVICE 10.1.1.15:3551
# 'halt' quand la batterie atteint 75% ou 15 minute
BATTERYLEVEL 75
MINUTES 15
  • Tests

La commande apcaccess doit fonctionner sur le client et le serveur.
Exemple :

apcaccess
...
CABLE    : USB Cable
MODEL    : Smart-UPS 3000 RM
STATUS   : ONLINE 
LINEV    : 224.6 Volts
LOADPCT  :  28.6 Percent Load Capacity
BCHARGE  : 100.0 Percent
...
  • Service

Si tout est en ordre, il suffit de lancer le service sur chacun des serveurs.

service apcupsd start
chkconfig apcupsd on

Il est maintenant temps de simuler un coupure de courant, débrancher le câble. Tous les serveurs devraient s’éteindre proprement. Dernière remarque, apcups est assez bavard, il envoie un mail à chaque changement d’état (sur batterie, sur secteur) ou lorsque les batteries sont bientôt vides (selon les critères du fichier apcups.conf) et que le serveur va être éteint.