banshee en bref

banshee est un logiciel de supervision libre et gratuit. Il surveille les serveurs, le réseau, le matériel et les applications d’une entreprise, et prévient l’équipe quand une panne se confirme.

Ce qu’il fait

banshee vérifie à intervalle régulier que vos équipements et vos services répondent comme ils le doivent. Il affiche leur état, et il envoie une alerte quand l’un d’eux pose problème. C’est ce qu’on appelle la supervision, ou le monitoring.

Il s’installe sur vos propres serveurs, et les données de la supervision y restent.

À qui il s’adresse

Aux équipes informatiques qui ont un parc à surveiller, de quelques serveurs à plusieurs dizaines de milliers d’hôtes, sur un site ou sur plusieurs.

Pour une direction, la question est souvent celle du temps qu’on y passe. Tout se règle à l’écran, sans fichier ni syntaxe à apprendre : plusieurs personnes de l’équipe peuvent donc s’en occuper, et la supervision ne dépend plus d’un seul expert. Le logiciel, lui, ne coûte aucune licence, quel que soit le nombre d’hôtes.

Comment il fonctionne

banshee se compose de deux programmes.

  • Le master est le serveur central. Il garde l’inventaire de ce qui est surveillé, les réglages, les comptes et les droits, et il présente l’interface web.
  • Les pollers font les contrôles. On les installe au plus près des équipements, dans un datacenter, chez un client ou sur un serveur surveillé. Ils interrogent les équipements en SNMP, en SSH ou en HTTPS, jugent les réponses et transmettent les résultats au master.

C’est toujours le poller qui ouvre la connexion vers le master, jamais l’inverse. Un site distant se supervise donc sans port entrant et sans VPN.

Chaque contrôle s’appelle une sonde. L’écran affiche l’âge de son dernier résultat, et un résultat qui n’a pas été renouvelé à temps est marqué périmé au lieu de rester vert. Chaque poller donne aussi un signe de vie toutes les minutes ; s’il se tait, ses sondes cessent d’être vertes.

Une alerte ne part qu’une fois le problème confirmé, après le délai ou le nombre d’échecs que vous avez choisi. Elle dit pourquoi en une phrase, par exemple « eth0 à 93 %, au-delà de 90 % depuis 5 min ».

Ce qu’il ne fait pas

  • Il ne modifie pas vos équipements de lui-même. Une commande SSH ou une requête HTTP qui écrirait sur un équipement ne part que si l’auteur d’un collecteur l’a écrite dans son code, et ce code se relit avant d’être déployé.
  • Le master ne prend pas la main sur les pollers. Il ne leur pousse aucune mise à jour : les collecteurs d’un poller se mettent à jour sur le poller même, par un administrateur qui voit les changements avant de confirmer.
  • Il n’a pas de mécanisme de haute disponibilité dédié pour le master.
  • Il ne gère pas de dépendances entre hôtes. Chaque hôte est jugé pour lui-même.
  • Aucune intelligence artificielle ne décide de l’état d’une sonde. Les règles sont celles que l’administrateur a cochées.
  • Il n’a ni édition payante, ni licence par hôte ou par sonde.

Licence et prix

banshee est un logiciel libre, publié sous la licence GNU AGPL-3.0. Il est gratuit, et il n’en existe qu’une édition, la même pour tous. La licence vous donne le droit de lire son code et de l’adapter ; qui le modifie et le met à disposition d’autres utilisateurs par un réseau doit leur en donner le code.

Le projet est soutenu par des sponsors. Il cherche aussi des partenaires, capables de déployer banshee et d’accompagner les entreprises qui l’adoptent.

La fiche technique

  • Serveur central : Linux amd64, Debian ou Alpine, avec une base PostgreSQL.
  • Pollers : Linux, FreeBSD, macOS (Intel et ARM), Windows Server 2016 et suivants. Un Windows Server 2008 ou 2012 se supervise à distance, depuis un poller voisin.
  • Protocoles de collecte : SNMP v2c et v3, SSH, HTTP et HTTPS.
  • Collecteurs : écrits en Keen, le langage simplifié de banshee, inclus dans le logiciel et sans dépendance au système. Ils se récupèrent depuis des dépôts ou s’écrivent dans l’éditeur du master.
  • États d’une sonde : OK, WARNING, CRITICAL, MISCONFIGURED (la sonde ne peut pas mesurer, à cause de sa configuration), UNREACHABLE (l’équipement ne rend pas de réponse exploitable), PENDING (aucun résultat encore) et OLD (le dernier résultat est trop vieux).
  • Échelle visée : 80 000 hôtes et 600 000 sondes. L’inventaire a été éprouvé avec 680 001 dossiers, hôtes et sondes.
  • Licence : AGPL-3.0.
  • Origine : conçu et écrit en Alsace.

Les questions d’un administrateur, de l’agent à la haute disponibilité, ont leur réponse dans la FAQ. L’histoire du projet est sur la page À propos, et son état d’avancement dans le premier article du blog. Pour parler de votre parc, contactez l’équipe.