L'exemple qui vous est donné ici est le suivant : une baie de 6 serveurs de calcul doit être monitorée, et ce en économisant un 7ème serveur qui pourrait, bien évidemment, faire une bonne partie du travail. Les serveurs travaillent en cluster et sont lourdement sollicités, le plantage de l'un d'entre-eux n'est donc pas un problème en soi, la charge étant reportée sur les 5 autres serveurs, voire sur d'autres baies, mais il faut tout de même veiller à redémarrer le serveur planté de manière assez rapide et la plus autonome qui soit.
Et c'est là que l'IPX800V3 fait son entrée : avec un budget inférieur à 250€ capteur inclus, et son encombrement réduit, la carte trouve tout son intérêt en remplacement d'un 7ème serveur de monitoring, plus volumineux. En effet, grâce à la fonction "ping watchdog" implémentée récemment dans le firmware de GCE Electronics, l'IPX800 se chargera elle-même d'aller interroger les serveurs pour détecter un éventuel plantage. Un capteur SHT-X3 relié à l'IPX800 par ses entrées analogiques assurera quant à lui le reporting de la température générale de la baie et le taux d'humidité. Nous ne sommes pas non plus dans un datacenter où la régulation de l'air ambiant est elle-même redondée et monitorée, ici une panne du système de climatisation entraînerait immédiatement une élévation de la température (donc surchauffe des baies et serveurs) et de l'humidité (phénomènes de condensation possibles). Petit détail, le capteur de luminosité du SHT-X3 sert à surveiller les entrées-sorties du local technique qui est dépourvu de fenêtres, et donc habituellement dans le noir complet : le simple allumage de l'éclairage de la salle fait passer le capteur de 0 à 4%, ça suffit. ;-)
Mais revenons à nos moutons et voyons maintenant le montage et la programmation de tout ça, avec l'aide du schéma ci-dessous. L'IPX800 est donc fixée sur un rail DIN, lui-même "racké" dans la baie 19". La baie contient le matériel informatique habituel (switchs, onduleur, etc.) et les 6 serveurs de calcul. Elle est également équipée de 7 voyants de contrôle industriel : 6 rouges pour le défaut d'un serveur, 1 vert quand tout va bien.
Sur l'IPX800 il y a :
- le capteur SHT-X3 (3 entrées analogiques),
- 6 interrupteurs en entrée numérique pour coupure manuelle de chacun des 6 serveurs
- un contact sec en entrée numérique provenant de l'onduleur pour transmettre l'info "défaut secteur-passage sur batterie" à l'IPX800
- un bouton-poussoir "test voyants" en entrée numérique
- l'alimentation des serveurs en contact NF sur 6 sorties
- l'alimentation des voyants de défaut serveur (coupure pour redémarrage) en contact NO des 6 mêmes sorties
- un voyant de bon fonctionnement de la baie en contact NF d'une 7ème sortie
La programmation est la suivante :
- en cas de dépassement de seuil de température ou d'humidité, les 6 serveurs sont arrêtés et un push+email partent sur le téléphone de l'admin d'astreinte,
- en cas d'allumage de l'éclairage de la salle, un push+email part sur le téléphone de l'admin d'astreinte,
- en cas de plantage d'un serveur, le ping watchdog coupe son alimentation pendant 3 minutes, le voyant rouge associé s'allume, puis l'IPX réalimente le serveur qui redémarre de manière autonome (fichier batch), un simple email est envoyé à l'admin,
- en cas de panne d'alimentation, l'onduleur prend le relais et en avertit l'IPX, qui éteint le voyant vert et envoie alors un push+email à l'admin d'astreinte, les serveurs continuent de fonctionner normalement.
Mais comment fait l'IPX800 pour détecter le plantage d'un des 6 serveurs alors qu'une seule adresse IP peut être renseignée ? C'est tout simple, la crontab d'un autre serveur du réseau est programmée pour reconfigurer l'IPX800 à chaque minute. Ce serveur dialogue avec l'IPX par commande http, l'IPX ayant l'adresse 10.43.207.221 :
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.10&pingtime=10&pingretry=2&prelay=0 puis une minute après
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.11&pingtime=10&pingretry=2&prelay=1 puis une minute après
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.12&pingtime=10&pingretry=2&prelay=2 puis une minute après
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.13&pingtime=10&pingretry=2&prelay=3 puis une minute après
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.14&pingtime=10&pingretry=2&prelay=4 puis une minute après
http://10.43.207.221/protect/settings/ping.htm?pingip=10.43.207.15&pingtime=10&pingretry=2&prelay=5 puis une minute après on repart sur le premier serveur, et ainsi de suite.

Conclusion : en 6 minutes l'IPX800 s'est assurée qu'aucun des 6 serveurs n'était planté et répondait au ping. Si l'un ne répond pas, il est coupé pendant 3 minutes puis automatiquement réalimenté pour redémarrage, sans intervention humaine.
baie1.png