以下翻译自官方文档。
要将Hbase指向现有的Zookeeper集群(不是由Hbase管理的集群),请将conf/hbase-env.sh中的HBASE_MANAGES_ZK
设置为false。
...
# Tell HBase whether it should manage its own instance of ZooKeeper or not.
export HBASE_MANAGES_ZK=false
接下来在hbase-site.xml中设置集群位置和客户端端口(如果是非标准的)。
当Hbase管理ZooKeeper时,它将启动/停止ZooKeeper服务器,作为常规启动/停止脚本的一部分。如果您想独立于Hbase的启动/停止来运行Zookeeper,可以执行以下操作
${HBASE_HOME}/bin/hbase-daemons.sh {start,stop} zookeeper
请注意,可以用这种方式使用Hbase来启动ZooKeeper集群,与Hbase无关。如果您希望ZK在HBase重启期间保持正常,一定要确保将HBASE_MANAGES_ZK
设置为false
,这样当HBase关闭时,ZK不会随之关闭。
有关运行独立的Zookeeper集群的更多信息,请参阅《ZooKeeper入门指南》。此外,请参见Zookeeper Wiki或ZooKeeper文档以获取有关Zookeeper大小调整的详细信息