Linux

無法在請求的埠 2181 啟動 ZK,同時導出 HBASE_MANAGES_ZK=false

  • April 7, 2018

問題

第一個目標是獨立執行 HBase。一旦 HBase 啟動,導航到 ip:60010/master-status 就成功了。

第二個目標是執行不同的 ZooKeeper 仲裁。ZooKeeper 已下載並已啟動:

netstat -nato | grep 2181
tcp        0      0 :::2181                     :::*                        LISTEN      off (0.00/0/0)

conf/hbase-env.sh更改如下:

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

為了避免 HBase 在 HBase 啟動後啟動 ZooKeeper。

但是,一旦啟動 HBase,就會出現以下錯誤。

Could not start ZK at requested port of 2181.  ZK was started at port: 2182.  
Aborting as clients (e.g. shell) will not be able to find this ZK quorum.

問題

如何禁用 HBase 啟動 ZooKeeper 並單獨執行 ZooKeeper?

根據本文件,該/usr/lib/hbase/conf/hbase-site.xml文件需要配置如下:

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

避免 HBase 管理自己的 ZooKeeper。

配置後,zookeeper-serverhbase-master獨立啟動。

引用自:https://serverfault.com/questions/599661