Smokeping
From AleikoumWiki
Dans une autre page du wiki, je vous presentais nagios et sa vision de la supervision...
installation de fping par rpm : rpm -i fping-2.4-1.b2.1.el3.rf.i386.rpm 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
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
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");
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
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>
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 ! :)