linux笔记—docker运行smokeping,搭建三网监控.

栏目: 服务器 · 发布时间: 5年前

导语

  • 常常涉及到服务器的网络质量等问题,通常是移动连不上,电信/联通能连上,某个地区甚至某个县图片不加载,DNS/HTTP劫持,UA带就带ie的劫持,,错综复杂的网络环境,,最后锅全甩在机房.非常需要三网的自动化监控报警.
  • smockeping 自然是驾轻就熟..就是安装太繁琐,,直到遇到了 docker .

  • 本文的目标就是搭建一个简单单点的三网监控.

smockeping

  • Smokeping是一款用于网络性能监测的开源监控软件,主要用于对IDC的网络状况,网络质量,稳定性等做检测,带宽占用要靠cacti或zabbix了.
  • DockerHub 上有不少打包好的镜像,非常方便部署.当然肯定有缺点,基本只能单点用了,折腾 master / slave 需要一些工作量,还未涉及到.

安装

  • 这里用到的是下载最多的 linuxserver/smokeping 这个镜像.
  • 如果上面地址打不开,可以到对应 Github .
  • 官方的说明比较详细.

  • 安装实际上就是拉取镜像

    docker pull linuxserver/smokeping
    
  • 试运行,这个镜像中有一组默认的配置.先试运行.

    • 命令

      docker  run \
      --name=smokepings \
      --rm \
      -e TZ=Asia/Shanghai \
      -p 80:80 \
      linuxserver/smokeping
      
    • 容器运行几分钟后,查看效果,

      linux笔记—docker运行smokeping,搭建三网监控.
    • 基础配置都是国外的主流网站,没有监控结果.

配置

  • 这个镜像中的配置文件都在 /config ,数据在 /data .这里拷贝出来,挂载本地文件夹形式,实现数据的持久化.

    • 命令

      mkdir -p /data/smokeping
      docker cp smokeping:/data/ /data/smokeping/
      docker cp smokeping:/config/ /data/smokeping/
      docker stop smokeping # 停止容器
      
    • 进入本地 /smokeping/config/ 开始修改配置文件.

  • 我们主要需要修改的是 Database , Presentation , Targets .

    • Database 主要是监控的频率和探针数量.

      • 找到

        step     = 300
        pings    = 20
        
      • 修改为,默认一次的监控周期改为1分钟,探针数量20不变.

        step     = 60
          pings    = 20
        
    • Presentation 主要是 smokeping 的图表和第一栏的设置.需要改动内容不多, 不过为了看着方便,这里汉化了一部分内容. # 号后为博主加的注释.

      • 文件
        template = /etc/smokeping/basepage.html
        charset  = utf-8 #支持utf-8所以可以汉化一部分
        
        + charts # 以下为第一栏内容,纯图方便,只个人看着懂意思.
        
        menu = 排行榜 
        title = 排行榜
        
        ++ stddev
        sorter = StdDev(entries=>4)
        title = 综合指数排行
        menu = 综合指数
        format = 综合指数 %f
        
        ++ max
        sorter = Max(entries=>5)
        title = 最大延迟
        menu = 最大延迟
        format = 最大延迟时间 %f 秒
        
        ++ loss
        sorter = Loss(entries=>5)
        title = 丢包率
        menu = 丢包率
        format = 丢包 %f
        
        ++ median
        sorter = Median(entries=>5)
        title = 中间数据包延迟
        menu = 中间数据包延迟
        format = 中间数据包延迟 RTT %f 秒
        
        + overview
        
        width = 600
        height = 50
        range = 10h
        
        + detail
        
        width = 600
        height = 200
        unison_tolerance = 2
        # 图表横坐标,这里改为 1小时,1天,10天,360天,更符合习惯.
        "Last 1 Hours"    1h 
        "Last 24 Hours"   24h
        "Last 10 Days"    10d
        "Last 360 Days"   360d
        
        #+ hierarchies
        #++ owner
        #title = Host Owner
        #++ location
        #title = Location
        
    • Targets 内则是监控的主体,主要工作量在这里了,这里是监控本地到各个运营商当地 DNS 的通路,当地 DNS 一般很少变动,因此具有参考意义.但是 N多的DNS 开始过滤外地的请求,连外地的 icmp 都直接不相应,好在最后收集了全了现在还能用的.

      • 附录: 各地DNS地址,多换几个试试.

        https://blog.csdn.net/huangbaokang/article/details/80419620

      • Targets 基础的格式还是比较好懂的.说明在注释了.

        *** Targets ***
        probe = FPing # 无需修改
              
        menu = Top
        title = Network Latency Grapher
        remark = Welcome to the SmokePing website of WORKS Company. \
                 Here you will learn all about the latency of our       network.
        
        + Other # 第一层级
        menu = 国内线路
        title =  国内线路
        ++ dianxin #电信
        menu = 电信网络监控
        title = China Telecom
        host = /Other/dianxin/dianxin-bj /Other/dianxin/dianxin-sh /      Other/dianxin/dianxin-gz
        +++ dianxin-bj 
        menu = Telecom BeiJing 
        title = Telecom BeiJing 
        alerts = someloss 
        host = 202.96.199.133 
        
        +++ dianxin-sh 
        menu = Telecom ShangHai 
        title = Telecom ShangHai 
        alerts = someloss 
        host = 202.96.209.133
        
        +++ dianxin-gz 
        menu = Telecom GuangZhou
        title = Telecom GuangZhou
        alerts = someloss 
        host = 218.20.227.1
        
        ++ liantong #联通
        menu = 联通网络监控 
        title = China Unicom 
        host = /Other/liantong/liantong-bj /Other/liantong/liantong-sh       /Other/liantong/liantong-gz 
        
        +++ liantong-bj 
        menu = Unicom BeiJing
        title = Unicom BeiJing
        alerts = someloss 
        host = 61.135.169.121 
        
        +++ liantong-sh 
        menu = Unicom ShangHai
        title = Unicom ShangHai
        alerts = someloss 
        host = 203.95.1.1 
        
        +++ liantong-gz 
        menu = Unicom GuangZhou
        title = Unicom GuangZhou
        alerts = someloss 
        host = 210.21.4.130 
        
        ++ yidong # 移动
        menu = 移动网络监控 
        title = China Mobile 
        host = /Other/yidong/yidong-bj    /Other/yidong/yidong-sh /Other/yidong/      yidong-gz  
        
        +++ yidong-bj 
        menu = Mobile BeiJing
        title = Mobile BeiJing
        alerts = someloss 
        host = 221.130.33.52
        
        +++ yidong-sh 
        menu = Mobile ShangHai
        title = Mobile ShangHai
        alerts = someloss 
        host = 58.34.8.36
        
        +++ yidong-gz 
        menu = Mobile GuangDong
        title = Mobile GuangDong
        alerts = someloss
        host = 211.136.192.6
        
  • 保存配置文件.

运行

  • 启动容器,大幅度更改了配置文件后,最好清除 /data 下数据.

    挂载 /config /data 到容器,启动.

    docker run \
      --name smokeping \
      -d \
      -p 80:80 \
      -e TZ=Asia/Shanghai \
      -v /data/smokeping/data:/data \
      -v /data/smokeping/config:/config \
      linuxserver/smokeping
    
  • 效果

    linux笔记—docker运行smokeping,搭建三网监控. linux笔记—docker运行smokeping,搭建三网监控.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Data Structures and Algorithms with JavaScript

Data Structures and Algorithms with JavaScript

Michael McMillan / O'Reilly Media / 2014-2-22 / USD 28.51

If you’re using JavaScript on the server-side, you need to implement classic data structures that conventional object-oriented programs (such as C# and Java) provide. This practical book shows you how......一起来看看 《Data Structures and Algorithms with JavaScript》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具