集群扩容之后新节点HRegionServer启动失败
问题现象
- 集群扩容完成之后,新节点的HRegionserver启动失败,一直处于异常状态,无法正常提供服务。
- 登录故障RegionServer所在节点,jps查看RegionServer进程没有启动,在Manager上手动重启故障的RegionServer实例失败,查看对应RegionServer节点/var/log/Bigdata/hbase/rs/hbase-omm-regionserver-node-ana-coreqRvt.log日志,有报错信息“ClassNotFound:org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec”。
- Manager上,可以看到RegionServer有如下自定义配置:
原因分析
用户配置了Phoenix的索引功能,由于新节点没有Phoenix对应的jar包,导致找不到类,启动失败。
处理步骤
- 登录到正常的RegionServer节点,执行以下命令。
grep -Rn ‘org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec’ /opt/Bigdata/MRS_Current/1_16_RegionServer/
查询出/opt/Bigdata/MRS_Current/1_16_RegionServer/install/hbase/lib目录下面有两个Phoenix包(phoenix-4.14.1-server.jar和phoenix-core-4.14.1.jar)包含这个类。
- 使用scp命令将上述两个包拷贝到异常RegionServer节点上相同目录下,重启故障的RegionServer,恢复正常。