Could not start ZK at requested port of 2181, while export HBASE_MANAGES_ZK=false
Problem
The first aim was to run HBase standalone. Navigating to ip:60010/master-status is succesfull once HBase has been started.
The second aim is to run a distinct ZooKeeper quorum. ZooKeeper has been downloaded and has been started:
netstat -nato | grep 2181
tcp 0 0 :::2181 :::* LISTEN off (0.00/0/0)
The conf/hbase-env.sh
was changed as follows:
# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false
in order to avoid HBase starts ZooKeeper once HBase has been started.
However, the following error occurs once HBase has been started.
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.
Question
How to disable the startup of ZooKeeper by HBase and run ZooKeeper separately?
Solution 1:
According to this documentation the /usr/lib/hbase/conf/hbase-site.xml
file needs to be configured as follows:
<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
</configuration>
to avoid HBase manages its own ZooKeeper.
After configuring this, the zookeeper-server
and hbase-master
were started independently.