Voici la suite de l’article présentant les hypothèses de notre comparatif ainsi qu’un bref descriptif de chacun des outils comparés. Je vais maintenant établir une matrice contenant les éléments principaux de décision, selon mon expérience, afin de comparer les outils proposés et d’évaluer la réponse qu’ils apportent sur chacun de ces critères. Pour rappel, les candidats sont des outils opensource gratuits : Zabbix, Centreon, Nagios, Cacti et Munin.
Fromage ou Dessert ?
Métrologie ou Supervision ? C’est la grande question. Il faut bien évidemment que les 2 composants du monitoring soient présents pour assurer le bien-être de votre infrastructure. Cependant, il n’est pas toujours évident de savoir dans quel domaine l’outil assure le service ou bien si il assure les 2. Le schéma ci-dessous indique à quel(s) groupe(s) appartiennent les outils étudiés.
La Matrice… Enfin ! :o)
La réponse n’est pas 42, rassurez-vous. Vous trouverez-ci dessous les éléments de décision qui permettront de choisir tel ou tel outil pour votre infrastructure.
Les + / –
Si je devais retenir un point positif et un axe d’amélioration pour chaque outil qui me feraient pencher pour son utilisation ou non en production, ce seraient ceux là :
Munin
+ : Sa configuration très simple sous forme de fichiers de configuration et de liens symboliques, en font un candidat idéal pour un gestionnaire de configuration centralisé comme Puppet et pour de l’automatisation.
– : L’absence actuelle sur ses graphiques d’une fonctionnalité de zoom et de time frame glissante rend son utilisation très difficile pour de la production.
Nagios
+ : Sa configuration sous forme de fichiers, qui peut être assez vite repoussante, en fait cependant un candidat idéal à la « pupettisation » et à l’automatisation. Au delà de cela, c’est, on peut le dire, un outil complet qui a fait ses preuves.
– : L’IHM… Il ne faut pas négliger cet aspect, car une information mise en forme « avec goût » aide aussi à sa compréhension et son interprétation. La forme est importante au delà de la pertinence de l’information.
Cacti
+ : Un outil de métrologie complet avec pas mal de fonctionnalités (Thold, Weathermap, …) apportées au travers de sa Plugin Architecture. La variété et les possibilités de ses tempates complexes sont aussi un atout non négligeable.
– : La création de ses templates peut s’avérer un peu complexe au premier abord avec les différentes couches (Data Queries, Data Input Method, Data Templates, Graph Templates, Host Templates, …). Un autre point quelque peu embêtant est le manque d’homogénéité dans la configuration de ses templates (casse-tête pour l’automatisation).
Centreon
+ : Une IHM agréable et intuitive. Les notions proposées permettent une prise en main intuitive et les templates (hosts, services, commandes, …) sont pratiques et simples à mettre en place.
– : Les graphiques se contentent de tracer les données de performance remontées par Nagios sans offrir la possibilité de les mettre en relation et de les travailler afin d’obtenir des graphes orientés « logiciel/métier » comme des graphes résumant l’utilisation d’un Apache ou d’un MySQL (par exemple).
Zabbix
+ : Un outil complet autant au niveau de la métrologie que de la supervision qui se suffit à lui-même pour monitorer de manière exhaustive une infrastructure. Les fonctionnalités très avancées permettent de gérer pratiquement tous les cas.
– : Un manque de lisibilité de certains écrans (comme celui des déclencheurs par exemple) et de leurs enchaînements et des notions qui manquent parfois de prise en main intuitive. L’interface Web fait également un peu « vieillote ».
Conclusion
Il n’y a pas de mauvaise solution, certaines seront simplement plus adaptées à ce que vous voulez en faire. Voici quelques possibilités afin d’obtenir un monitoring complet de votre infrastructure :
- Si vous voulez privilégier l’automatisation et la gestion centralisée des configurations de votre infrastructure (Cf. Puppet), pensez Munin-Nagios (vous aurez alors accès dans ce cas à 2 IHMs Web pour monitorer votre infrastructure), the « Double tap », the « Buddy system » du monitoring ! :o) Pas besoin d’accéder à des APIs plus ou moins avancées (comme pour leur camarades) pour ajouter/supprimer un host et associer les services à monitorer, tout est sous forme de fichiers de configuration et de symlinks. A noter que Munin n’exploitera pas les données de performances de Nagios mais celles de ses propres sondes et que la grosse lacune de Munin est l’absence actuelle sur ses graphiques d’une fonctionnalité de zoom et de time frame glissante qui rend son utilisation très difficile pour de la production.
- Si vous privilégiez une métrologie avancée donnant accès à des possibilités de supervision, pensez Cacti avec sa Plugin Architecture (assortie avec Thold par exemple). Prenez un peu de temps pour comprendre les notions utilisées pour créer les templates de graphes et créez vos propres graphes complexes ! Vous pourrez ensuite utilisez leurs métriques et la connaissance que vous aurez acquis dessus pour lever des alertes via Thold.
- Si vous privilégiez une supervision complète avec des possibilités de métrologie simple, Centreon est fait pour vous ! Surcouche de Nagios proposant un générateur de configuration, l’exploitation des données de performances de Nagios via RRDTool, du reporting agréable sur le statut de votre infrastructure, la possibilité de gérer une architecture distribuée de Nagios via son daemon CentCore qui se connecte sur les Nagios remote en SSH, … Centreon propose un pilotage de Nagios via une interface Web agréable et intuitive et une gestion de templates de hosts, services, commandes, … très pratique.
- Si vous êtes sans concessions, Zabbix vous offre une interface unifiée vous proposant aussi bien de superviser votre infrastructure avec des notions très avancées (mesures, déclencheurs, actions conditionnelles complexes, escalade, scénarii HTTP, …) que de travailler la partie métrologie avec la possibilité de créer des graphes complexes avec les mesures récupérées. A noter qu’au delà de l’aspect séduisant du « No Compromis », la prise en main est moins intuitive qu’un Centreon, par exemple, avec une IHM moins agréable et proposant parfois des enchaînements d’écrans un peu confus à mon sens.
Comme précisé dans la première partie de cet article, il est important de noter que je n’ai pas bien sûr pu tester les dernières versions de chaque outil, puisqu’il s’agit de retours d’expérience (sur plus de 2 ans) sur des environnements de production et qu’on n’en met pas un en place toutes les semaines ! ;ob Je suis donc ouvert à vos remarques sur les évolutions que vous aurez constatées sur vos outils favoris ou bien sur les éléments de décision que vous mettriez en plus dans la balance pour effectuer votre choix.