问题
第一个目标是独立运行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?
解决方法
根据
this documentation,/usr/lib/hbase/conf/hbase-site.xml文件需要配置如下:
<configuration> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> </configuration>
避免HBase管理自己的ZooKeeper.
配置完成后,zookeeper-server和hbase-master独立启动.