首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hadoop Cluster datanode网络错误

Hadoop Cluster datanode网络错误
EN

Stack Overflow用户
提问于 2014-06-20 00:28:14
回答 1查看 1.7K关注 0票数 2

我有一个安装了Cloudera Hadoop的小型集群。几天后,我注意到当我运行ifconfig -a命令时,总是出现错误/丢弃/帧。(从高级的角度来看,map reduce作业运行得很流畅,没有错误,从最终用户的角度来看,我想知道如果我做了什么,性能会好很多吗)

所有的节点,包括namenode,都是由相同的redhat kickstart服务器安装和配置的,遵循相同的方法,我想说它们是“相同的”。但是,我没有注意到namenode上有任何网络错误,并且所有datanode上都一致存在网络错误。

例如,我的namenode如下所示:

代码语言:javascript
复制
namenode.datafireball.com | success | rc=0 >>
eth4      Link encap:Ethernet  HWaddr ...  
          inet addr:10.0.188.84  Bcast:10.0.191.255  Mask:...
          inet6 addr: xxxfe56:5632/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:9000  Metric:1
          RX packets:11711470 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6195067 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6548704769 (6.0 GiB)  TX bytes:12093046450 (11.2 GiB)

数据节点:

代码语言:javascript
复制
datanode1.datafireball.com | success | rc=0 >>
eth4      Link encap:Ethernet  HWaddr ...  
          inet addr:10.0.188.87  Bcast:10.0.191.255  Mask:...
          inet6 addr: xxxff24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:9000  Metric:1
          RX packets:27474152 errors:0 dropped:36072 overruns:36072 frame:36072
          TX packets:28905940 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:158509736560 (147.6 GiB)  TX bytes:180857576718 (168.4 GiB)  

我还根据Michael's教程做了一些压力测试,我可以看到错误随着工作的进行而增加。所以这是我第一次设置时留下的一些错误。

仅供参考,我们在一个盒子中有两个NIC卡,前4个端口是我们根本不使用的嵌入式NIC卡03:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet (rev 20),我们使用的是10 is的0e:00.0 Ethernet controller: Mellanox Technologies MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] (rev b0)

这是固件的输出和NIC卡的一些常规信息:

代码语言:javascript
复制
$ ethtool -i eth4
driver: mlx4_en
version: 2.0 (Dec 2011)
firmware-version: 2.8.600
bus-info: 0000:0e:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no

我非常惊讶地发现数据节点会有网络错误,而namenode没有,因为它们具有相同的设置和配置。有人能给我一些指导吗?

EN

回答 1

Stack Overflow用户

发布于 2020-03-17 21:56:27

B.W.先生!

回答你的问题,我的假设基于每个组件的功能,namenode仅处理元数据信息,仅管理块和服务器的位置,请求和响应在网络上使用很少的带宽。datanode负责海量数据,使用整个网络带宽,因为它传输“大数据”,因此丢弃了数据包。

如果启用了巨型帧(MTU = 9000),我建议您评估连接到此服务器网络接口配置的交换机端口。

必须在服务器的网络接口设置中验证相同的配置。

检查其中一个点的配置是否丢失的好方法是使用命令'ifconfig -a‘检查是否有已删除的包,该命令在服务器控制台中执行:

代码语言:javascript
复制
[root@<hostname> ~]# ifconfig -a
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST> mtu 9000
inet Ip.Ad.re.ss netmask net.m.as.k broadcast bro.d.ca.st
ether XX:XX:XX:XX:XX:XX txqueuelen 1000 (Ethernet)
RX packets 522849928 bytes 80049415915 (74.5 GiB)
RX errors 274721 dropped 276064 overruns 0 frame 274721
TX packets 520714273 bytes 72697966414 (67.7 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

在这种情况下,仅在服务器网络接口中配置巨型帧。

你好,卡塞罗。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24311726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档