Hadoop:错误 BlockSender.sendChunks() 异常

Posted

技术标签:

【中文标题】Hadoop:错误 BlockSender.sendChunks() 异常【英文标题】:Hadoop: ERROR BlockSender.sendChunks() exception 【发布时间】:2017-05-15 16:12:32 【问题描述】:

我有一个使用 Hadoop 的集群(一个用作 namenode 和 datanode 的 master,以及两个 slave)。我在日志文件中看到了这些错误消息:

hadoop-hduser-datanode-master.log 文件:

2017-05-15 13:02:55,303 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: BlockSender.sendChunks() exception: 
java.io.IOException: Tubería rota
at sun.nio.ch.FileChannelImpl.transferTo0(Native Method)
at sun.nio.ch.FileChannelImpl.transferToDirectlyInternal(FileChannelImpl.java:428)
at sun.nio.ch.FileChannelImpl.transferToDirectly(FileChannelImpl.java:493)
at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:608)
at org.apache.hadoop.net.SocketOutputStream.transferToFully(SocketOutputStream.java:223)
at org.apache.hadoop.hdfs.server.datanode.BlockSender.sendPacket(BlockSender.java:570)
at org.apache.hadoop.hdfs.server.datanode.BlockSender.sendBlock(BlockSender.java:739)
at org.apache.hadoop.hdfs.server.datanode.DataXceiver.readBlock(DataXceiver.java:527)
at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opReadBlock(Receiver.java:116)
at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:71)
at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:239)
at java.lang.Thread.run(Thread.java:748)

这仅发生在主节点中,经过一段时间的不活动。十五分钟前,我成功运行了一个 wordcount 示例。

每个节点的操作系统都是 Ubuntu 16.04。集群是使用 VirtualBox 创建的。

你能帮帮我吗?

【问题讨论】:

【参考方案1】:

我点击了这个链接: https://hortonworks.com/blog/how-to-plan-and-configure-yarn-in-hdp-2-0/ 配置一些关于内存的参数,我的问题就解决了!

注意:在某些帖子中,我读到此错误可能是由于磁盘空间不足(在我的情况下不是),其他原因是 SO 的版本(他们建议将 Ubuntu 16.04 降级到 14.04)。

【讨论】:

以上是关于Hadoop:错误 BlockSender.sendChunks() 异常的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop:错误 BlockSender.sendChunks() 异常

Hadoop 大数据错误收集

hadoop中的JAVA路径错误

hadoop中某些数据节点的IP映射错误

hadoop在往HDFS中写数据的时候报错,错误信息如下,请大神指导

hadoop无法启动