控制器发生异常 eofexception_0599-5.14.4-HDFS出现大量BrokenPipe异常处理

本文详细记录了HDFS DataNode节点出现大量'Broken Pipe'异常的故障分析和处理过程。从平台层面、网络层面、系统层面逐一排查,包括NameNode GC问题、内存使用、TCP内核参数、网络配置、系统语言环境等。最终,通过将系统语言环境更改为英文解决了问题。
摘要由CSDN通过智能技术生成

作者:李继武&陶攀龙

1.故障描述

在HBase和Hive集群中HDFS的DataNode节点均有大量的异常日志,详细日志信息如下:

2019-02-25 17:02:02,153 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: BlockSender.sendChunks() exception: java.io.IOException: 断开的管道 at sun.nio.ch.FileChannelImpl.transferTo0(Native Method) at sun.nio.ch.FileChannelImpl.transferToDirectlyInternal(FileChannelImpl.java:416) at sun.nio.ch.FileChannelImpl.transferToDirectly(FileChannelImpl.java:481) at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:596) at org.apache.hadoop.net.SocketOutputStream.transferToFully(SocketOutputStream.java:223)...
922f8ed0d0983b427cf0868bbc9675ec.png

主要以Hive集群分析为主,该集群中有hive01和hive02两个节点即是管理节点也是数据节点,这两个节点上出现了大量的“Broken Pipe”异常日志

9087bfe9af9c070b05a08494946b1bbd.png
64c38be532a09f124e32c0d838ee34b6.png

2.故障分析阶段(平台层面)

通过提供给Cloudera售后的HDFS日志、lsof日志以及其它搜集的日志,在初步分析后反应出来的现象HBase出现性能问题是由于底层的HDFS不稳定导致。在HDFS的DataNode节点有大量的“Broken Pipe”异常,由于大量的Broken Pipe导致DataNode读写Block时重试从而导致基于HDFS的HBase等应用会出现性能下降的问题。

售后提出协调系统管理员分析系统层面的问题,在OS层面与旧集群未做任何变动,系统的参数及Hadoop的基本运行环境均与旧集群一致。

1. 通过分析Hive集群发现 NameNode GC频繁且耗时,如下图所示

a4bb4c75a2d12a9cc0a2413ebd2edbc7.png

将NameNode的Java heap大小从6GB调整至10GB

bff03f99941e7865c8310cf8c8116860.png

增加NameNode的Heap大小后通过jstat命令和CM监控界面进行监控,看到NameNode的GC得到缓解

sudo -u hdfs /usr/java/jdk1.7.0_80/bin/jstat -gcutil 180080 10
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值