Je me mets ça de côté : la retention par défaut des RRD dans munin au format carbon :
[munin_schema]
pattern = ^munin.
retentions = 5m:2d,30m:10d,2h:45d,1d:1y
Sur les 2 derniers jours on a une mesure toute les 5 minutes
Sur les 10 derniers jours, une mesure toute les 30 minute est conservée
etc
/opt/graphite/conf/storage-schemas.conf
logtail permet de tail seulement la différence avec le dernier logtail qu'on a fait (un marqueur est créé pour stocker la position)
pratique pour faire une sonde munin si on veut la moyenne ou le max de ce qu'on a dans le log depuis le dernier check
Il existe plusieurs manière de grapher : GAUGE, COUNTER, DERIVE, ABSOLUTE, COMPUTE.
Comment choisir ? dépend de ce que vous graphez :
si la valeur retournée par la sonde est toujours comprise dans un intervalle fixe (ram, pourcentage..) on va prendre GAUGE, pour qui, le point d'une courbe représente la valeur de la sonde à l'instant t
si la valeur est l'état d'un compteur (qui augmente donc indéfiniment), la GAUGE n'est pas forcément adaptée car la courbe ne fera qu'augmenter.. c'est dur de voir l'évolution de celle-ci : une anomalie serait représentée par une pente plus "ardue" à un moment donné.. au lieu d'un pic. Dans ce cas là, il vaut mieux utiliser COUNTER ou ABSOLUTE, pour qui, un point sur le graph n'est pas la valeur retournée par la sonde, mais la différence entre les deux dernieres mesures.
ABSOLUTE donne cette valeur de maniere absolue, si votre premiere mesure donne 100, la deuxieme 122, on aura un point à 22.
COUNTER et DERIVE rajoutent une division pour avoir le delta par seconde (/300) par exemple si la premiere valeur est 1000, la deuxieme est 1600, le delta absolu est de 600. Si la différence de temps entre les deux collectes est de 5min (300secondes), notre point sur le graph sera à 600/300 = 2
Ce 2 signifie que, sur cet intervalle, on a eu 2 unité par seconde en moyenne.
On peut configurer le plugin pour avoir la valeur par minute ou par heure avec graph_period : http://munin-monitoring.org/wiki/graph_period
Un script python qui va éxécuter les plugins munin puis envoyer les datas vers un carbon. Exemple de metric utilisée :
servers.localhost.system.users.tty
[prefix].[hostname].[group].[service].[courbe]
Pour tester rapidement sur un node munin :
git clone https://github.com/jforman/munin-graphite
vim +151 m2g-poller.py : remplacer logging.debug par logging.info
Puis lancer : ./m2g-poller.py --carbon localhost:6969
Ah oui, si vous n'avez pas de server carbon, vous pouvez en "simuler un" : while true; do nc -l -p 6969; done;
En plus il utilise ça : https://graphite.readthedocs.org/en/latest/feeding-carbon.html#the-pickle-protocol
cp les rrd dans un dossier tmp
dans ce dossier :
for file in ./*.rrd; do mv $file $(echo $file|sed 's-ancien.com-nouveau.com-'); done
mv ces nouveau rrd dans la bonne arbo
changer la conf munin master