應觀眾要求, 我介紹一下Somkeping的安裝步驟. 我是在Fedora3安裝.
Somkeping用來觀察線路品質或service品質的不錯工具, 和其它Tool不同, 它是可以指定每次ping多少次, 及loss多少時或多少次時, 才發alarm. 不像其它的Tool, 在當下ping一次不到就發alarm.
1.安裝RRDTool
Get RPM: http://dag.wieers.com/packages/rrdtool/
2.安裝FPing
Get RPM: http://dag.wieers.com/packages/fping/
3.安裝Echoping
Get RPM: ftp://ftp.internatif.org/pub/unix/echoping/echoping-5.2.0.tar.gz
tar zxvpf echoping-5.2.0.tar.gz
cd echoping-5.2.0
./configure --prefix=/usr --with-ssl --without-libidn
make
make install
4.安裝SpeedyCGI
Get Source http://daemoninc.com/SpeedyCGI/CGI-SpeedyCGI-2.22.tar.gz
tar zxvpf CGI-SpeedyCGI-2.22.tar.gz
cd CGI-SpeedyCGI-2.22
perl Makefile.PL
Compile mod_speedycgi (default no)? no
make
make test
make install
5.Somkeping
cd /usr/local/
mkdir -p smokevar/etc/
mkdir smokevar/img
chown apache:apache smokevar/img
mkdir smokevar/data
tar zxvpf smokeping-1.38.tar.gz
chown -R root:root smokeping-1.38
cd /usr/local/smokeping-1.38/bin
(1)mv smokeping.dist smokeping
modify smokeping
#!/usr/bin/perl -w
use lib qw(/usr/local/smokeping/lib/);
use lib qw(/usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi/auto/RRDs);
Smokeping::main("/usr/local/smokevar/etc/config");
(2)mv smokeping.cgi.dist /var/www/cgi-bin/
modify smokeping.cgi
#!/usr/bin/speedy -w
use lib qw(/usr/local/smokeping/lib/);
use lib qw(/usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi/auto/RRDs);
Smokeping::cgi("/usr/local/smokevar/etc/config");
(3)cd /usr/local/smokeping
cp config.dist /usr/local/smokevar/etc/config
cp smokemail.dist /usr/local/smokevar/etc/smokemail
cp basepage.html.dist /usr/local/smokevar/etc/basepage.html
ln -s /usr/local/smokeping-1.38/ /usr/local/smokeping
6.Edit /etc/httpd/conf/httpd.conf
#
# SmokePing
#
Alias /smokeping/ "/usr/local/smokevar/img/"
service httpd restart
7.Edit /etc/rc3.d/S99local
#
# Start Smokeping
#
echo Start Smokeping...
/usr/local/smokeping/bin/smokeping &
8.手動立即啟動Smokeping
[root@og etc]# /usr/local/smokeping/bin/smokeping &
[1] 12964
[root@og etc]# ### fping seems to report in 1 milliseconds
### parsing dig output...OK
Note: logging to syslog as local0/info.
Daemonizing /usr/local/smokeping/bin/smokeping ...
[1]+ Done /usr/local/smokeping/bin/smokeping