Vous voilà désormais convaincu de la nécessité de mettre en place une solution de supervision. Votre projet peut démarrer et se pose alors la question de l'outil. Parmi les éditeurs du marché, quelle solution choisir ? Dans ce chapitre, je vais vous présenter les solutions leaders du marché, celles que j'ai moi-même rencontrées le plus souvent en entreprise.
Elles proposent toutes des fonctionnalités communes mais possèdent aussi des particularités (au niveau de l'interface, des types de sondes possibles, de l'architecture même de la solution, etc.). Votre choix va finalement surtout dépendre de votre besoin, des contraintes habituelles des projets informatiques telles que le budget, les compétences internes pour l'installation/l'exploitation/la maintenance, les priorités fonctionnelles (réseau, système, application ou les trois ?), les ressources externes disponibles, etc.
Découvrez les leaders de la supervision
Nagios
En tout bien tout honneur, je vais commencer par le leader du marché, et celui que nous allons utiliser dans ce cours : Nagios.
Nagios est un logiciel permettant de superviser le système et le réseau, qui s'appuie sur 3 composants principaux :
l'ordonnanceur, qui est le cœur de l'application et va se charger d'exécuter les sondes de supervision à destination des éléments du SI ;
l'interface Web, écrite en CGI et PHP, qui sert à visualiser les informations concernant les éléments supervisés ;
les plugins, aussi appelées « sondes », qui ne sont finalement que de simples programmes lancés par l'ordonnanceur. Ces programmes fonctionnent de manière autonome et fournissent simplement le résultat de la sonde à l'ordonnanceur.
Je vous reparlerai plus en détail de la genèse, des avantages et inconvénients de cette solution dans le chapitre suivant. Cependant, il est indispensable de signaler ici qu'il existe deux versions différentes de Nagios :
Nagios Core, la solution historique, diffusée librement sous licence GPL ;
Nagios XI, diffusée sous licence commerciale à partir de 2009, qui apporte notamment une nette amélioration du composant interface Web.
Pour plus d'information, rendez-vous sur le site de Nagios.
Zabbix
Le principal concurrent : Zabbix.
Zabbix propose une solution de supervision technique et applicative, décomposée également en 3 composants :
un serveur reposant sur un moteur de base de données tel que MySQL, PostgreSQL ou Oracle ;
une interface d'administration écrite en PHP permettant la visualisation des informations stockées en base, mais également la configuration des objets de supervision ;
un serveur de traitement, mettant à disposition plusieurs méthodes de supervision : simples (comme celle d'un serveur Web par exemple), ou plus complexes (comme la charge du processus ou l'espace disque. Le serveur requiert notamment l'installation d'un agent sur la cible à superviser.
Cette solution se démarque en particulier par son interface. Zabbix est une solution de supervision dite « full click » et s’adresse ainsi à un plus large public.
Zabbix est diffusé sous licence GPL v2.
Pour plus d'information, rendez-vous sur le site de Zabbix.
Centreon
Un acteur français : Centreon.
Centreon a été créée à Toulouse par une entreprise nommée Merethis (renommée depuis « Centreon », tout simplement). Leur constat initial était clair : il est possible de faire mieux que l'interface de Nagios !
Ainsi, les premières versions de Centreon s'appuient sur les concepts de Nagios et proposent une interface d'administration grâce à laquelle il est possible, entre autres,de configurer les objets. Cette solution de supervision a les caractéristiques suivantes :
son architecture repose sur des technologies comme Apache et MySQL ;
son architecture modulaire (Centreon Web, Centreon Broker, Centreon Engine) lui permet de fonctionner sur des infrastructures réparties.
Centreon propose son moteur librement au téléchargement et des produits complémentaires (plugins, cartographie, etc.) sous licence commerciale.
Pour plus d'information, rendez-vous sur le site de Centreon.
Découvrez quelques solutions alternatives
En dehors des grands acteurs du marché, d'autres solutions de supervision se sont développées pour différentes raisons, mais souvent en rapport avec un manque constaté chez les solutions leaders.
Le ninja de la supervision : Shinken
Shinken est une solution de supervision créée en 2009 et conçue en Python. Il s’agissait au départ d’un simple prototype d'évolution pour Nagios, qui souhaitait répondre notamment à des problématiques de supervision distribuées et à des problématiques de haute disponibilité.
Les principaux arguments sont la facilité d'installation et d'utilisation, la compatibilité complète avec Nagios pour des migrations facilitées, la disponibilité sur des plateformes hétérogènes (grâce à Python) et une architecture de développement très flexible (aspect très précieux aux yeux de l'équipe technique).
La solution est indépendante et peut être utilisée avec des services tiers, comme les bases de données, les modules de cartographie ou de génération de graphes. Elle a la capacité de superviser un nombre conséquent de matériels et de services.
Shinken est proposé sous licence GNU AGPL.
Le cactus de la supervision : Cacti
Cacti n'est pas directement une solution de supervision, car elle ne possède pas de système de gestion d'alertes basé sur des seuils, à la manière des plugins. En revanche, elle permet de stocker des informations diverses et variées dans une base de données de type RRDTool (Round Robin Database), ce qui rend possible des sauvegardes cycliques de données et garantit une taille d'occupation fixe sur le périphérique de stockage.
Cette solution est très souvent employée pour stocker des éléments de données concernant les flux réseau, et inclut des outils capables de générer des graphes variés. Elle permet aussi de gérer les profils utilisateurs.
Cacti est disponible sous licence GPL.
Le couteau suisse de la supervision : Eon
Eon (Eye Of Network) est une solution de supervision qui rassemble les composants open source leaders dans leur domaine respectif. Eon est intéressante pour plusieurs raisons :
elle intègre souvent les dernières versions des outils qui la composent : Nagios et ses plugins, Cacti, NagVis, etc.
elle intègre également une interface Web d'administration permettant de configurer les objets de supervision par clic ;
sa documentation est disponible en français !
En résumé
Cette petite présentation n'est évidemment pas exhaustive, je pourrais également citer Check_MK ou OpenNMS, dont le périmètre fonctionnel est cependant moindre (d'ailleurs, Check_MK et son composant Live status s'intègrent parfaitement à Nagios).
Les 3 leaders se répartissent le marché. On retrouve Zabbix particulièrement dans la banque, et Centreon dans les grandes institutions françaises. Mais le vrai patron, c'est Nagios. C'est la raison pour laquelle je l'ai choisi pour ce cours. Cette solution demande sûrement un peu de technique, mais elle est redoutablement efficace et pragmatique. Le périmètre fonctionnel disponible avec cet outil gratuit est juste énorme ! Pour en savoir un peu plus, je vous propose de passer au chapitre suivant.