1. 程式人生 > >hbase1.2.3+zookeeper3.4.9+hadoop2.7.3完全分散式部署遇到的問題

hbase1.2.3+zookeeper3.4.9+hadoop2.7.3完全分散式部署遇到的問題

啟動start-hbase.sh 後hbase沒有啟動

檢視日誌如下:

ERROR [main] master.HMasterCommandLine: Master exiting

java.io.IOException: Could not start ZK with 3 ZK servers in local mode deployment. Aborting as clients (e.g. shell) will not be able to find this ZK quorum.
        at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:173)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:137)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)
        at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2436)

Fri Jan 13 09:46:28 UTC 2017 Starting master on hd1

如果部署獨立zookeeper的hbase 需要設定如下:

1、 hbase-env.sh 中修改 

 export HBASE_MANAGES_ZK=false  #獨立hbase自帶的zookeeper

2、hbase-site.xml修改

<property>
        <name>hbase.rootdir</name>
        <value>hdfs://hd1:9000/hbase</value>  #與hadoop 的core-site.xml 的主機號和埠號一致
</property>

<property>
        <name>hbase.cluster.distributed</name>   #踩坑處 :把hbase.cluster.distributed拼寫錯誤導致該屬性沒有起作用。


 <value>true</value>
</property>

<property>
        <name>hbase.master</name>
        <value>hd1:60000</value>
</property>
<property>
        <name>hbase.master.info.port</name>
        <value>60010</value>
</property>
<property>
        <name>hbase.zookeeper.quorum</name>  #zookeeper參與競選伺服器
        <value>hd1,hd2,hd3</value>
</property>

3、regionservers修改

把regionserver 所部署的機器主機名配置到該檔案

如:

[[email protected] conf]$ cat regionservers 
hd2
hd3
hd4