Xymon
Xymon (anciennement Hobbit – voir paragraphe Divers) est un logiciel qui permet de superviser en temps réel l'ensemble des éléments en réseau du système d'information (serveurs, routeurs, commutateurs réseau, baies de disques, imprimantes réseau...).
Cette supervision s'effectue à partir d'une interface web simple et conviviale, incluant des repères sous forme d’icônes et de codes couleurs. Ces icônes permettent de visualiser immédiatement l'état d'un système, d'une application ou d'un service sur deux critères : son niveau d'alerte (OK, Warning, Critical, No data, No report et Disabled) et la durée de cet état (inférieur ou supérieur à 24 heures).
A partir de cette interface, on peut aussi suivre l'historique des évènements d'un système à l'aide de tableaux ou de graphiques.
Il est également possible de configurer des alertes par mail dans le cas d'évènements critiques (système qui ne répond plus, partition disque supérieure à 90%, montages NFS non présents,...).
Au niveau architecture, Xymon est composé de deux services : un service serveur qui tourne sous apache et un service client à installer sur chaque système à monitorer (excepté sur le matériel purement réseau où seule la disponibilité de l'équipement est surveillée).
Outre la commande ping classique, les tests réseaux effectués nativement par Xymon concernent les fonctionnalités des protocoles : ftp, ssh, smtp, pop, imap(s), nntp(s), ldap(s) query, http(s), ssl, ajp13, vnc, clamd, spamd, cupsd, rsync, oracle tns listener.
Il est possible d'écrire la définition de ses propres tests (par exemple pour surveiller d’autres services réseaux, le RAID logiciel sur les serveurs ou ses propres systèmes de sauvegardes).
Il existe également de nombreux plug-ins disponibles ici (souvent sous formes de script shell à rajouter sur le client).
- L'interface web présente des graphes permettant de suivre l'évolution des données surveillées.
- Configuration sur la base de l'édition de quelques fichiers textes très simples.
- Il est possible de définir des relations de dépendances entre les tests. Par exemple, si l'hôte ne répond pas au ping, il y a de fortes chances que les autres tests relatifs à cet hôte soient infructueux. Dans ce cas, au lieu de lancer de multiples alertes pour chaque tests, seule l'information que l'hôte ne répond plus est envoyé.
- Si on surveille un grand nombre de serveurs et de services, il est possible de spécifier des "services critiques", avec plusieurs niveaux de priorité, qui seront regroupés sur une page spécifique.
- Il est possible d'acquitter une alerte pour indiquer que le problème va être pris en charge.
- Il est possible de désactiver un test temporairement pour éviter les alertes pendant une maintenance programmée.
A l'Institut d'Astrophysique Spatiale, nous utilisons Xymon pour superviser l'ensemble de nos serveurs et équipements réseaux. La page d'accueil de l'interface a été séparée par catégories de services (Serveurs réseau, Serveurs de calcul, Projets, Centre de données IDOC, Équipements réseau, Imprimantes et Extérieur) pour un total de 130 systèmes surveillés.
Sur le serveur, les systèmes à surveiller sont rajoutés à la main dans un fichier de configuration. Aussi, lorsque le système est remplacé ou n'existe plus, il faut penser à le supprimer du fichier de configuration pour ne pas se retrouver avec de fausses alertes.
Le support de snmp n'est pas pris en charge nativement. Pour pouvoir monitorer l'état des équipements réseaux (imprimantes, switchs,...), il est possible par exemple d'utiliser le programme devmon et d'y associer des scripts pour Xymon.