按照常规的HBASE部署方式配置好后。使用start-hbase.sh启动时,通过JPS命令查看各项进程似乎已经正常启动。但在logs目录下的log文件中记录有相当多的异常信息。下图即为其中一部分。

通过错误信息看,应该是zookeeper的问题。连接被拒绝,估计是节点的zookeeper未启动造成的。在网上找了很多方法都没能解决。

后来想起,在配置HBASE时,默认使用hbase自带的zookeeper,并未单独部署。 如果单独配置zookeeper,并先于hbase启动不就可以了么。于是重新配置zookeeper。

具体配置方法见官网手册,或者百度。

特别说明:

1. 配置文件中的server.1=hostname:2888:3888, server后面的数字编号需要与dataDir路径下myid文件中的数字一致。否则启动时会出现异常,异常信息在当前目录下的zookeeper.out文件中。

2. 将hbase_home/conf/hbase-env.sh文件中的 export HBASE_MANAGES_ZK=true 设置为 false。因为已经配置了独立的zookeeper,不再需要hbase集成的了。

完成以上步骤后,先启动zookeeper服务。

逐一从各个节点服务器 使用 zkServer.sh start 启动zookeeper服务。

最先启动的为leader,后面启动的节点为follower,可通过zkServer.sh status查看状态。

最后再启动hbase,查看Logs目录下的日志,发现完全正常。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐