当前位置: 首页 > article >正文

使用vnstat监控网络流量和带宽占用

使用vnstat监控网络流量和带宽占用

简介

vnstat是个Linux下基于shell终端的网络流量监控工具,可帮助用户在不同时间段内监视,记录和查看网络统计信息。它提供了各种网络接口的汇总,允许用户以详细表或命令行统计视图的形式查看小时,每日,每月统计。

安装

sudo apt update
sudo apt install vnstat
sudo systemctl start vnstat
sudo systemctl enable vnstat
systemctl status vnstat

常见问题

  • 安装后要等一段时间累积数据,使用vnstat探查才会有数据,否则会提示eth0: Not enough data available yet
  • vnstat统计的是从系统启动开始的流量数据,如果统计过程中有系统重启,统计数据可能会被重置。

统计查看

# 查看实时流量统计
vnstat -l

# 查看指定网络接口的实时流量统计
vnstat -l -i ens33

# 按小时查看
vnstat -h

# 按天查看
vnstat -d

# 按月查看
vnstat -m

输出项说明

  • rx Receive接收流量
  • tx Transmit发送流量
  • total 总流量,rx + tx
  • avg.rate 平均速率,可以用于评估带宽占用。是基于实际数据传输期间的平均速率,不包括没有流量的时间段。如果基于全天总流量除以天,会算出较低的平均值(相当于流量全天均匀分布),不能体现出峰值数据。

图表生成

vnstati是vnstat的一个附属工具,专门用于生成基于流量统计数据的PNG图表

# vnstati安装
sudo apt update
sudo apt install vnstati
# 生成每日流量图表
sudo vnstati -d -i ens33 -o /path/to/output/daily.png

web界面

vnstat-web是一个简单的PHP脚本,可以与vnstat结合使用,提供Web界面访问流量统计数据。

## vnstat-web安装
wget https://github.com/raspberrymatic/vnstat-web/archive/master.zip
unzip master.zip
mv vnstat-web-master /var/www/html/vnstat-web

配置Web服务器(如Apache或Nginx),确保可以访问/var/www/html/vnstat-web目录。使用浏览器访问http://your-server-ip/vnstat-web

监控采集

可以结合GrafanaPrometheus来收集和可视化vnstat的数据

  • 设置Prometheus定期抓取vnstat数据。
  • 编写Exporter 编写脚本将vnstat数据导出为Prometheus可读格式。
  • 设置Grafana并添加Prometheus数据源。
  • Grafana中创建自定义仪表盘以显示vnstat的流量数据。

http://www.kler.cn/a/506564.html

相关文章:

  • <OS 有关>Ubuntu 24 安装 openssh-server, tailscale+ssh 慢增加
  • 大模型WebUI:Gradio全解11——Chatbots:融合大模型的多模态聊天机器人(3)
  • 文件上传 分片上传
  • HarmonyOS命令行工具
  • 【学习路线】Python自动化运维 详细知识点学习路径(附学习资源)
  • Java List过滤 Stream API filter() 应用
  • Ubuntu升级Linux内核教程
  • 基于Web的宠物医院看诊系统设计与实现(源码+定制+开发)在线预约平台、宠物病历管理、医生诊疗记录、宠物健康数据分析 宠物就诊预约、病历管理与健康分析
  • 【C/C++】#pragma pack(1)与#pragma pack(push,1)的区别
  • Linux基本指令(3)
  • FPGA 串口与HC05蓝牙模块通信
  • 【嵌入式——Linux】nfs服务器环境搭建
  • 深入解析:Python机器学习在气象领域中的应用实例——GFS数值模式的风速预报订正。数据处理、科学计算、数学建模、数据挖掘和数据可视化
  • llama.cpp编译和运行 API调用
  • 发布工具包 到npm 服务
  • FFmpeg 元数据
  • 【C++篇】红黑树的实现
  • 自定义注解使用AspectJ切面和SpringBoot的Even事件优雅记录业务接口及第三方接口调用日志实现思路
  • @NotNull、@NotBlank 和 @NotEmpty 注解的区别
  • 工业过程自动化技术:控制系统、传感器、互联网、AI通信