如何在Ubuntu 15.04上设置SmokePing进行延迟监控
在本文中,我们将设置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(往返时间)值的剧烈波动也表明网络过载。
这在图表上显示为烟雾;烟雾越多,波动越大。