22
Introduction à RRDTool

Introduction à RRDTool

  • Upload
    teo

  • View
    53

  • Download
    0

Embed Size (px)

DESCRIPTION

Introduction à RRDTool. Sommaire. Qu’est-ce que RRDtool ? Création et peuplement de la base Visualisation de la base Génération des graphs Exercice. Qu’est-ce que RRDTool ?. Une base de données cyclique Un outil de création de graphiques RRDTool n’est pas : Un outil de collecte - PowerPoint PPT Presentation

Citation preview

Page 1: Introduction à RRDTool

Introduction à RRDTool

Page 2: Introduction à RRDTool

• Qu’est-ce que RRDtool ?

• Création et peuplement de la base

• Visualisation de la base

• Génération des graphs

• Exercice

• Qu’est-ce que RRDtool ?

• Création et peuplement de la base

• Visualisation de la base

• Génération des graphs

• Exercice

SommaireSommaire

Page 3: Introduction à RRDTool

• Une base de données cyclique

• Un outil de création de graphiques

RRDTool n’est pas :

• Un outil de collecte

• Un analyseur SNMP

• Une base de données cyclique

• Un outil de création de graphiques

RRDTool n’est pas :

• Un outil de collecte

• Un analyseur SNMP

Qu’est-ce que RRDTool ?Qu’est-ce que RRDTool ?

Page 4: Introduction à RRDTool

• Un nombre fixe de données est sauvegardé Les données les plus anciennes sont écrasées On fait une moyenne pour avoir des données• sur le long terme

• Un nombre fixe de données est sauvegardé Les données les plus anciennes sont écrasées On fait une moyenne pour avoir des données• sur le long terme

Qu’est-ce qu’une basede données cyclique ?Qu’est-ce qu’une basede données cyclique ?

Page 5: Introduction à RRDTool

Qu’est-ce qu’une basede données cyclique ?Qu’est-ce qu’une basede données cyclique ?

Une base de donnéesavec ses données

On ajoutedes donnéesIl n’y a plusde place !

On enlève les donnéesles plus anciennes pour

faire de la place

La base ne changejamais de taille

Page 6: Introduction à RRDTool

• Avec la commande rrdtool createPar exemple:rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

• Avec la commande rrdtool createPar exemple:rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

Comment créer une base ?Comment créer une base ?

Page 7: Introduction à RRDTool

rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

1- Création d’une base memory.rrd qui sera alimentée toutes les 60 secondes

2- Création d’une variable nommée buffer, de type GAUGE

rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

1- Création d’une base memory.rrd qui sera alimentée toutes les 60 secondes

2- Création d’une variable nommée buffer, de type GAUGE

Comment créer une base ?Comment créer une base ?

Page 8: Introduction à RRDTool

rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

3- On crée une table de 1440 cases qui sera alimentée toutes les step (60 secondes)

4- On crée une table de 672 cases qui sera alimentée toutes les 15 step (15 minutes)

rrdtool create memory.rrd --step 60 DS:buffer:GAUGE:120:U:U RRA:AVERAGE:0.5:1:1440 RRA:AVERAGE:0.5:15:672

3- On crée une table de 1440 cases qui sera alimentée toutes les step (60 secondes)

4- On crée une table de 672 cases qui sera alimentée toutes les 15 step (15 minutes)

Comment créer une base ?Comment créer une base ?

Page 9: Introduction à RRDTool

• GAUGE, COUNTER, DERIVE, ABSOLUTE, etc.

• GAUGE, Valeur oscillante (temperature, RAM, etc.)

• COUNTER, Valeur croissante (Octets échangés,âge, etc.)

• DERIVE, Dérivée de la fonction (Pente d’unefonction, etc.)

• ABSOLUTE, Valeur par rapport à la précédente

• GAUGE, COUNTER, DERIVE, ABSOLUTE, etc.

• GAUGE, Valeur oscillante (temperature, RAM, etc.)

• COUNTER, Valeur croissante (Octets échangés,âge, etc.)

• DERIVE, Dérivée de la fonction (Pente d’unefonction, etc.)

• ABSOLUTE, Valeur par rapport à la précédente

Types de donnéesTypes de données

Page 10: Introduction à RRDTool

Comment créer une base ?Comment créer une base ?

Une table de1440 cases

Une table de672 cases

On alimente la basetoutes les

60 secondes

On fait la moyennedes15 valeurs

précédentes pouralimenter la

seconde table

Page 11: Introduction à RRDTool

• En combien de temps la base sera-t-elle remplie ?

• Pourrais-je faire des graphs de 2h ? et 4h ?

• Quelle sera la taille de la base à sacréation ?

• Et quand elle sera remplie ?

• Quel âge aura l’information la plus vieillede la base ?

• En combien de temps la base sera-t-elle remplie ?

• Pourrais-je faire des graphs de 2h ? et 4h ?

• Quelle sera la taille de la base à sacréation ?

• Et quand elle sera remplie ?

• Quel âge aura l’information la plus vieillede la base ?

Questions ?Questions ?

Page 12: Introduction à RRDTool

• Quel est l’intérêt de créer plusieurs RRA ?

• Quelle commande utiliser pour créer desgraphs d’une heure, sur une semaine ?

• Même chose pour aussi pouvoir faire desgraphs d’un mois, sur une année ?

• Quel est l’intérêt de créer plusieurs RRA ?

• Quelle commande utiliser pour créer desgraphs d’une heure, sur une semaine ?

• Même chose pour aussi pouvoir faire desgraphs d’un mois, sur une année ?

Questions ?Questions ?

Page 13: Introduction à RRDTool

• A la main: rrdtool update test.rrd 920804700:12345 920805000:12357 920805300:12363

•Automatiquement: #!/bin/sh mem=`snmpget -v2c -c macommunaute localhost hrStorageUsed.2 | cut -d ":" -f 4 | cut -d " " -f 2` rrdtool update /root/rrdtool/memory.rrd N:$mem

• A la main: rrdtool update test.rrd 920804700:12345 920805000:12357 920805300:12363

•Automatiquement: #!/bin/sh mem=`snmpget -v2c -c macommunaute localhost hrStorageUsed.2 | cut -d ":" -f 4 | cut -d " " -f 2` rrdtool update /root/rrdtool/memory.rrd N:$mem

Comment alimenter la base ?Comment alimenter la base ?

Page 14: Introduction à RRDTool

• A l’aide de rrdtool dump: rrdtool dump test.rrd | less

<!-- Round Robin Database Dump --> <rrd> <version> 0001 </version> <step> 60 </step> <!-- Seconds --> <lastupdate> 1170153361 </lastupdate> <!-- 2007-01-30 11:36:01 CET --> …

• A l’aide de rrdtool dump: rrdtool dump test.rrd | less

<!-- Round Robin Database Dump --> <rrd> <version> 0001 </version> <step> 60 </step> <!-- Seconds --> <lastupdate> 1170153361 </lastupdate> <!-- 2007-01-30 11:36:01 CET --> …

Comment lire la base ?Comment lire la base ?

Page 15: Introduction à RRDTool

C’est très simple ! C’est très simple !

Comment créer des graphs ?Comment créer des graphs ?

A l’aide de rrdtool graph:A l’aide de rrdtool graph:

rrdtool graph /var/www/graphs/traffic_heure.png --start -3600 --vertical-label bps DEF:inoctets=/root/rrdtool/dedibox.rrd:input:AVERAGE DEF:outoctets=/root/rrdtool/dedibox.rrd:output:AVERAGE CDEF:inbps=inoctets,8,\* CDEF:outbps=outoctets,8,\* AREA:inbps#00FF00:"Traffic entrant" LINE1:outbps#0000FF:"Traffic sortant"

Page 16: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

rrdtool graph /var/www/graphs/traffic_heure.png --start -3600 --vertical-label bps DEF:inoctets=/root/rrdtool/dedibox.rrd:input:AVERAGE DEF:outoctets=/root/rrdtool/dedibox.rrd:output:AVERAGE CDEF:inbps=inoctets,8,\* CDEF:outbps=outoctets,8,\* AREA:inbps#00FF00:"Traffic entrant" LINE1:outbps#0000FF:"Traffic sortant"

1- On crée un graph nommé traffic_heure.png qui démarre ily a 3600s, soit une heure

2- On crée deux variables qui vont correspondre à des valeurs de ma base dedibox.rrd, input et output

3- On crée deux autrs variables qui vont correspondre à un calcul fait sur les deux variables précédentes pour les avoir en bits par secondes

Page 17: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

rrdtool graph /var/www/graphs/traffic_heure.png --start -3600 --vertical-label bps DEF:inoctets=/root/rrdtool/dedibox.rrd:input:AVERAGE DEF:outoctets=/root/rrdtool/dedibox.rrd:output:AVERAGE CDEF:inbps=inoctets,8,\* CDEF:outbps=outoctets,8,\* AREA:inbps#00FF00:"Traffic entrant" LINE1:outbps#0000FF:"Traffic sortant"

1- On graphs la variable inbps en vert sous forme d’histogrammes

2- On graph la variable outbps en bleu sous forme de ligne

Page 18: Introduction à RRDTool

Et voilà !Et voilà !

Page 19: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

• Choisissez une variable à monitorer, depréférence avec plusieurs entrées (mémoire, CPU, LAN, etc.)

• Faites un scripts qui récupère ces valeursproprement

• Calculez les valeurs de temps dont vousaurez besoin pour afficher les données parheure, jour et semaine

• Choisissez une variable à monitorer, depréférence avec plusieurs entrées (mémoire, CPU, LAN, etc.)

• Faites un scripts qui récupère ces valeursproprement

• Calculez les valeurs de temps dont vousaurez besoin pour afficher les données parheure, jour et semaine

Page 20: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

• Créez votre base

• Ajoutez à votre script l’insertion des valeursdans la base

• Mettez le script dans le crontab toutes lesminutes

• Créez votre base

• Ajoutez à votre script l’insertion des valeursdans la base

• Mettez le script dans le crontab toutes lesminutes

Page 21: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

• Créez un premier graph simple

• Créez trois graphs, chacun pour les périodesde temps différentes (heure, jour, semaine)

• Créez une page web qui affiche vos graphs

• Créez un premier graph simple

• Créez trois graphs, chacun pour les périodesde temps différentes (heure, jour, semaine)

• Créez une page web qui affiche vos graphs

Page 22: Introduction à RRDTool

Comment créer des graphs ?Comment créer des graphs ?

• Utilisez les options de graph pour améliorervos graphs

• Faites différents graphs (somme,positif/négatif, etc.)

• Utilisez des couleurs, rafraichissezautomatiquement vos pages.

• Utilisez les options de graph pour améliorervos graphs

• Faites différents graphs (somme,positif/négatif, etc.)

• Utilisez des couleurs, rafraichissezautomatiquement vos pages.