La supervision
La supervision
Définition
La supervision est un terme utilisé en informatique pour désigner la surveillance de l'état d'un système.
Dans ce secteur d'activité où de nombreuses entreprises fournissent des services, ces dernières se doivent d'assurer le bon fonctionnement de tout leur système.
Afin d'y remédier, des outils de supervision sont apparus sur le marché. Ces outils permettent de récupérer des informations sur un système qu'elles soient de nature matérielle (alimentation, ventilateur, disque dur, ...), logicielle (services) ou bien réseau (état des interfaces, traffic, ...), et ceci en temps-réel !
La supervision répond à des besoins...
En récupérant de ces données, un utilisateur peut connaître à tout instant l'état de tout son système informatique.
Les avantages
La mise en place d'une solution de supervision permet d'avoir une vue d'ensemble des équipements supervisés, et ceci en temps-réel. Elle permet de visualiser à tout moment l'état des différents équipements configurés.
La supervision s'étend à un large panel d'équipements que l'on peut surveiller. Cela va d'un simple ordinateur de bureau, à des équipements réseaux comme les switchs ou les routeurs en passant par les serveurs.
Le type de données que l'on peut récupérer sur ces machines sont :
- Matériel : l'espace libre sur un disque dur, un ventilateur en panne, une problème d'alimentation, la saturation de la mémoire, ...
- Applicatif : l'arrêt d'un service, la surveillance d'un logiciel, ...
- Réseau : le status d'une interface, l'état du traffic, les pertes de paquets, ...
En configurant la solution de supervision, un utilisateur peut être informé à n'importe quel moment des problèmes qui peuvent survenir sur les équipements. On appelle ce type d'évènement une alarme. Il s'agit d'un évènement potentiellement problématique pouvant entraîner le mauvais fonctionnement du système. Par exemple, lorsq'un disque dur atteint une occupation du disque de plus de 90%, une alarme est générée afin de nous prévenir qu'il faut y remédier. L'alarme est alors visible sur l'interface de la solution de supervision mais surtout elle peut être transmise via un e-mail ou un sms à un ou plusieurs destinataires afin de les tenir informé immédiatemment.
De plus, toutes les données sont généralement stockées en base, ce qui permet de générer des rapports à un instant donnée mais également de générer des graphes montrant l'évolution des différents états sur une période de temps.
Grâce à l'ensemble des avantages que peut procurer une solution de supervision, la notion de pro-activité se fait valoir. Dès la détection d'un problème, l'utilisateur est immédiatement averti, ce qui lui permet d'agir en conséquence. L'utilisateur résoud les problèmes, évitant qu'ils ne deviennent par la suite un source de problèmes critiques.
La plupart des avantages cités ci-dessus sont natifs aux solutions de supervision du marché actuel mais certaines solutions nécessitent encore l'utilisation d'applications tierces.
Le principe de fonctionnement
La grande majorité des solutions de supervision de base sur l'utilisation du protocole SNMP pour fonctionner. Il existe également d'autre manière de procéder comme l'analyse des fichiers de logs mais celle-ci ne sera pas détailler.
Le protocole SNMP (Simple Network Management Protocol) est un protocole de gestion et d'administration des équipements du réseau. Il se base sur des fichiers de MIB (Management Information Base) qui sont des fichiers dans lesquels se trouvent un ensemble d'informations génériques et/ou spécifiques à un équipement. Les informations doivent respecter une syntaxe précise.
ifDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "A textual string containing information about the interface. This string should include the name of the manufacturer, the product name and the version of the hardware interface." ::= { ifEntry 2 }
Par ailleurs, chaque information possède un identifiant appelé OID (Object Identifier). L'OID est unique et universel. Il est représenté sous forme d'une énumération de nombres séparés par des ".". Les nombres sont placés de manière hiérarchique selon une norme établie par des RFC.
En reprenant l'exemple précédent, l'OID correspondant à l'information ifDescr est 1.3.6.1.2.1.2.2.1.2
Pour récupérer la valeur associée à chaque OID, il faut utiliser une commande SNMP :
snmpget -v 2c -c mynetwork 1.3.6.1.2.1.2.2.1.2
Voici un exemple d'une architecture mettant en place une solution de supervision :
Dans le schéma, j'ai volontaire séparé la solution de supervision des équipements à surveiller afin de faciliter la lacture et la compréhension.
Un agent SNMP est installé sur la machine à surveiller. C'est cet agent qui, selon sa configuration, va aller chercher les informations à récupérer. Pour cela, on lui précise à travers les OID quelles sont les informations qu'il doit chercher. Pour chaque OID, il va aller consulter les différents fichiers de MIB afin de déterminer le nom et le type de l'information. Ensuite avec une commande SNMP, il peut récupérer la valeur associé à l'OID. Il retourne alors toutes les données à la solution de supervision qui va se charger de les traiter.
Les solutions existantes
Il existe de nombreuses solutions existantes sur le marché. Il existe des versions éditeurs :
pour ne citer que les plus connus et bien entendu des version open source :
Il est assez difficile de comparer les différentes solutions entre elles. L'utilisateur devra choisir en fonction de ses besoins et des possibilités qu'offrent les solutions. En tant qu'entreprise, le choix se portera surtout sur les solutions éditeurs pour leur support tandis qu'un particulier se tournera vers une solution open source donc gratuite.
Attention ! Gratuit ne veut pas dire de moins efficace que les solutions payantes. Les solutions gratuites peuvent être tout aussi efficace en fonctions des besoins.