HBase zookeeper.RecoverableZooKeeper: Unable to create ZooKeeper Connection 解决方法
作者:
dave
Hbase 启动后十几秒进程异常退出,日志如下:
[hadoop@Slave1 logs]$ pwd
/home/hadoop/hbase/logs
[hadoop@Slave1 logs]$ tail -500 hbase-hadoop-master-Slave1.log^C
2019-03-04 00:44:45,899 INFO [main] zookeeper.ZooKeeper: Initiating client connection, connectString= Master:2181, Slave1:2181, Slave2:2181 sessionTimeout=90000 watcher=org.apache.hadoop.hbase.zookeeper.PendingWatcher@acf859d
2019-03-04 00:44:45,899 WARN [main] zookeeper.RecoverableZooKeeper: Unable to create ZooKeeper Connection
java.net.UnknownHostException: Master
at java.net.InetAddress.getAllByName0(InetAddress.java:1280)
at java.net.InetAddress.getAllByName(InetAddress.java:1192)
at java.net.InetAddress.getAllByName(InetAddress.java:1126)
at org.apache.zookeeper.client.StaticHostProvider.<init>(StaticHostProvider.java:61)
at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:445)
at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:380)
at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.checkZk(RecoverableZooKeeper.java:131)
at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.createNonSequential(RecoverableZooKeeper.java:549)
at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.create(RecoverableZooKeeper.java:528)
at org.apache.hadoop.hbase.zookeeper.ZKUtil.createWithParents(ZKUtil.java:1199)
at org.apache.hadoop.hbase.zookeeper.ZKUtil.createWithParents(ZKUtil.java:1177)
at org.apache.hadoop.hbase.zookeeper.ZKWatcher.createBaseZNodes(ZKWatcher.java:183)
at org.apache.hadoop.hbase.zookeeper.ZKWatcher.<init>(ZKWatcher.java:167)
at org.apache.hadoop.hbase.zookeeper.ZKWatcher.<init>(ZKWatcher.java:119)
at org.apache.hadoop.hbase.regionserver.HRegionServer.<init>(HRegionServer.java:623)
at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:489)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:3093)
at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:236)
at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:140)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:149)
at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:3111)
查了很长时间,还是配置文件出了问题:
2019-03-04 00:44:45,899 INFO [main] zookeeper.ZooKeeper: Initiating client connection, connectString= Master:2181, Slave1:2181, Slave2:2181 sessionTimeout=90000 watcher=org.apache.hadoop.hbase.zookeeper.PendingWatcher@acf859d
2019-03-04 00:44:45,899 WARN [main] zookeeper.RecoverableZooKeeper: Unable to create ZooKeeper Connection
java.net.UnknownHostException: Master
注意这里提示未知的主机名: Master。 实际上是这里多了一个空格导致的。
修改配置文件:
[hadoop@Master conf]$ cat hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://Master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>Master,Slave1,Slave2</value>
</property>
</configuration>
将hbase.zookeeper.quorum参数中值前面的空格去掉后HBase正常启动。
版权声明:本文为博主原创文章,未经博主允许不得转载。
- 上一篇:HBase 系统架构详解
- 下一篇:HBase 执行关闭命令长时间等待的解决方法