RRDTool : stockage et visualisation de données de monitoring

Fiche PLUME
  • Création ou MAJ importante : 07/12/2012
  • Correction mineure : 04/04/2013
  • Auteur : Jacquelin Charbonnel - LAREMA (CNRS, Université d'Angers)
  • Responsable thématique : Maurice Libes (OSU Institut Pytheas - UMS 3470 CNRS)
  • Relecteur 1 : Sylvain Corcoral
Mots clés
Description
Fonctionnalités générales

RRDtool est un outil de stockage et de visualisation de séries de données échantillonnées au cours du temps, couramment utilisé pour faire du monitoring (trafic réseau, charge serveur, ...) avec des sorties graphiques.
C'est un ensemble de commandes en ligne permettant :

  • de gérer le stockage des valeurs échantillonnées (création des bases de données, insertion des valeurs, etc.),
  • de générer des représentations graphiques de l'évolution de ces valeurs au cours du temps.

RRDtool généralise le concept de RRD (round robin databases) existant dans MRTG et développe les possibilités de visualisation, tout en abandonnant la fonctionnalité d'acquisition de données (qui était présente dans MRTG).

Autres fonctionnalités
  • Les bases de données Round Robin Databases sont des fichiers de taille fixe dans lesquels les données sont insérées séquentiellement au fil du temps.
  • A sa création, une RRD est initialisée avec des valeurs fictives, qui sont remplacées, au fil des insertions, par des valeurs réelles. Le nombre de données dans la base est constant : toute insertion d'une nouvelle donnée éjecte une donnée dont la durée de vie est dépassée.
  • Une RRD peut contenir une ou plusieurs séries de données (par exemple le volume entrant et le volume sortant d'une interface ethernet), et pour chaque série, une ou plusieurs archives (quotidienne, hebdomadaire, mensuelle, etc, ...).
  • Les différentes archives des différentes séries peuvent être visualisées sous forme de courbes, individuellement ou combinées entre elles.
  • Les courbes peuvent représenter les variations de séries de données issues de plusieurs RRD.
  • Les données peuvent être combinées entre elles à l'aide de divers opérateurs (arithmétiques, booléens, trigonométriques, statistiques, etc.) avant d'être visualisées.
Interopérabilité
  • Des fonctionnalités d'import/export des RRD au format XML sont disponibles.
  • Les images générées sont au format PNG, SVG, EPS ou PDF.
  • Il existe des interfaces de programmation pour les langages Perl, Python et Ruby, ainsi qu'une bibliothèque multi-threaded
Contexte d'utilisation dans mon laboratoire/service

RRDTool est utilisé dans le cadre de l'administration système et réseau, pour suivre l'évolution de divers paramètres : taux d'occupation des disques, temps de réponse des différents services réseaux, trafic réseau, consommation CPU/mémoire/swap des serveurs, températures des salles et des équipements, etc.

Limitations, difficultés, fonctionnalités importantes non couvertes

RRDtool génère des courbes sous forme d'images, mais ne propose rien ni pour les organiser, ni pour les intégrer dans des pages web.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

Linux Red Hat Enterprise, Fedora (et autres distributions de même souche).

Plates-formes

RRDTool est développé nativement pour plates-formes Unix, pour lesquelles il est distribué sous forme de tarball et de RPM. Il existe aussi des distributions binaires pour Windows, Netware et CygWin et divers Unix (AIX, HP-UX, Solaris, etc.)

Logiciels connexes
Environnement de développement
Type de structure associée au développement

Développement individuel, par Tobias Oetiker.

Eléments de pérennité

RRDtool a été développé suite au succès de MRTG, The Multi Router Traffic Grapher (http://www.mrtg.org).

Références d'utilisateurs institutionnels
Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Listes de diffusion en anglais (annonces, utilisateurs, développeurs), accès au dépôt subversion, canal IRC, le tout référencé sur http://www.rrdtool.org/support.en.html.

Documentation utilisateur
  • Une documentation en anglais au format HTML est consultable depuis http://www.rrdtool.org/doc.
  • Des pages de manuel sont installées avec l'application et reprennent la documentation en ligne.
Contributions

Un très large ensemble d'outils logiciels développés avec RRDtool est répertorié sur http://www.rrdtool.org/rrdworld.

Parmi eux, à noter Systemgraph, http://www.decagon.de/sw/systemgraph, un petit outil élémentaire qui permet d'obtenir très simplement une panoplie de courbes essentielles (CPU, occupation partition, traffic réseau, etc.) au monitoring de la machine sur laquelle il est installé.