Description
Fonctionnalités
Références
Comparatif
Foire Aux Questions
Support
Feuille de route
Téléchargement
Documentation
Copies d'écran
Crédits
Recrutement
Contact
Liens
“StoreMe” est un service de mise à jour des bases de données de métrologie. Ces bases sont des fichiers RRD, gérées par l'outil RRDTool (http://oss.oetiker.ch/rrdtool). StoreMe est un composant de la solution de supervision Vigilo.
StoreMe est un démon écrit en python, qui écoute sur le réseau sur un port UDP
paramétrable dans le fichier /etc/default/storeme.
Du réseau il reçoit des trames indiquant le fichier RRD à créer ou à mettre à
jour, ainsi que les nouvelles valeurs. Il stocke ces informations dans une file
d'attente en mémoire, qui est régulièrement dépilée par des processus rrdtool,
chargés de mettre à jour les fichiers RRD. La taille de la file d'attente est
paramétrable dans le même fichier.
Les dépendances de l'application sont donc :
StoreMe utilise un fichier de configuration qui décrit le format des fichiers
RRD s'ils doivent être créés. Ce fichier est nommé “storeme.conf.py” et se situe
dans le dossier /etc/vigilo-storeme par défaut, mais l'emplacement est paramétrable
dans le même fichier que précédemment.
StoreMe s'appuie sur deux fichiers de configuration :
/etc/default/storeme, qui définit les variables d'environnement utilisées pour les paramètres généraux de l'applicationstoreme.conf.py, qui décrit le format des fichiers RRD s'ils doivent être créés. Ce fichier est en python, et doit donc en respecter la syntaxe. Il se situe dans le dossier /etc/vigilo-storeme par défaut, mais l'emplaçement est paramétrable dans le fichier de configuration précédent/etc/init.d) et paramétrer les variables en début de script (notamment l'emplacement de “StoreMe.py”)/etc/default et y régler les paramètres de l'application/etc/vigilo-storeme et y copier le fichier de configuration d'exemplestoreme.conf.py et modifier son contenu suivant le besoin./etc/init.d/storeme start.Le fichier storeme.conf.py décrit le format que doivent avoir les base de données RRD. Cette description est stockée dans un dictionnaire python, indexé par le nom du fichier RRD à créer. Si ce nom de fichier contient un caractère ”/”, un sous dossier sera créé.
Dans l'exemple suivant, on créé un fichier RRD par hôte et par indicateur (par exemple : la charge sur une minute). Il est très avantageux de créer un fichier RRD par indicateur : en effet, il est difficile d'ajouter un indicateur à un fichier RRD existant. Si on créé un fichier par hôte, il devient impossible d'ajouter un nouvel indicateur à cet hôte dans le futur. De plus, RRDGraph sait aller chercher les indicateurs dans plusieurs fichiers pour la création d'un graphe.
Ici, le nom des indicateurs est utilisé pour générer le nom du fichier RRD, après encodage en base64 (pour éviter l'échappement des caractères). La période de mise à jour est de 5 minutes, on créé 4 RRA :
Enfin, on défini un indicateur unique dont le nom est toujours “DS”, de type “GAUGE”, sans minimum et sans maximum. Pour plus d'informations sur la signification de ces paramètres, voir la documentation de RRDTool.
Exemple de configuration :
# CPU 1min for host1 hosts["host1/Q1BVIDFtaW4="] = { "step": 300, "RRA": [ { "type": "AVERAGE", "xff": 0.5, "step": 1, "rows": 600 }, { "type": "AVERAGE", "xff": 0.5, "step": 6, "rows": 700 }, { "type": "AVERAGE", "xff": 0.5, "step": 24, "rows": 775 }, { "type": "AVERAGE", "xff": 0.5, "step": 288, "rows": 797} ], "DS": [ { "name": "DS", "type": "GAUGE", "heartbeat": 600, "min": "U", "max": "U" } ], }
Un exemple de fichier de configuration commenté est fourni, voir le fichier
storeme.conf.py.dist.