我正在使用开源的Zookeeper 3.4.13和HBase 2.1.3的开源。我自己安装了它们,而Zookeeper仲裁由三台服务器组成。这些服务器之一也具有HBase。我正在尝试使用HBase Shell从此服务器在HBase中创建表。我希望“创建”命令在HBase Shell上一次起作用。
从Zookeeper CLI(通过运行sudo bash zkCli.sh输入),我运行了以下命令来创建Zookeeper节点:
create /Fine1Znode/master "Goodthing1"
我从HBase shell运行以下命令:
create "foobar", "columnname"
这是我得到的结果:
错误:协议消息终端组标签与预期标签不匹配。
然后我检查了我的hbase-site.xml文件,但它具有以下内容:
<configuration>
<property>
<name>hbase.tmp.dir</name>
<value>/bin/hbase/tmp</value>
<description>Temporary directory on the local filesystem.</description>
</property>
<property>
<name>zookeeper.znode.parent</name>
<value>/Fine1Znode</value>
</property>
</configuration>
是否存在在Zookeeper中创建节点的特殊方法,还是配置hbase-site.xml文件以使HBase“创建”命令起作用的特殊方法?我看不出自己的所作所为有什么问题,但是我是新来的。
如果hbase-site.xml文件中需要hdfs的XML标记,我如何知道端口正确?我在端口8131上看到了活动。我尝试将“ hdfs:///”构造函数与“ localhost:8131”一起使用。带有HDFS的标签似乎对该问题没有任何影响。因此,我删除了这些行。