立即注册 登录
About云-梭伦科技 返回首页

sstutu的个人空间 https://www.aboutyun.com/?70 [收藏] [复制] [分享] [RSS]

日志

hbase full gc问题解决

已有 2146 次阅读2014-9-2 18:51

日志中打印了以下内容:

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日志的,生产环境下可以不用打印日志。

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册

关闭

推荐上一条 /2 下一条