Smokeping

From AleikoumWiki

(Difference between revisions)
Jump to: navigation, search
(Liens)
Line 7: Line 7:
=== Liens ===
=== Liens ===
-
http://oss.oetiker.ch/smokeping/ : le site officiel de Smokeping
+
http://oss.oetiker.ch/smokeping/ : le site officiel de Smokeping<br />
-
http://oss.oetiker.ch/rrdtool/ : le site officiel de RRDTool qui est indispensable a Smokeping
+
http://oss.oetiker.ch/rrdtool/ : le site officiel de RRDTool qui est indispensable a Smokeping<br />
== La Mise en Place ==
== La Mise en Place ==

Revision as of 16:19, 9 April 2008

Contents

L'Approche

Qu'est ce que c'est ?

Dans une autre page du wiki, je vous presentais Nagios et sa vision de la supervision...
Voici un outil supplementaire pour la supervision : Smokeping... qui permet de superviser les latences de votre reseau par le biais de de ping et de fping.
Dans l'absolue il n'apporte rien de plus qu'un Nagios qui utiliserait des plugins similaires mais je trouve que c'est un bon complement a Nagios. En effet, sans se prendre la tete on peut installer un systeme vraiment complet pour la supervision de la latence.

Liens

http://oss.oetiker.ch/smokeping/ : le site officiel de Smokeping
http://oss.oetiker.ch/rrdtool/ : le site officiel de RRDTool qui est indispensable a Smokeping

La Mise en Place

Prerequis

installation de fping par rpm : rpm -i fping-2.4-1.b2.1.el3.rf.i386.rpm installation de SpeedyCGI : recuperer les sources sur http://www.daemoninc.com/SpeedyCGI/ puis le classique : perl Makefile.PL && make && make test && make install installation de rrdtool : wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.27.tar.gz && tar -xvzf rrdtool-1.2.27.tar.gz && cd rrdtool-1.2.27 && ./configure --prefix=/usr/local/rrdtool && make && make install

Installation

dl : wget http://oss.oetiker.ch/smokeping/pub/smokeping-2.3.5.tar.gz copie : tar -xvzf smokeping-2.3.5.tar.gz && mv smokeping-2.3.5 /usr/local/ && ln -s /usr/local/smokeping-2.3.5/ /usr/local/smokeping && cd /usr/local/smokeping


configuration pour bin/smokeping

mv bin/smokeping.dist bin/smokeping

puis il faut modifier les lignes concernant le perl, les libs rrd et celle de smokeping et le fichier de conf dans mon cas ca a donne ca :

#!/usr/bin/perl -w
...
use lib qw(/usr/local/rrdtool/lib/perl/5.8.0/);
use lib qw(/usr/local/smokeping/lib/);
...
Smokeping::main("/usr/local/smokeping/etc/config");

pour htdocs/smokeping.cgi

mv htdocs/smokeping.cgi.dist htdocs/smokeping.cgi

de la meme facon il va falloir modifier ce fichier ce qui donne de mon cote :

#!/usr/bin/speedy -w
...
use lib qw(/usr/local/rrdtool-1.2.27/lib/perl/5.8.0/));
use lib qw(/usr/local/smokeping/lib/);
Smokeping::cgi("/usr/local/smokeping/etc/config");


Dans mon cas etc/basepage.html devait etre modifie ainsi :

...
<script src="/smokeping/lib/prototype.js" type="text/javascript"></script>
<script src="/smokeping/lib/scriptaculous.js?load=builder,dragdrop" type="text/javascript"></script>
<script src="/smokeping/cropper.js" type="text/javascript"></script>
<script src="/smokeping/smokeping-zoom.js" type="text/javascript"></script>
...

Puis pour que tout ceci soit conforme j'ai declare ceci dans mon apache (typiquement /usr/local/httpd:/conf/httpd.conf) :

############################################
#Smokeping : supervision ping
############################################
ScriptAlias /smokeping/cgi-bin "/usr/local/smokeping/htdocs/"

<Directory "/usr/local/smokeping/htdocs/">
   Options ExecCGI Indexes FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all
</Directory>

Alias /smokeping/cache "/usr/local/smokeping/smokeping-ms/cache/"

<Directory "/usr/local/smokeping/smokeping-ms/cache/">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
</Directory>

Alias /smokeping "/usr/local/smokeping/htdocs/cropper/"

<Directory "/usr/local/smokeping/htdocs/cropper/">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
        RewriteEngine on
        RewriteRule   ^/.* /smokeping/cgi-bin/smokeping.cgi
</Directory>


Configuration

pour etc/config

*** General ***

owner    = Laby
contact  = erwan@plop.com
mailhost = mail.plop.fr
sendmail = /usr/lib/sendmail
# NOTE: do not put the Image Cache below cgi-bin
# since all files under cgi-bin will be executed ... this is not
# good for images.
imgcache = /usr/local/smokeping/smokeping-ms/cache
imgurl   = /smokeping/cache
datadir  = /usr/local/smokeping/smokeping-ms/data
piddir  = /usr/local/smokeping/smokeping-ms/var
cgiurl   = http://plop.com:8080/smokeping/cgi-bin/smokeping.cgi
smokemail = /usr/local/smokeping/etc/smokemail.dist
tmail = /usr/local/smokeping/etc/tmail.dist
# specify this to get syslog logging
syslogfacility = local0
# each probe is now run in its own process
# disable this to revert to the old behaviour
# concurrentprobes = no

*** Alerts ***
to = erwan@plop.com
from = erwan@plop.com

+someloss
type = loss
# in percent
#pattern = >0%,*12*,>0%,*12*,>0%
pattern = >0%,*10*,>0%,*10*,>0%
comment = loss 3 times  in a row

+bigloss
type = loss
pattern = ==0%,==0%,==0%,>50%,>50%,>50%
comment = big loss starting

*** Database ***

# 4 pings toutes les minutes
step     = 60
pings    = 4

# consfn mrhb steps total

AVERAGE  0.5   1  1008
AVERAGE  0.5  12  4320
    MIN  0.5  12  4320
    MAX  0.5  12  4320
AVERAGE  0.5 144   720
    MAX  0.5 144   720
    MIN  0.5 144   720

*** Presentation ***

template = /usr/local/smokeping/etc/basepage.html

+ charts

menu = Charts
title = The most interesting destinations

++ stddev
sorter = StdDev(entries=>4)
title = Top Standard Deviation
menu = Std Deviation
format = Standard Deviation %f

++ max
sorter = Max(entries=>5)
title = Top Max Roundtrip Time
menu = by Max
format = Max Roundtrip Time %f seconds

++ loss
sorter = Loss(entries=>5)
title = Top Packet Loss
menu = Loss
format = Packets Lost %f

++ median
sorter = Median(entries=>5)
title = Top Median Roundtrip Time
menu = by Median
format = Median RTT %f seconds

+ overview

width = 600
height = 50
range = 10h

+ detail

width = 600
height = 200
unison_tolerance = 2

"Last 3 Hours"    3h
"Last 30 Hours"   30h
"Last 10 Days"    10d
"Last 400 Days"   400d


*** Probes ***

+ FPing

binary = /usr/sbin/fping

*** Targets ***

probe = FPing

menu = Top
title = Network Latency Grapher
remark = my first smokeping conf

+ EXT
menu = Exterieur
title = vers l'exterieur

++ Google
host = www.google.com

++ Weborama
host = www.weborama.com

++ Yahoo
host = www.yahoo.fr





ensuite... bah c'est fini ! enfin presque ! il faut lancer

pour lancer le daemon smokeping : /usr/local/smokeping/bin/smokeping --config=/usr/local/smokeping/etc/config --debug et si tout est bon /usr/local/smokeping/bin/smokeping --config=/usr/local/smokeping/etc/config

en vous remerciant ! :)

Personal tools