1.本地單機部署hbase,想要使用獨立zookeeper,不使用自帶的
vim conf/hbase-env.sh
export HBASE_MANAGES_ZK=false
設置不使用自帶zookeeper,這一步設置完按理說就可以使用獨立的zookeeper程序了,但是總是報錯:
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.
很明顯,這是啟動自帶zookeeper與獨立zookeeper沖突了
很疑惑,明明設置不啟動自帶zookeeper了,為什么還是去啟動了,后來上網查詢才知道,把hbase.cluster.distributed設置為false,也就是讓hbase以standalone模式運行時,依然會去啟動自帶的zookeeper
所以要做如下設置,值為true
vim conf/hbase-site.xml
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
2.idea javaapi 連接本地hbase超時
hbase-site.xml增加配置
<property>
<name>hbase.master.ipc.address</name>
<value>0.0.0.0</value>
</property>
<property>
<name>hbase.regionserver.ipc.address</name>
<value>0.0.0.0</value>
</property>
3.如下異常
java.lang.IllegalStateException: The procedure WAL relies on the ability to hsync for proper operation during component failures, but the underlying filesystem does not support doing so. Please check the config value of 'hbase.procedure.store.wal.use.hsync' to set the desired level of robustness and ensure the config value of 'hbase.wal.dir' points to a FileSystem mount that can provide it.
hbase-site.xml增加配置
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>