如何在Ubuntu 15.04上设置SmokePing进行延迟监控

时间:2020-03-05 15:29:36  来源:igfitidea点击:

在本文中,我们将设置SmokePing来通过延迟监视来跟踪我们的网络。
它可以测量,存储和显示延迟,延迟分布和数据包丢失。
它带有高度可配置的警报系统,实时延迟图表和交互式图形浏览器。
冒烟不仅限于测试数据包的往返时间。
它还可以在远程端执行某些任务(“探针”),例如下载网页。
这将提供Web服务器可用性和网络运行状况的综合“图景”。

SmokePing安装

SmokePing是一个开源数据包监视工具,具有易于安装和配置的功能。
在安装最少的新版Ubuntu 15.04中,我们仅需要获取基本Web服务器的库作为准备工作。

安装SmokePing和准备工作

对于SmokePing,推荐的Web服务器是Apache,但是我们会设置Nginx并优先使用Nginx,而不是Apache,以提高性能和可伸缩性。

因此,首先使用fcgiwrap和sendmail软件包安装Nginx Web服务器,如下所示。

root@ubuntu-15:~# apt-get install nginx
root@ubuntu-15:~# apt-get install sendmail
root@ubuntu-15:~# apt-get install fcgiwrap
root@ubuntu-15:~# apt-get install smokeping

使用Nginx的Fcgiwrap设置

Nginx本身不能提供CGI脚本,因此它需要绑定到localhost的CGI服务器才能使它们可访问。
这就是为什么我们在这里使用Fcgiwrap的原因。

root@ubuntu-15:~# cp /usr/share/doc/fcgiwrap/examples/nginx.conf /etc/nginx/fcgiwrap.conf

现在修改我们想要的主机,否则我们可以使用默认主机来支持cgi脚本,如下所示。

#fast cgi support
include /etc/nginx/fcgiwrap.conf;
location ~ \.cgi$
{
fastcgi_intercept_errors on;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}

通过使用以下命令,我们创建了从吸烟到www文件夹的链接。

root@ubuntu-15:~# ln -s /usr/share/smokeping/www /var/www/smokeping
root@ubuntu-15:~# ln -s /usr/lib/cgi-bin/smokeping.cgi /usr/share/smokeping/www/smokeping.cgi

smokeping运行后,它将生成rrd文件,CGI脚本可以检查该文件以生成html输出。

SmokePing配置

成功安装基本软件包后,我们将继续配置其不同文件以监视主机,如下所示。

编辑常规配置文件

root@ubuntu-15:~# vim /etc/smokeping/config.d/General
owner = theitroad
contact = [email protected]
mailhost = localhost
# NOTE: do not put the Image Cache below cgi-bin
cgiurl = http://172.25.10.172/cgi-bin/smokeping.cgi
# specify this to get syslog logging
syslogfacility = local0
# concurrentprobes = no
@include /etc/smokeping/config.d/pathnames

编辑路径名文件

将sendmail的值设置为false,以便在不使用烟雾ping时可以运行。

root@ubuntu-15:~# vim /etc/smokeping/config.d/pathnames
sendmail = /bin/false
imgcache = /var/cache/smokeping/images
imgurl = ../smokeping/images
datadir = /var/lib/smokeping
piddir = /var/run/smokeping
smokemail = /etc/smokeping/smokemail
tmail = /etc/smokeping/tmail

编辑警报文件

root@ubuntu-15:~# vim /etc/smokeping/config.d/Alerts
*** Alerts ***
to = [email protected]
from = [email protected]
+someloss
type = loss
# in percent
pattern = >0%,*12*,>0%,*12*,>0%
comment = loss 3 times in a row

编辑目标文件

其中我们将要测量的目标添加到目标文件的底部,以进行测量。
我们添加一个以+开头的条目,以创建一个顶级条目,随后的带有++的行将显示为子条目。
这些将显示在生成的网页左侧的菜单中,如下所示:

*** Targets ***
probe = FPing
menu = Top
title = Network Latency Grapher
remark = Welcome to the SmokePing website of xxx Company. \
Here you will learn all about the latency of our network.
+ Local
menu = Local
title = Local Network
#parents = owner:/Test/James location:/
++ LocalMachine
menu = Local Machine
title = This host
host = localhost
#alerts = someloss
+ My_Blogs
menu = theitroad
title = theitroad
++ Web_Server_1
menu = theitroad Web
title = theitroad Web
host = theitroad.com

重新启动smokeping和Nginx Web服务器

root@ubuntu-15:~#service smokeping restart
root@ubuntu-15:~#service nginx restart

访问smokeping

http://your_configured_server_name/cgi-bin/smokeping.cgi
http://localhost/cgi-bin/smokeping.cgi

了解SmokePing延迟

所有信息一起提供了网络运行状况的指示。
例如,丢包是不应该突然发生的事情。
这意味着链接中间的设备重载(overloading)或者某处的路由器配置错误。

RTT(往返时间)值的剧烈波动也表明网络过载。
这在图表上显示为烟雾;烟雾越多,波动越大。