我将在本地尝试hbase,当我尝试创建一个这样的表时,我确实启动了一个zk服务器:
create 'table', 'col'
错误:
ERROR [main] client.ConnectionManager$HConnectionImplementation: The node /hbase-unsecure is not in ZooKeeper. It should have been written by the master. Check the value configured in 'zookeeper.znode.parent'. There could be a mismatch with the one configured in the master.
和: 我想也许它与 hbase-site.xml 有关 这是:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:////Users/zhaiyi/Documents/apache-hadoop/hbase</value>
</property>
<property>
<name>>hbase.zookeeper.property.dataDir</name>
<value>/Users/zhaiyi/Documents/zookeeper/server1/zookeeper-3.5.1-alpha </value>
</property>
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase-unsecure</value>
</property>
</configuration>
它不起作用,请求帮助!!谢谢!
ps: hbase-1.1.2 &amp;的的hadoop-2.6.3
答案 0 :(得分:1)
当HBase master启动时,它应该在ZooKeeper中创建/hbase-unsecure
znode。 This page有点过时,但描述了HBase如何使用ZK。您应该尝试的第一件事是重新启动hbase master以查看是否有帮助。
HBase提供了一个shell zkcli,可用于运行zookeeper命令。例如,./hbase zkcli -server host:port ls /
应该显示顶层存在哪些znodes。在您的情况下,不清楚您的ZK服务器在哪里,但ZK的默认端口是2181
。应该列出错误引用的/hbase-unsecure
znode以响应该命令。
另请注意,根据供应商的情况,如果hbase集群曾在安全模式下启动,则创建的znode将为/hbase-secure
。