背景
- 单机
- HBase 2.3.2版本
- Hadoop 3.2.1版本
- zookeeper 3.6.2版本
问题
1.明明是单机部署的,所以如下配置设置为了false
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
</property>
2.也在hbase-env.sh中设置了禁用内部服务zookeeper的配置
export HBASE_MANAGES_ZK=false
3.启动报错
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-site.xml的下面配置节点的值修改为true
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
原因
原来Hbase的运行模式虽然分了单机模式(false),分布式模式(true)。若为false,Hbase和Zookeeper会运行在同一个JVM里面。由于采用的都是zookeeper默认使用的端口,所以启动后冲突报出错误
参考
https://serverfault.com/questions/599661/could-not-start-zk-at-requested-port-of-2181-while-export-hbase-manages-zk-fals/601549#601549?newreg=fbd24a54f1d84f818c2687f62a7a5626