快速业务通道

linux下网络流量监控统计

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-25
最近在做虚拟化迁入评估,其中很重要的一项就是流量的问题.现在部署一个工具和脚本用来统计服务器的网络流量. linux下监控流量的工具有很多,比如ifstat、iftop等. 个人还是喜欢ifstat,它统计起来比较容易. 先安装ifstat. 还是老步骤,先下载ifstat-1.1.tar.gz,然后解压缩. 接着老方法走: ./configure make && make isntall 这样ifstat就按照完成了. 至于这个软件的其他功能这里就不讨论了,只用它的命令行. 例如“ifstat 1 6” 得到如下的数据输出: eth0 eth1
KB/s in KB/s out KB/s in KB/s out
36.04 115.09 0.06 0.23
37.55 159.04 0.12 0.18
26.72 93.16 0.21 0.22
82.34 247.28 0.12 0.18
96.46 243.81 0.06 0.18
124.16 238.18 0.06 0.18 这条命令的意思就是1秒钟输出一次,总共输出6次.输出网卡的流量.这样一目了然. 接下来部署脚本分别用来记录和统计流量情况. 1、vi /home/tools/tongji/network/network_record.sh #/bin/sh
DATE=`date %Y%m%d` /usr/local/bin/ifstat 6 10|sed ''1,2d''|awk ''{print $1"t"$2}''>>/home/tools/tongji/network/$DATE.log 2、 vi /home/tools/tongji/network/network_flow_rate_statistics.sh #!/bin/sh
DATE=`date %Y%m%d`
HOME_DIR=/home/tools/tongji/network/
FILE=$HOME_DIR/$DATE.log
STATIC_RESULT_FILE=$HOME_DIR/statistics_result.$DATE cd /home/tools/tongji/network
awk ''{print $1}'' $FILE >$DATE.in.tmp
awk ''{print $2}'' $FILE >$DATE.out.tmp echo "Everyday network flow rate statistics!!">>$STATIC_RESULT_FILE
echo "--------------------------------------------------------------------------------------">>$STATIC_RESULT_FILE
echo "The Inbound network flow rate statistics:">>$STATIC_RESULT_FILE
awk -f statistics.awk $DATE.in.tmp>>$STATIC_RESULT_FILE
echo "--------------------------------------------------------------------------------------">>$STATIC_RESULT_FILE
echo "The Outbound network flow rate statistics:">>$STATIC_RESULT_FILE
awk -f statistics.awk $DATE.out.tmp>>$STATIC_RESULT_FILE rm -rf $DATE.in.tmp $DATE.out.tmp 3.vi statistics.awk {
if( NR == 1) {
min = $1;
max = $1;
total = $1;
} else {
if( $1 < min ) { min = $1 }
if( $1 > max ) { max = $1 }
total = $1;
} } END {
avg = total * 1.0 / NR
print "Min:"min,"Avg:"avg,"Max:",max,"Num:",NR
} 我的计划任务是这样安排的:
#流量监控统计
*/1 1,5,8,9,13,16,17,20,22 * * * /home/tools/tongji/network/network_record.sh
10 23 * * * /home/tools/tongji/network/network_flow_rate_statistics.sh 这样,每天的23点10分就会生成一份关于每天流量的报告.类似于下面的内容: more statistics_result.20100118
Everyday network flow rate statistics!!
--------------------------------------------------------------------------------------
The Inbound network flow rate statistics:
Min:2.15 Avg:28.2562 Max: 69.08 Num: 610
--------------------------------------------------------------------------------------
The Outbound network flow rate statistics:
Min:7.20 Avg:114.506 Max: 519.37 Num: 610 这样连续几天就可以得出本台服务器的流量大致情况.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号