0. Introduction

Apres un episode émouvant sur SNMP, SNMP cherche a renouer avec son amour de toujours, MRTG.

1. Presentation

MRTG = Multi Router Traffic Grapher, un outil cree par Tobias Oetiker oetiker@ee.ethz.ch, permettant de generer des graphes en fonction (dans son utilisation “classique”) de stats SNMP. Mais il est possible de donner des valeurs provenant de scripts ou de programmes directement a MRTG. Ce document a pour objectif de vous montrer comment rapidement mettre en place un MRTG avec SNMP ou avec votre script.

2. Fonctionnement

Bah simple, MRTG recoit une valeur a un moment donne, il fait unpoint sur un graphique, il fait ca toutes les X minutes, Au bout de Y minutes vous avez une courbe.MRTG vous dessine la courbe et vous mets en page tout ca en HTML. La particularite de MRTG est de se configurer simplement dans un environement SNMP.

3. Installation

“classique” :

./configure ; make ; make install

attention : MRTG utilise la lib GD et Perl. attention

4. Configuration avec SNMP

Premiere etape: generer le fichier de config de MRTG pour l'element dont on veut les statistique et les graphs (routeurs/switches/serveur).

root:~#cfgmaker [community]@[hostname||IP] > file.cfg
root:~#

Voila vous avez donc un fichier de configuration sur les interfaces actives de votre element (routeur,switch,serveur). Comme dis precedemment MRTG est tres intimement lie a SNMP, si vous editez le fichier de config, vous pourrez y decouvrir certains MIB (Management Information Base) de votre element.

Il est necessaire de preciser un “Workdir” pour permettre la visualisation des pages HTML genere. De nombreuse options liee a l affichage des graphes a leur mise en page, a l'echelle sont disponible dans la documentation de MRTG.

-Start Of File-
WorkDir: /votre/web/mrtg/     {= vers un repertoire de votre web
WriteExpires: Yes
IconDir: /mrtg
Refresh: 300
RunAsDaemon:Yes      {= Nouvelle Option de la version 2.8.12
Interval:5

Target[s103-3001]: [port|OID]:[community]@[host|IP]
Options[s103-3001]:growright,bits       {= Les graphs a droite, Les valeurs en bits
WithPeak[s103-3001]: wmy                {= Week,Monthly,Year Graphs
MaxBytes[s103-3001]: 12500000
Title[s103-3001]: Port 3/01 : Router    {= titre
PageTop[s103-3001]: [H1]Port 3/01 : Router[/H1]
-snipped-

Les options que cfgmaker active par default sont generalement suffisantes pour une premiere utilisation.

5. Configuration Maison

C'est simple, c'est votre script qui fourni les valeurs MRTG, lors du refresh.

root:/etc/mrtg# /usr/local/bin/number-customers.pl
456
root:/etc/mrtg#

Votre script retourne une simple valeur qu'il ira chercehr je ne sais ou. Exemple de config:

Target[login]: `/usr/local/bin/login-servers.pl HOST` {= votre script
MaxBytes[login]: 125000
ShortLegend[login]: connected
LegendO[login]: Connected
LegendI[login]: Connected
Options[login]: gauge,absolute,integer,nopercent,growright
Title[login]: Login Server : Number of connected

Votre script DOIT retourner une valeur.

6. Generer les Graphes.

Si l'option RunAsDaemon n'est pas presente, alors tout dans une crontab sachant que un mrtg doit etre lance pour chaque fichier de config pour pouvoir generer les graphes.

root:~#mrtg file.cfg
-snipped-

quelques warning au premier lancementet voila..

maintenant les resultat sur http://your-domain.com/mrtg, si WorkDir=/votre/web/mrtg.

si vous avez de nombreux elements il est bien d'organiser tout allez dans le repertoire et essayer l'outil `indexmaker`.

Voila vous avez vos stats, j'espere ne pas avoir fait trop d'erreur ni d'oublis.

7. Conclusion vous pouvez faire des stats sur tout et n'importe quoi sans difficultees.

Plus d'info : http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/config.html

unix/mrtg.txt · Last modified: 2010/01/12 13:29 (external edit)