hbase full gc问题解决

日志中打印了以下内容:

2014-01-30 20:53:19,137 WARN org.apache.hadoop.hbase.util.Sleeper: We slept 49779ms instead of 10000ms, this is likely due to a long garbage collecting pause and it's usually bad, see http://hbase.apache.org/book.html#trouble.rs.runtime.zkexpired

...

2014-01-30 20:53:19,170 INFO org.apache.zookeeper.ClientCnxn: Client session timed out, have not heard from server in 49014ms for sessionid 0x244cdbfa70019d4, closing socket connection and attempting reconnect

...

2014-01-30 20:53:23,685 FATAL org.apache.hadoop.hbase.regionserver.HRegionServer: ABORTING region server Processor101,62110,1476920820701: Unhandled exception: org.apache.hadoop.hbase.YouAreDeadException: Server REPORT rejected; currently processing Processor101,62110,1476920820701 as dead server
org.apache.hadoop.hbase.YouAreDeadException: org.apache.hadoop.hbase.YouAreDeadException: Server REPORT rejected; currently processing Processor101,62110,1476920820701 as dead server


第一条日志,说明了HBase发生了full gc,造成region server睡眠了49秒,其后导致了region server与zookeeper连接中断,从而被zookeeper认为已经离线,触发了org.apache.hadoop.hbase.YouAreDeadException异常,造成了region server下线

优化的方法是在hbase-env.sh中加入配置项:

export HBASE_REGIONSERVER_OPTS="-Xmx16g -Xms16g -Xmn128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:$HBASE_HOME/logs/gc-$(hostname)-hbase.log"

其中,-Xmx16g -Xms16g的数值按照hbase-env.sh中的由export HBASE_HEAPSIZE=来配置,

-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:$HBASE_HOME/logs/gc-$(hostname)-hbase.log”是用来配置gc日志的,生产环境下可以不用打印日志。


可以参考:

http://hbase.apache.org/book.html#trouble.rs.runtime.zkexpired

http://wiki.apache.org/hadoop/PerformanceTuning

http://www.cnblogs.com/cenyuhai/p/3235101.html

http://blog.csdn.net/sunmenggmail/article/details/10172631


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值