Page 1 of 1

[RESOLU] UPS sans port usb ou série

Posted: 09 Jan 2015 16:28
by dedbue
Bonjour,

Je viens de récupérer un UPS eaton ellipse 375 et je compte l'utiliser pour protéger ma machine NAS4Free, malheureusement, cet onduleur ne possède pas de moyen de controle via usb ou série. Du coup ma machine s'eteind brutalement après une coupure de courant de 15 mn...

Est-ce que mon problème à déja été étudié par le passé ?

Je pensais éventuellement à un petit script maison sur ma machine NAS4free qui ferait un ping vers mon routeur toutes les 5mn et qui, en l'absence de réponse, éteindrai le serveur pour le protéger...

Est-ce que ça vous parait farfelu ?

Re: UPS sans port usb ou série

Posted: 09 Jan 2015 23:32
by ernie
Au contraire logique. En tout cas il ne faut pas que ton routeur soit branché sur l onduleur :)

Re: UPS sans port usb ou série

Posted: 10 Jan 2015 06:46
by dedbue
oui, cet onduleur propose 3 prises alimentées et antifoudre ainsi qu'une prise juste antifoudre. je brancherai mon routeur sur celle ci...
J'ai cherché un peu et j'ai vu que quelq'un avait travaillé sur le domaine, il s'agit de Fritz qui propose pas mal de scripts très interessants :
viewtopic.php?t=2197

le script qui m'interesse est manageAcpi.sh, je vais essayer de mettre ça en place !

Re: UPS sans port usb ou série

Posted: 10 Jan 2015 09:08
by ernie
Oui c'est une bonne base mais attention : les scripts de Fritz sont pour du ZFS il me semble.
Donc tu auras à adapter à ton Raid5 certaines lignes.

Re: UPS sans port usb ou série

Posted: 10 Jan 2015 21:28
by dedbue
je viens de penser à un truc, est-ce que l'extinction brutale de mon NAS après avoir vidé la batterie de l'onduleur est dommageable ?
normalement, le système est monté en ram, après une coupure electrique, mon nas se trouve seul sur le réseau, donc il n'a plus aucune entrée ou sortie et une coupure brutale ne devrais pas abimer mes données, mon nas est composé d'un JBOD en UFS de 7 To et une fois tous les 15 jours une sauvegarde automatique locale rsync est effectuée sur des disques externes usb...

en cas de coupure pendant la sauvegarde (vraiment pas de bol, mais ça peut arriver), seule cette sauvegarde serait abimée, et elle serait automatiquement corrigée 15 jours plus tard...

c'est clair que c'est beaucoup moins élégant, mais est-ce risqué ?

sinon, j'ai vu que les scripts de fritz étaient pour du zfs, mais j'imaginais que cela ne concernais que les scripts de snapshots ou backup, comme je compte me servir uniquement du script manageAcpi.sh, je supposais que ça passerais sans modifications...

Re: UPS sans port usb ou série

Posted: 10 Jan 2015 21:35
by ernie
Suite à mes lecture, seul zfs est robuste au coupure de courant.

Ensuite ton matériel en prendra un coup a chaque fois.

Mieux vaut mettre ton script en place ou passer a zfs

Re: UPS sans port usb ou série

Posted: 10 Jan 2015 22:28
by velivole18
Bonsoir,

En général, le serveur Nas4Free est sur le réseau, avec un box quelconque (Free, Orange, SFR, Bouygues, Darty, ...).
Et vous programmez dans la config du serveur une adresse DNS (pour moi 192.168.0.254).
Normalement, cette adresse DNS est toujours dispo.
Si vous avez une panne de courant, alors les éléments informatiques de votre domicile s'arrêtent, sauf Nas4Free qui est sur onduleur.
Une idée comme cela qui me passe par la tête.

Lorsque je fais ceci :

Code: Select all

$ ping -c 3 192.168.0.254
PING 192.168.0.254 (192.168.0.254) 56(84) bytes of data.
64 bytes from 192.168.0.254: icmp_seq=1 ttl=64 time=0.263 ms
64 bytes from 192.168.0.254: icmp_seq=2 ttl=64 time=0.194 ms
64 bytes from 192.168.0.254: icmp_seq=3 ttl=64 time=0.283 ms

--- 192.168.0.254 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1998ms
rtt min/avg/max/mdev = 0.265/0.280/0.297/0.018 ms
$ 
je ping bien mon adresse DNS.
Si je fais cela :

Code: Select all

$ ping -c 3 192.168.0.254 | grep "3 packets transmitted, 3 received"
3 packets transmitted, 3 received, 0% packet loss, time 1998ms
$ 
je reçois bien 1 ligne correspondant à mon modèle qui est "3 packets transmitted, 3 received"
et enfin si je compte, j'ai soit 1 si je ping mon adresse, soit 0 si je ne peux pas l'atteindre quel qu’en soit la raison :

Code: Select all

$ ping -c 3 192.168.0.254 | grep "3 packets transmitted, 3 received" | wc -l
1
ping -c 3 192.168.0.25 | grep "3 packets transmitted, 3 received" | wc -l
0
$ 
j'ai fait exprès dans le dernier essai de mettre une mauvaise adresse pour obtenir 0 en résultat, comme si mon adresse DNS n'était plus joignable.
Du coup, un petit shell du genre :

Code: Select all

if test `ping -c 3 192.168.0.254 | grep "3 packets transmitted, 3 received" | wc -l` -eq 0
   then shutdown -h now
fi
qui serait exécuté régulièrement par un cron toutes les 5 minutes par exemple (pour un UPS qui tiendrait 15 mn. par exemple, ce serait pas mal), permettrait d'arrêter proprement Nas4Free en cas de non ping de l'adresse DNS qui statistiquement peut correspondre souvent à une coupure de courant.
Bien sûr, si l'adresse DNS n'est pas accessible pour une autre raison, cela provoque aussi l'arrêt de Nas4Free. Mais cela est-il souvent et cela est-il vraiment important, puisque dans tous les cas Nas4FRee s'arrêtera proprement.
Et ce genre de script ne consomme vraiment rien en CPU et sera transparent au quotidien.

Cordialement.

Re: UPS sans port usb ou série

Posted: 11 Jan 2015 22:22
by dedbue
c'est beau, c'est propre, ça marche nickel, merci velivole18

j'ai adapté le script pour mon utilisation :

Code: Select all

#!/bin/sh

#script d'arret automatique du serveur en cas de non réponse du routeur ( ici 192.168.0.254 )

if test `ping -c 3 192.168.0.254 | grep "3 packets transmitted, 3 packets received" | wc -l` -eq 0
   then shutdown -p now
fi
j'ai mis l'execution de ce script toutes les 5 mn via cron et ç'est parfait !

Si vous avez besoin d'onduleurs, les grosses boites genre sécu, hopital, bureaux en tout genre ne s'embetent pas à changer les batteries de ces machines une fois qu'elles ne fonctionnent plus, donc pour quelques euros de batterie neuve ( ou une vielle batterie de moto trop faiblarde pour demarrer l'hiver) vous avez un onduleur fonctionnel !