Shinken Entreprise effectue un certain nombre de vérifications sur des hôtes et clusters, appelées "checks". Chaque check peut lors de son exécution extraire une donnée de performance qui est ensuite traitée par Shinken. Ces données peuvent être de tous types:
Les métriques sont présentées par des nombres flottants, qui pourront être ensuite consultés sous forme de graphes dans une interface.
Dans Shinken Entreprise, les métriques sont stockées dans une base de données Graphite (https://graphiteapp.org/).
Les données de métrologie sont enregistrées dans Graphite par l'intermédiaire du module "Graphite-Perfdata", placé sur le Broker. Le Broker envoie les données au démon carbon (partie de Graphite), qui gère le stockage de ces données.
L'accès aux métriques via l'interface de Visualisation est par défaut disponible et ne demande pas de configuration de la part de l'utilisateur.
Les métriques sont accessibles de 2 manières différentes:
Par défaut, par mesure de sécurité Graphite est accessible seulement localement. Un serveur externe qui envoie une requête à Graphite se verra refuser l'accès.
Pour autoriser des serveurs externes à accéder à Graphite, il faut modifier la configuration d'Apache qui est responsable de la mise à disposition de Graphite au monde extérieur:
<VirtualHost 127.0.0.1:80> à remplacer par Listen PORT <VirtualHost ip_interface:PORT> |
avec:
Plus d'informations sont disponibles sur les possibilités de configuration d'Apache sur la page de documentation suivante: https://httpd.apache.org/docs/2.4/en/bind.html
Shinken utilise l'UUID de l'élément (hôte/cluster/check) pour l'identification des métriques. Cette identification par un ID unique permet de conserver les métriques lors d'un renommage de l'élément.
Par contre, quand un outil externe (par exemple Grafana) accède à Graphite, il devient très difficile d'associer l'ID au nom de l'élément, ce qui rend l'exploitation des données récupérées par Shinken très fastidieuse.
Pour résoudre ce problème, Shinken possède à disposition une correspondance des UUID et des noms pour pouvoir présenter les noms des éléments au monde extérieur via Graphite au lieu des UUID.
Cette correspondance est contenue dans la base de données Mongo des SLA, dont l'adcès est configuré dans Graphite dans le fichier /opt/graphite/conf/mongodb.conf.
| Nom de clé | Valeur par défaut | Description |
|---|---|---|
URI | mongodb://localhost/?w=1&fsync=false | URI du serveur Mongo |
DATABASE | shinken | Nom de la base SLA sur le serveur Mongo |