先说明一下我的情况:
在hbase shell界面,使用命令可以运行,但使用java API方式不行。
hbase、zookeeper配置文件全部都没问题。
JAVA API操作时,一直卡死,连接不上。去看hbase、zookeeper日志没有任何可用的信息。
程序运行不知多久,就报错了(截取一行有用的):
java.net.UnknownHostException: can not resolve hadoop01,16020,164077701361
大概就是无法识别hadoop01,这是啥,是我的节点主机名。
下面是查看办法:
1 zkServer.sh 检查一下zookeeper是否有什么leader、follower 之类的。我的有(没有是zookeeper配置问题)
2 查看zookeeper日志,进入logs目录,我的有一个是hadoop01的,一个是master(以前的主机名)的。
此时我就大概知道问题出现在哪里了
可能
1 .主机名和配置冲突
2 .hbase版本数据冲突(我安装过不同的版本)
解决办法:
1 关闭hbase、zookeeper
2 删除zookeeper 的数据文件(暴力出奇迹),我的在Data里面,注意myid不要删除了(三台节点都删除)
3 重新启动zookeeper、hbase
运行JAVA代码
收工