SmokePing 是一款开源的网络延迟和稳定性监测工具,由 Tobi Oetiker 开发(他也是 RRDtool 和 MRTG 的作者)。它主要用于持续监测网络延迟、丢包率和抖动情况,并以直观的图形化方式展示数据。
主要功能
- 延迟监测(Latency Measurement)
- 使用 ICMP (Ping)、TCP、DNS、HTTP 等协议测试目标主机的响应时间。
- 支持 IPv4 和 IPv6。
- 丢包检测(Packet Loss Detection)
- 通过连续发送探测包统计丢包率。
- 抖动分析(Jitter Analysis)
- 测量延迟的变化(抖动),对 VoIP、视频会议等实时应用尤为重要。
- 可视化图表
- 使用 RRDtool 存储数据并生成时间序列图表,直观展示历史趋势。
- 图表颜色区分不同延迟程度(如绿色=正常,红色=高延迟)。
- 多目标监测
- 可同时监测多个主机或网络路径,适合企业或 ISP 监控关键链路。
- 告警功能
- 支持配置阈值触发告警(通过邮件或其他方式通知)。
核心组件
- SmokePing Daemon:主服务进程,负责调度探测任务和收集数据。
- RRDtool:存储和渲染时间序列数据。
- FPing/echoping:底层工具用于发送 ICMP/TCP 探测包。
- Web 界面:通过 CGI 或内置 HTTP 服务器提供可视化图表。
官网
https://hub.docker.com/r/linuxserver/smokeping
smokeping的docker版部署
先把smokeping的docker镜像拉下来。
docker pull linuxserver/smokeping
创建两个目录,一个存放smokeping的数据文件,一个存放smokeping的配置文件
mkdir -p /data/smokeping/data mkdir -p /data/smokeping/config
启动smokeping镜像,把监控端口,数据目录和配置目录都映射到母机上。
docker run --name smokeping -d -p 80:80 -e TZ=Asia/Shanghai -v /data/smokeping/data:/data -v /data/smokeping/config:/config linuxserver/smokeping
设计一个监控目标IP的配置文件
cat > config <<EOF DianXian_Gate 192.168.10.1 YiDong_Gate 192.168.10.2 AD_Server 192.168.10.224 App_Server 192.168.10.222 RC_Site 159.51.127.130 EOF
生成具有一定格式的配置内容
cat config | while read LINE ; do CL01=`echo ${LINE} | awk '{print "++ "$1}'` #++ Server_Name CL02=`echo ${LINE} | awk '{print "menu = "$1}'` #menu = _Name CL03=`echo ${LINE} | awk '{print "title = "$1" "$2}'` #title = Server_IP CL04=`echo ${LINE} | awk '{print "host = "$2}'` #host = IP echo -e "$CL01\n$CL02\n$CL03\n$CL04\n" #生成配置 done
把生成的内容,拷贝到/data/smokeping/config/Targets目录中
再重启smokeping
docker restart smokeping
浏览器访问
声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。