alluxio网络流量异常分析【转】
2016-12-16 12:02
761 查看
1. 介绍
2. 准备工作
2.1 tcpdump
2.2 winshark
2.3 安装iftop
2.4 alluxio网络通信相关的端口
3.iftop 锁定消耗流量最大的端口
4. dump数据
5. winshark中加载看看
确定流量消耗较大的端口:使用iftop和netstat确定流量消耗较大的进程和端口
抓包:使用tcpdump抓取流量较大端口的包
分析:使用winshark分析包内数据
用法:
tcpdump -i 网络设备名 [可选的其他额外选项]
通过几个例子来了解tcpdump的主要用法:
winshark官方下载
关于iftop的安装使用可以参考我的另外一篇文章:iftop工具监控网络流量
alluxio相关的端口信息如下所示,主要是数据端口和非数据端口(元数据、心跳信息等)。
然后使用iftop工具分别监控master的19998端口和worker的29999端口和29998端口。
进入iftop可以按下l然后输入端口号来过滤结果。但是iftop最多统计40秒的值,所以截图不太方便,所以这里就只公布结果和部分截图:
无论是否进行预热,master 19998端口上的网络IO都十分小(小于50MB),对性能影响可忽略
无论是否进行数据预热,在worker节点的29999端口上会存在大量的网络IO,如下图所示。但是如果数据没有进行数据预热,29999端口上的网络IO会更大。例如10G数据进行统计行数,不进行数据预热,会有十几G的网络IO,而预热完整后,有2G不到的数据。
虽然MR JOB运行后显示map任务的data local已经全部做到了,但是仍然有约1.5G左右的网络IO。
我们使用tcpdump抓取下。
使用命令
最新最早最热
2. 准备工作
2.1 tcpdump
2.2 winshark
2.3 安装iftop
2.4 alluxio网络通信相关的端口
3.iftop 锁定消耗流量最大的端口
4. dump数据
5. winshark中加载看看
1. 介绍
最近在使用alluxio的时候发现了网络流量比较大。我们将MR程序运行在alluxio上,发现即使做好了mapper的data local仍然会存在比较多的异常流量。这部分网络IO会对性能造成比较大的影响。我将按照以下步骤来分析这个alluxio异常网络流量的问题。这个步骤也比较具备通用性。确定流量消耗较大的端口:使用iftop和netstat确定流量消耗较大的进程和端口
抓包:使用tcpdump抓取流量较大端口的包
分析:使用winshark分析包内数据
2. 准备工作
2.1 tcpdump
在运行alluxio的各个节点上安装tcpdump。yum install tcpdump
用法:
tcpdump -i 网络设备名 [可选的其他额外选项]
通过几个例子来了解tcpdump的主要用法:
#1. 获取10.8.12.16和10.8.12.17或者10.8.12.18在非80端口上通信的tcp包信息,并且以详细方式显示,再写入当前目录下的net.dump文件。注意host port信息放在最后 sudo tcpdump -vv -w net.dump host 10.8.12.16 and \(10.8.12.17 or 10.8.12.18\) and port ! 80 and tcp #2. src 和dsc用法,可以用在hostname或者端口前面。下面例子表示只抓取10.8.12.16为源,目标是80端口的数据包 tcpdump src host 10.8.12.16 and dst port 80
2.2 winshark
服务器上只有终端,我们在本地的win环境下安装下winshark.winshark官方下载
2.3 安装iftop
iftop工具可以帮助我们定位哪些端口上的流量比较大,这样我们使用tcpdump的时候就更加的有针对性了。关于iftop的安装使用可以参考我的另外一篇文章:iftop工具监控网络流量
2.4 alluxio网络通信相关的端口
alluxio是主从结构的,我们就监控下master 和worker之间通信的包信息即可。alluxio相关的端口信息如下所示,主要是数据端口和非数据端口(元数据、心跳信息等)。
# 数据端口 alluxio.worker.data.port=29999 # worker非数据端口 alluxio.worker.port=29998 # master端口 alluxio.master.port=19998
3.iftop 锁定消耗流量最大的端口
我们在alluxio上运行一个MR程序,统计一个10G文件的行数。为了能准确定位真正的异常流量在哪,我们首先进行了多次实验来做预热,保证该10G文件在整个alluxio中能有足够的冗余块,保证mapper的数据本地化。然后使用iftop工具分别监控master的19998端口和worker的29999端口和29998端口。
进入iftop可以按下l然后输入端口号来过滤结果。但是iftop最多统计40秒的值,所以截图不太方便,所以这里就只公布结果和部分截图:
无论是否进行预热,master 19998端口上的网络IO都十分小(小于50MB),对性能影响可忽略
无论是否进行数据预热,在worker节点的29999端口上会存在大量的网络IO,如下图所示。但是如果数据没有进行数据预热,29999端口上的网络IO会更大。例如10G数据进行统计行数,不进行数据预热,会有十几G的网络IO,而预热完整后,有2G不到的数据。
虽然MR JOB运行后显示map任务的data local已经全部做到了,但是仍然有约1.5G左右的网络IO。
4. dump数据
现在首先初步确定29999这个alluxio的数据端口是有流量异常的。根据alluxio上面的显示,块信息还没有在每个节点上都保留完整的一份。所以初步猜想可能还是在进行数据块的复制。我们使用tcpdump抓取下。
使用命令
# 监控29999端口的流量,每个包64字节字节 sudo tcpdump -vv -w net.dump port 29999 # 监控所有经过网卡的包 sudo tcpdump -vv -w net.dump
5. winshark中加载看看
可以端口过滤看看,发现确实主要都是29999端口上的数据通信。最新最早最热
相关文章推荐
- 基于流数据挖掘的网络流量异常检测及分析研究
- 使用NetFlow分析互联网网络异常流量
- 异常流量网络行为分析
- 5-Spark高级数据分析-第五章 基于K均值聚类的网络流量异常检测
- spark高级数据分析实战--网络流量异常检测1
- spark高级数据分析---网络流量异常检测(升级实战)
- 使用NetFlow分析互联网网络异常流量
- 5-Spark高级数据分析-第五章 基于K均值聚类的网络流量异常检测
- 网络异常流量分析1
- 网络流量分析
- 校园网络流量监控和流量分析
- 借助Sniffer分析网络流量
- 分析蠕虫及压缩的网络流量
- 借助Sniffer分析网络流量
- 思科网络流量分析器:网络行为分析与拒绝服务攻击(DDOS)
- 交换网络内的流量异常转发问题
- TruthTracerUtilities-SysWatcher进程/模块管理/网络流量/数据包捕获、分析工具集V0.11
- 企业为什么需要网络流量分析
- 异常流量分析与响应技术解析
- FreeBSD-4.7下安装网络流量统计分析工具MRTG