如果我希望新的hbase安装使用hdfs存储数据,我可以使用hdfs://localhost:54310作为hbase.rootdir?

rseugnpd  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(265)

我有hadoop-1.2.1在linux-mint上正常工作。
我想添加apachehbase 0.94。
我只有一台机器处于伪分布式模式。
我当前的hbase-site.xml如下所示:

<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://localhost:54310</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>
                <name>hbase.zookeeper.property.dataDir</name>
                <value>/home/user/hbase/zookeeper</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>localhost</value>
        </property>
        <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
</configuration>

我尝试用start-hbase.sh启动,但没有成功,因为hbase shell没有找到zookeeper。
接下来我试着分别用

./hbase-daemon.sh start zookeeper

我一直等到日志显示zookeeper启动正确,然后我试着用

./hbase-daemon.sh start master

但是主人的日志显示:

2013-12-23 11:23:45,028 ERROR org.apache.hadoop.hbase.master.HMasterCommandLine: Failed to start master
java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster
        at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2106)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:152)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:104)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
        at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:76)
        at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2120)
Caused by: java.net.BindException: Cannot assign requested address
wnavrhmk

wnavrhmk1#

分布式apache hbase安装依赖于正在运行的zookeeper群集。它将启动和停止zookeeper集成,作为hbase启动/停止过程的一部分。您还可以独立于hbase管理zookeeper集合,只需将hbase指向它应该使用的集群。
要切换zookeeper的hbase管理,请使用conf/hbase-env.sh中的hbase\u manages\u zk变量。此变量默认为true,它告诉hbase是否作为hbase start/stop的一部分启动/停止zookeeper集成服务器。
您可以阅读此链接并了解使用hbase的zookeeper配置。在您的情况下,您手动启动zookeeper,然后hbase也尝试启动自己的zookeeper Cannot assign requested address 爱欲即将来临。

相关问题