天天看點

Smokeping 網絡性能監控 安裝使用說明

目錄

  • 簡介
    1. -smokeping介紹
    2. -組成部分
    3. -Web伺服器軟體
    4. -Smokeping主服務
    5. -探針
    6. -rrdtool
  • 安裝配置smokeping

2.1--環境依賴包安裝

2.2--RRDtool 1.2.x或更高版本安裝

2.3--FPing安裝

2.4--EchoPing安裝

2.5--Webserver安裝

2.6--Perl 5.10.1 或更高版本安裝

2.7--開始安裝smokeping

三、初始化smokeping

3.1--建立檔案夾

3.2--複制配置檔案

3.3--修改配置檔案

3.4--繪圖支援中文顯示

3.5--權限驗證

3.6--手動啟動smokeping

3.7--寫入smokeping自啟動檔案

3.8--修改Apache配置檔案

3.9--配置監控目标

四、關閉Selinux

4.1 關閉Selinux

4.2 smokeping搭建完成

五、 開始使用smokeping

5.1 smokeping 配置檔案解釋

5.2 報警規則

5.3資料庫

5.4定義顯示規則

5.5配置探針子產品

5.6主從配置

5.7定義監控目标各項參數

5.8獨立監控目标檔案配置

  • 部署監控内容

6.1 主機對比

6.2功能點

6.3原理

6.4整體如何看圖

6.5細節圖:

6.6 實際分析:

6.7 注意項:

七、告警配置

7.1告警配置

一、簡介

選擇機房時,需要知道機房的網絡請況,就需要用到網絡監控軟體smokeping。

1.1--smokeping介紹

smokeping由Perl語言寫成,底層依賴于rrdtool和fping。

主要是監視網絡性能,包括正常的ping,用echoping監控www伺服器性能,監控dns查詢性能和監控ssh性能等。底層時以rrdtool做支援,使用畫圖來表示網絡丢包和延遲。

從監控圖上的延時與丢包能分辨出你機房的網絡是否穩定,是否為多線,是否為BGP機房,到各城市的3個營運商之間的網絡,各是什麼情況,如果出現問題,如何有針對性的解決。而且如果選擇新機房的時候,可以根據smokeping的監控結果來判斷這個機房是否适合。

1.2--組成部分

smokeping整個系統正常運作需要:web伺服器軟體、smokeping主服務、探針,rrdtool。

1.3--Web伺服器軟體

smokeping擁有直覺高效且漂亮的webUI,是以需要借助第三方web服務,預設使用的是apache服務,同時需要啟用cgi子產品。

1.4--Smokeping主服務

smokeping主服務即smokeping工作程序,負責在背景(也可以前台)執行監測任務。

1.5探針

smokeping實際使用的監測工具即探針。預設探針是fping,常用探針例如:

  1. fping 預設探針,使用icmp協定,可并發檢測目标RTT(Round-Trip Time)數值
  2. echoping echo服務檢測,使用tcp/udp協定,預設端口号7
  3. tcpping tcp端口檢測,使用tcp協定監測端口連通性和時延

1.6 --rrdtool

rrdtool(Round Robin Database Tool)即輪詢排程資料庫工具,使用C語言寫成,是一種強大的繪圖引擎,兼有時序資料庫和繪圖兩種功能。rrdtool被許多監控平台所使用,如smokeping、cacti、open-falcon等。

二 安裝配置smokeping

檢視系統版本

[[email protected] ~]# cat /etc/redhat-release

檢視系統資訊

CentOS Linux release 7.2.1511 (Core)

[[email protected] ~]# uname -r

3.10.0-327.el7.x86_64

2.1環境依賴包安裝(輸入指令等待下載下傳安裝完成)

[[email protected] ~]# yum -y install wget vim curl

[[email protected] ~]# yum -y install gcc gcc-c++ popt-devel

2.2RRDtool 1.2.x 或更高版本安裝

[[email protected] ~]# yum install rrdtool perl-rrdtool openssl-devel -y

2.3FPing安裝

[[email protected] ~]# wget http://www.fping.org/dist/fping-4.2.tar.gz

[[email protected] ~]# tar -xzf fping-4.2.tar.gz

[[email protected] ~]# cd fping-4.2

[[email protected] fping-4.2]# ./configure

[[email protected] fping-4.2]# make && make install

2.4EchoPing安裝

[[email protected]~]#wget https://fossies.org/linux/misc/old/echoping-6.0.2.tar.gz

[[email protected] ~] tar xzf echoping-6.0.2.tar.gz

[[email protected] ~]# cd echoping-6.0.2

[[email protected] echoping-6.0.2]# yum install -y popt-devel

[[email protected] echoping-6.0.2]# ./configure

[[email protected] echoping-6.0.2]# make && make install

2.5Webserver安裝

[[email protected] ~]# yum install httpd httpd-devel -y

[[email protected] ~]# yum install mod_fcgid -y

[[email protected] ~]# systemctl enable httpd

[[email protected] ~]# systemctl start httpd

2.6 Perl 5.10.1 或更高版本安裝

[[email protected] ~]# yum install perl-core -y

2.7開始安裝smokeping

[[email protected]~]#  wget https://oss.oetiker.ch/smokeping/pub/smokeping-2.7.3.tar.gz

[[email protected] ~]# tar xzf smokeping-2.7.3.tar.gz

[[email protected] ~]# cd smokeping-2.7.3

[[email protected] smokeping-2.7.3]# ./configure --prefix=/opt/smokeping

** Ready to install Smokeping ******************************

   Settings:

     PERL5LIB = not set

     PERL = /usr/bin/perl

   The Smokeping Makefiles use GNU make functionality.

   Continue installation with

     /usr/bin/gmake install

[[email protected] smokeping-2.7.3]# /usr/bin/gmake install

三、初始化smokeping

3.1建立檔案

[[email protected] ~]# cd /opt/smokeping

#從示例檔案中,可以看到需要建立下面即可目錄

[[email protected] smokeping]# cat etc/config.dist | grep '/opt/smokeping'

imgcache = /opt/smokeping/cache

datadir  = /opt/smokeping/data

piddir  = /opt/smokeping/var

smokemail = /opt/smokeping/etc/smokemail.dist

tmail = /opt/smokeping/etc/tmail.dist

template = /opt/smokeping/etc/basepage.html.dist

secrets=/opt/smokeping/etc/smokeping_secrets.dist

#建立需要的目錄

[[email protected] smokeping]# mkdir data cache var

[[email protected] smokeping]# chown apache:apache cache data var

[[email protected] smokeping]# chmod 777 data cache var

#建立日志檔案

[[email protected] smokeping]# touch /var/log/smokeping.log

[[email protected] smokeping]# chown apache:apache /var/log/smokeping.log

3.2複制配置檔案

[[email protected] smokeping]# pwd

/opt/smokeping

# 檢視有哪些檔案

[[email protected] smokeping]# ls

bin  cache  data  etc  htdocs  lib  share  var

[[email protected] smokeping]# ls etc/

basepage.html.dist  config.dist  examples  smokemail.dist  smokeping_secrets.dist  tmail.dist

[[email protected] smokeping]# ls htdocs/

css  js  smokeping.fcgi.dist

#建立smokeping的配置檔案

[[email protected] smokeping]# cp etc/config.dist etc/config

# 建立smokeping 頁面啟動檔案

[[email protected] smokeping]# cp htdocs/smokeping.fcgi.dist htdocs/smokeping.fcgi

# 裡面的内容如下,通過smokeping_cgi腳本配合config配置檔案啟動

[[email protected] smokeping]# cat htdocs/smokeping.fcgi

#!/bin/sh

exec /opt/smokeping/bin/smokeping_cgi /opt/smokeping/etc/config

# basepage.html 是webUI的模闆頁面,修改此檔案可以對頁面預設的顔色以及其他樣式做定制

[[email protected] smokeping]# cp etc/basepage.html.dist etc/basepage.html

# 用于設定主從驗證

[[email protected]n smokeping]# cp etc/smokeping_secrets.dist etc/smokeping_secrets

3.3修改配置檔案

[[email protected] smokeping]# sed -i 's#cgiurl   = http://some.url/smokeping.cgi#cgiurl   = http://192.168.99.101/smokeping.cgi#g' /opt/smokeping/etc/config

# 圖檔url可以不做修改【不建議修改】

[[email protected] smokeping]# sed -i 's#imgurl   = cache#imgurl   = http://192.168.99.101/cache#g' /opt/smokeping/etc/config

# 預設檢測時間300秒修改60秒(注意IP位址需自行更改)

[[email protected] smokeping]# sed -i 's#step     = 300#step     = 60#g' /opt/smokeping/etc/config

# 預設ping20次,修改為60秒ping60次

[[email protected] smokeping]# sed -i 's#pings    = 20#pings    = 60#g' /opt/smokeping/etc/config

# 修改詳情圖detail顯示高度,預設為200(第二處height)

[[email protected] smokeping]# sed -i 's#height = 200#height = 600#g' /opt/smokeping/etc/config

# 修改概覽圖overview顯示高度,預設為50(第一處height)

[[email protected] smokeping]# sed -i 's#height = 50#height = 200#g' /opt/smokeping/etc/config

# 修改預設模闆頁面

[[email protected] smokeping]# sed -i 's#template = /opt/smokeping/etc/basepage.html.dist#template = /opt/smokeping/etc/basepage.html#g' /opt/smokeping/etc/config

# 修改主從預設密碼驗證

[[email protected] smokeping]#  sed -i 's#secrets=/opt/smokeping/etc/smokeping_secrets.dist#secrets=/opt/smokeping/etc/smokeping_secrets#g' /opt/smokeping/etc/config

# 修改fping預設位置,先找到fping位置:whereis fping | awk '{print $2}',進行一鍵替換

[[email protected] smokeping]# sed -i 's#binary = /usr/sbin/fping#binary = '`whereis fping | awk '{print $2}'`'#g' /opt/smokeping/etc/config

# 檢視config中自己修改後的内容

[[email protected] smokeping]# egrep "cgiurl|imgurl|step|pings|height|template|secrets|binary" etc/config

imgurl   = http://192.168.99.101/cache

cgiurl   = http://192.168.99.101/smokeping.cgi

step     = 60

pings    = 60

# consfn mrhb steps total

template = /opt/smokeping/etc/basepage.html

height = 200

height = 600

binary = /usr/local/sbin/fping

secrets=/opt/smokeping/etc/smokeping_secrets

3.4 繪圖支援顯示中文

# 圖檔浏覽器支援中文顯示,防止中文亂碼

# 中文支援修改第1處,安裝字型

[[email protected] smokeping]# yum -y install wqy-zenhei-fonts.noarch

# 中文支援修改第2處,在presentation添加utf-8中文字元集,解決圖亂碼問題

[[email protected] smokeping]# vim /opt/smokeping/etc/config

# 省略

*** Presentation ***

# 添加這一行

charset = utf-8

# 省略

# 中文支援修改第3處,【實際測試可以不用加】

[[email protected] smokeping]# vim /opt/smokeping/lib/Smokeping/Graphs.pm

# 大概在150行左右

    if ($mode =~ /[anc]/){

        my $val = 0;

        for my $host (@hosts){

            my ($graphret,$xs,$ys) = RRDs::graph

            ("dummy",

            '--start', $tasks[0][1],

            '--end', $tasks[0][2],

            # 添加下面這行

            '--font TITLE:20:"WenQuanYi Zen Hei Mono"',

            "DEF:maxping=$cfg->{General}{datadir}${host}.rrd:median:AVERAGE",

            'PRINT:maxping:MAX:%le' );

            my $ERROR = RRDs::error();

            return "<div>RRDtool did not understand your input: $ERROR.</div>" if $ERROR;

            $val = $graphret->[0] if $val < $graphret->[0];

        }

        $val = 1e-6 if $val =~ /nan/i;

        $max = { $tasks[0][1] => $val * 1.5 };

    }

3.5權限驗證

# 設定網頁的登入使用者名為smokeping,密碼是自己輸入的為smokeping

[[email protected] smokeping]# htpasswd -c /opt/smokeping/htdocs/htpasswd smokeping

New password:

Re-type new password:

Adding password for user smokeping

# 可以看到使用者名和加密後的密碼記錄到該檔案中了

[[email protected] smokeping]# cat /opt/smokeping/htdocs/htpasswd

smokeping:$apr1$ZdYplPrW$8Z6JcIMv2TI6wCMsX32d.0

# 修改密碼權限為root隻讀

[[email protected] smokeping]# chmod 600 /opt/smokeping/etc/smokeping_secrets

[[email protected] smokeping]# cat /opt/smokeping/etc/smokeping_secrets

host1:mysercert

host2:yoursercert

boomer:lkasdf93uhhfdfddf

3.6手動啟動smokeping

[[email protected] smokeping]# bin/smokeping --logfile=/var/log/smokeping.log

WARNING: Hostname 'james.address' does currently not resolve to an IPv6 or IPv4 address

Note: logging to syslog as local0/info.

Daemonizing bin/smokeping ...

#warning不影響接下來的程序

# 可以在日志裡看到啟動成功

[[email protected] smokeping]# cat /var/log/smokeping.log

Wed Apr  1 21:08:52 2020 - Smokeping version 2.007003 successfully launched.

Wed Apr  1 21:08:52 2020 - Not entering multiprocess mode for just a single probe.

Wed Apr  1 21:08:52 2020 - FPing: probing 1 targets with step 60 s and offset 27 s.

# 如果要停止smokeping程序

[[email protected] smokeping]#  ps -aux | grep smoke | grep -v grep

root     101594  0.0  2.8 331248 28212 ?        Ss   21:14   0:00 bin/smokeping [FPing]

[[email protected] smokeping]# ps -aux | grep smoke | grep -v grep | awk '{print $2}'

101594

# 然後使用kill -9 程序号 即可

[[email protected] smokeping]# kill -9 101594

3.7寫入smokeping自啟動檔案

[[email protected] smokeping]# vim /etc/systemd/system/smokeping.service

[Unit]

Description=Smokeping Network performance monitoring

After=syslog.target network.target

[Service]

ExecStart=/opt/smokeping/bin/smokeping --logfile=/var/log/smokeping.log

ExecReload=/bin/kill -HUP $MAINPID

StandardError=syslog

Type=forking

PIDFile=/opt/smokeping/var/smokeping.pid

[Install]

WantedBy=multi-user.target

# 設定完之後重新開機daemon

[[email protected] smokeping]# systemctl daemon-reload

# 結束之前用指令啟動的smokeping,然後用systemctl去啟動

[[email protected] smokeping]# kill -9 `ps -aux | grep smoke | grep -v grep | awk '{print $2}'`

kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]

[[email protected] smokeping]# ps -aux | grep smoke | grep -v grep | awk '{print $2}'

# 啟動smokeping并檢視狀态

[[email protected] smokeping]# systemctl start smokeping

[[email protected] smokeping]# systemctl status smokeping

● smokeping.service - Smokeping Network performance monitoring

   Loaded: loaded (/etc/systemd/system/smokeping.service; disabled; vendor preset: disabled)

   Active: active (running) since Wed 2020-04-01 21:20:27 PDT; 8s ago

  Process: 102007 ExecStart=/opt/smokeping/bin/smokeping --logfile=/var/log/smokeping.log (code=exited, status=0/SUCCESS)

 Main PID: 102076 (/opt/smokeping/)

   CGroup: /system.slice/smokeping.service

           └─102076 /opt/smokeping/bin/smokeping [FPing]

#同時檢視  [[email protected] smokeping]# tail -f /var/log/smokeping.log  日志也會相應的變化

3.8修改Apache配置檔案

[[email protected] smokeping]# vim /etc/httpd/conf/httpd.conf

# 在下面一行之後添加以下内容

DocumentRoot "/var/www/html"

Alias /cache "/opt/smokeping/cache/"

# Alias /cropper "/opt/smokeping/htdocs/cropper/"

Alias /css "/opt/smokeping/htdocs/css/"

Alias /js "/opt/smokeping/htdocs/js/"

Alias /smokeping "/opt/smokeping/htdocs/smokeping.fcgi"    

<Directory "/opt/smokeping">

    AllowOverride None

    Options All

    AddHandler cgi-script .fcgi .cgi

    Order allow,deny

    Allow from all

    # 密碼認證

    AuthName "Smokeping"

    AuthType Basic

    AuthUserFile /opt/smokeping/htdocs/htpasswd

    Require valid-user

    DirectoryIndex smokeping.fcgi

</Directory>

# 設定完成後重新開機Apache服務

[[email protected] smokeping]# systemctl restart httpd

浏覽器通路 http://伺服器IP位址/smokeping 就需要輸入剛才設定的帳密,也就是賬号smokeping  密碼******

3.9配置監控目标

修改配置檔案,在後面注釋掉Test段落,添加自己的節點

# 省略

*** 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.

#+ Test

#menu= Targets

##parents = owner:/Test/James location:/

#++ James

#menu = James

#title =James

#alerts = someloss

#slaves = boomer slave2

3host = james.address

#++ MultiHost

#menu = Multihost

#title = James and James as seen from Boomer

#host = /Test/James /Test/James~boomer

# 添加監測源的IP庫,加入到config中,修改後重新開機smokeping才會生效

# 添加監控節點示例:注意+是第一層,++是第二層,+++ 是第三層

# 注釋掉上面的,添加下面的監控節點

+ NetMonitor

menu = 三大網絡監控

title = 監控統計

++ dianxin

menu = 電信網絡監控

title = 電信網絡監控清單

host = /NetMonitor/dianxin/dianxin-bj

+++ dianxin-bj

menu = 北京電信

title = 北京電信

alerts = someloss

host = 202.96.199.133

+++ dianxin-sc

menu = 四川電信

title = 四川電信

alerts = someloss

host = 61.139.2.69

++ liantong

menu = 聯通網絡監控

title = 聯通網絡監控清單

host = /NetMonitor/liantong/liantong-bj

+++ liantong-bj

menu = 北京聯通

title = 北京聯通

alerts = someloss

host = 61.135.169.121

+++ liantong-gz

menu = 廣東聯通

title = 廣東聯通

alerts = someloss

host = 221.5.88.88

++ yidong

menu = 移動網絡監控

title = 移動網絡監控清單

host = /NetMonitor/yidong/yidong-sc

+++ yidong-sc

menu = 四川移動

title = 四川移動

alerts = someloss

host = 218.201.4.3

+++ yidong-gz

menu = 廣東移動

title = 廣東移動

alerts = someloss

host = 211.136.192.6

注意,在host中需要指定每一組節點資訊例如host = /第一層/第二層/第三層,否則,浏覽器通路指定該名稱時會報錯。添加監控節點後需要重新開機smokeping服務

[[email protected] smokeping]# systemctl restart smokeping

四、關閉Selinux

4.1 關閉Selinux

主要是頁面上通路會提示建立目錄失敗,也就是無權限

Software error:

ERROR: creating  /opt/smokeping/cache/NetMonitor: No such file or directory

解決辦法是關閉Selinux

# 臨時關閉

[[email protected] smokeping]# getenforce

Enforcing

[[email protected] smokeping]# setenforce 0

[[email protected] smokeping]# getenforce

Permissive

# 如果需要永久關閉 vim /etc/sysconfig/selinux ,SELINUX=enforcing 改為 SELINUX=disabled 然後重新開機

4.2 smokeping搭建完成

smokeping到此就搭建完畢了,可以通過浏覽器通路 http://你的IP位址/smokeping 檢視你搭建的smokeping啦!!!

五、 開始使用smokeping

5.1 smokeping 基礎配置資訊

可以更改所有者(owner)、聯系方式(contact)、郵件伺服器(mailhost)、主站cgi位址(cgiurl,此選項對主從架構很重要)、syslog消息類型(syslogfacility)。同時,通過@include字段引用了同目錄下的pathnames。

5.2 報警規則

預設條件下,采用sendmail郵件報警的方式,to 即接收方,from 即發送方。someloss是預定義的一個預設檢測器,檢測器不僅僅是一個門檻值,它可以定義一組RTT從舊到新的變化過程,pattern 的值以一個運算符開始,按照從舊到新的狀态變化,示例中,>0% 表示有丢包,*12* 表示在該組中最大忽略比對12個數值,是以這段定義的意義是:比對一組資料是否滿足丢包次數大于等于3次。

5.3描述rrd資料庫的屬性。

更改資料庫配置檔案無法對現有的rrd起作用,更改資料庫配置檔案後,需要清理現有的rrd緩存以使程式正常工作,預設rrd目錄為:/opt/smokeping/data/,也就是自己配置的data目錄。step 表示基本操作間隔,即smokeping探測目标主機的間隔,預設300秒,pings表示在一次探測動作中,發出探測包的數量,step 和 pings 的值均可以被後續的探針設定所覆寫。此配置也包含資料庫歸檔合并的規則,共4列:合并方法、允許未知數值比例、步進,存儲總行數。每一行表示一條RRA(循環歸檔)存儲規則,預定義了多條AVERAGE、MIN,MAX規則。以AVERAGE為例,第一條AVERAGE,步進1,行數1008,按照預設step=300的條件下,表示5分鐘一條,最大1008條,共存儲3.5天資料,這是以此精度繪圖的最大時間範圍,如果超出範圍,将會繼續比對合适的RRA,比如第二條AVERAGE,存儲的時間範圍是180天,但是精度是1小時。

5.4定義顯示規則

template 即webUI使用的網頁模闆,預設指向/opt/smokeping/etc/basepage.html,模闆中包含各種表單關鍵字。charset 即文檔編碼,預設使用UTF-8

5.5配置探針子產品

smokeping支援很多探針子產品,最常用的就是内聯的fping。

5.6主從配置

在使用主從結構時,需要一個驗證檔案,即secrets指定的值,預設為 /opt/smokeping/etc/smokeping_secrets,對于每一個從節點,還需要指定顯示名稱 display_name,顯示顔色 color(此顔色指的是概述圖上的線色,非細節圖),顔色代碼采用RRGGBB形式。

5.7定義監控目标各項參數

Target是搭建snokeping主要配置的部分。menu定義了條目的菜單名稱,title定義了條目的标題名稱,host 定義了目标主機名,alerts定義了使用的報警器,probe定義了使用的探針,slaves定義了需要使用的從伺服器清單。同樣,子條目的參數會繼承父條目,也可以進行覆寫。

5.8獨立監控目标檔案配置

可以将監控的節點獨立出來,然後使用@include xxx指定這個檔案即可。也就是可以不用在config配置檔案中加上監控IP的配置,直接獨立出來即可。

在config同一目錄下建立一個檔案

六、部署監控内容

6.1 主機對比

Smokeping 網絡性能監控 安裝使用說明

轉存失敗重新上傳取消

Smokeping 網絡性能監控 安裝使用說明

轉存失敗重新上傳取消

6.2功能點:

監控 本機房到xxx網絡 狀态和穩定性,通過圖表展示。

每一個綠色的短橫線都是一個測試回合300秒内向目标裝置發送20個測探測資料包【參考probe項】。綠色畫出的是中間數的位置,一個回合中的其它值都在它附近被以灰階的形式被刻畫;灰階的範圍越小越好,灰色的範圍像是煙霧一樣籠罩在中間數附近。在中間數附近的煙越小越好,說明網絡很平穩。RTT曲線的起伏還顯示了網絡的負載情況。

可應用範圍:

伺服器部署:

監控各大ISP營運商

監控伺服器當地網絡營運商網絡情況

監控遠端考試點的網絡情況(考試點到伺服器)

考試點部署:

考試點發起到伺服器的網絡情況監控

考試點出口到各大ISP供應商網絡狀況

6.3原理:

smokeping繪制每輪測量的資料包中間值(中線),和通過灰色陰影(煙霧)來展示測試時間段的網絡情況。同時用不同的中線顔色區分不同的丢包情況。

通過中線顔色(丢包情況)、和煙霧大小圖形化表明網絡的健康狀況。

對于每輪測量,smokeping發送幾個資料包。然後它對不同的往返時間進行排序并選擇中值(即中間的)。這意味着當有10個時間值時,選擇并繪制值5。其他值在背景中繪制為連續較淺的灰色陰影(煙霧)。

有時會發送測試資料包但不會傳回。這稱為丢包。中線的顔色根據丢失的資料包的數量而變化。

所有這些資訊一起表明了網絡健康狀況。例如,丢包是不應該發生的事情。這可能意味着鍊路中間的裝置過載或某處的路由器配置錯誤。

6.4整體如何看圖:

av md: 平均中位數

average median 可以了解為:ping品質測試的響應速度平均值

av ls:平均損失

average loss可以了解為:ping品質測試的丢包率

av sd:平均标準偏差

在每一輪的多次測量的平均标準偏差

the average standard deviation of the multiple measurements in each round

am/as:平均中位數 和 平均标準差的 比率

the ratio of average median and average standard deviation

線:

直線表示穩定,曲線表示網絡抖動。

根據網絡抖動判斷:

像曲線有明顯抖動,抖動範圍超過10ms的都屬于有網絡不穩定。

更詳細的可以點選進去檢視詳細報告看每天是否都是有規律的網絡抖動。

6.5細節圖:

軸:

Y軸: 表示ping的時間值

X軸: 表示時間軸

看線條顔色曲線:

橫向線條顔色描繪了丢失資料包的數量。圖2為拉長按天來看,就可以看到在一些時間段存在不同顔色(丢包)的情況。

豎向 黑色,綠色 或 藍色 等 線标示的是中間數的值(media rtt);不同顔色代表丢包情況,造成 median rtt 取值的偏差(參考下面 median rtt的解釋)。

看煙霧(灰色塊):

陰影部分表示有抖動20個測試資料包裡有部分時間值高但不丢包。

淺藍表示20個資料包裡有1個丢包。

線條周圍的暗區域顯示了各個探測器之間的變化量。灰階範圍越小越好,起伏太大說明網絡不穩定。

看資料:

RTT (Round-TripTime)(往返時間):值的劇烈波動也表明網絡過載。這在圖上顯示為煙霧; 煙霧越多,波動越大。

sd:standard deviation of the median中間數的标準偏差

am/s:ratio of average median vs standarddeviation平均中值和标準偏差的比值

計量 數值 時間區間 分析

平均 avg rtt 9.1ms 全圖時間7:55 - 10:50 它是每一個測試回合中所有的RTT算術平均值。

最大 max rtt 79.9ms 9:25 - 9:30

最小 min rtt 4.7ms -

sd rtt 16.1ms 全圖時間 标準差中位數

am/s rtt 564.7ms 全圖時間 平均中位數 和 标準差的 比率

median rtt (中間數)

它是中間數并不是平均值。探針在預設的設定下,每 300 秒向目标裝置發送 20 測探測資料包。假如這 20個資料包都傳回的話,它就記錄下了 20 個 rtt,那麼media rtt 就是第十個包的 RTT;如果有5 個包丢失的話,那麼media rtt 就是第八個傳回的包的 rtt 值。

packetloss  (丢包率)

通過ping包進行測試的進行測算。通過loss color進行展示。

loss color:

丢包情況從綠色 安全色 到 紅色 警告色。

如果是綠色的短橫線,說明一個300秒的周期内所有的包都傳回都有RTT的時間記錄下來;如果是藍色的短橫線則說明有2個包丢失。

probe:20 ICMP Echo Pings every 60s

我們設定的是每60秒向目标裝置發送20個探測資料包

6.6 實際分析:

準确性?

同時監控下圖4個不同的IP【(網址)分布在不同的伺服器】,在 2019/08/06 9:20的時間,網絡産生了波動。波動曲線接近相同。而這個波動影響源為本地這個時段的網絡波動。是以不管smokeping監控那個伺服器,從本地這個點發起,到達各個伺服器都受到了影響。

結論: smokeping監控網絡為點對點的ping資料。會受到目前網絡波動影響。

怎麼利用這個特點:

點對點的網絡資料,而我們考試場景基本為 “學校 - 伺服器”點對點。

受到目前網絡健康情況影響。我們無法幹擾營運商的網絡波動,但是本身考試現場可以減少非考試機器的網絡使用幹擾。

延時性?

記錄資料時間和目前時間存在幾分鐘的延遲。是以通過圖表看到的資料為一個趨勢。

可以通過設定probe來改變探測包發送頻率。

6.9 注意項:

如果不出現圖像,連續不出現綠塊,說明smokeping沒有和對方建立連接配接,檢查本地網絡問題。

七、告警配置

7.1告警配置

smokeping告警配置

自定義smokeping告警(郵件+短信)

繼續閱讀