您的位置:首页 > 其它

hregionserver挂死,日志出现Session expired异常排查

2016-09-01 10:35 351 查看


1、使用vmstat 1 命令查看si so两个swap列,确认没有发生交换,1代表每秒打印一次

2、使用jstat -gcutil pid 1000 查看fgct列,确认regionserver没有发生长时间gc暂停,如果gc时间超过zookeeper的连接最大超时时间则会导致hbase挂掉


hbase中和GC相关的参数:


(默认):


export HBASE_OPTS="$HBASE_OPTS -ea -verbose:gc -Xloggc:$HBASE_LOG_DIR/hbase.gc.log -XX:ErrorFile=$HBASE_LOG_DIR/hs_err_pid.log -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode"


修改后:


export HBASE_OPTS="$HBASE_OPTS -verbose:gc -Xloggc:$HBASE_LOG_DIR/hbase.gc.log -XX:ErrorFile=$HBASE_LOG_DIR/hs_err_pid.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
-XX:CMSInitiatingOccupancyFraction=70"


3、使用top命令查看regionserver是否有充足的cpu资源,mapreduce会占用很多cpu,可以减少mapreduce任务数

4、加大zookeeper会话超时时间,编辑hbase-site.xml文件,添加下面的属性

<property>

     <name>zookeeper.session.timeout</name>

     <value>120000</value>

</property>

5、加大zookeeper会话最大超时时间编辑zoo.cfg 提高MaxSessionTimeout=120000,修改后重启zookeeper。

zookeeper的超时时间不要设置太大,在服务挂掉的情况下,会反映很慢。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hbase zookeeper