regionserver实例僵住问题分析
问题现象:
-
应用提交超时,发现regionserver实例异常。hbase原生页面这个实例dead,业务连接到这个rs的进程超时8个regionserver实例。
-
D08在18:30分后显示warning,应用提交任务到这个rs节点超时,hbase控制台不显示d08的rs信息了。19:30在页面停止rs实例失败,然后kill进程。18:30统计图等就不刷新了,但是机器里rs进程在。
-
d08节点还有dn,nn,worker实例。
-
查看d08,发现没有最近时间的gc日志。rs日志,18:30-19:30没有日志。没有error和warn。
-
查看指标图,cpu、内存、gc等都未见异常。主机ip为234
-
查看hbase服务日志,18:33分,显示7个rs正常,1个结束。
-
查看5个zk节点日志搜索D08的ip,显示有close socket session 180s超时
-
再次检查rs日志,有大量的flush操作,时间100s+ .还有slow sync在日志信息里
问题分析
- rs节点上flush数据操作有单独的线程进行处理,且默认线程数是1,flush操作不会导致zookeeper和rs进程连接超时。
rs日志显示rs进程在18:30:00以后停止打印日志,zookeeper日志显示rs进程的会话在18:33:15
时出现会话超过180s的过期ÿ