1

我是 HBase 的新手。我最近开始使用 HBase,在我的 Ubuntu 服务器 Standalone HBase 中可以很好地使用 Zookeeper。但是,当我尝试使用 Pseudo-Distributed Local 时,它有一些我不明白的奇怪之处。我已经根据以下配置了 HBase conf/hbase-site.xml :

<name>hbase.cluster.distributed</name>
<value>true</value>

<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>

<name>hbase.zookeeper.property.dataDir</name>
<value>/home/username/zookeeper/new</value>

我已经为伪分布式操作的单节点集群设置了 HDFS。最棘手的部分是当我运行 HBase、ZooKeeper 和 Hadoop(HDFS) 并且“jps”命令显示以下信息时。

8998 H区域服务器

8066 资源管理器

8229 节点管理器

7456 名称节点

7852 次要名称节点

7045 QuorumPeerMain

9269 日元

8815 H大师

此外,在执行“hbase shell”命令后,它会询问 hbase 操作。hbase(主):001:0>

但是,当我输入“列表”或创建表命令时,它给出

错误:无法从 ZooKeeper 获取主地址;znode 数据 == null

从 hbase(main):001:0> 退出后,我看到了

8998 H区域服务器

8066 资源管理器

8229 节点管理器

7456 名称节点

9656 日元

7852 次要名称节点

7045 QuorumPeerMain

在这里, 8815 HMaster消失了。

如果有人帮助找到解决此问题的方法,我将不胜感激。

4

2 回答 2

1

现在它可以使用以下配置文件正常工作。主要问题是端口号。

<property>
    <name>hbase.zookeeper.quorum</name>
    <value>127.0.0.1</value>
</property>
<property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2182</value>
</property>
<property>
    <name>hbase.master</name>
    <value>localhost:60010</value>
</property>
于 2015-07-28T18:15:39.390 回答
1

在您的 hbase-env.sh 文件中搜索HBASE_MANAGES_ZK并确保它设置为 true:

export HBASE_MANAGES_ZK=true

然后转到您的 hbase-site.conf 并让它知道在哪些节点上运行 Zookeeper(它将显示为 QuorumPeer 与 jps 的一些变体):

<property>
  <name>hbase.zookeeper.quorum</name>
  <value>localhost</value>
</property>

如果这仍然不起作用,请尝试将localhost您的 conf 文件切换到您的主机名(确保它在您机器的 /etc/hosts 文件中)。

于 2015-07-27T17:13:08.613 回答