0


关于在hadoop中搭建HBase时创建表一直显示“Master is initializing”的问题

今天帮室友解决了这个问题,对于我个人来说感触还是蛮深刻的,毕竟这个东西真的弄得要崩溃了,本想着去找老师问问,但是又想自己再挣扎一下下,果然成功了,这简直就像是中了彩票一样哈哈哈哈~

====================== 接下来算是我个人的一些小总结吧=========================

先说明一下:我有三台机器:hadoop01、hadoop02、hadoop03

如果你前面的hadoop以及Zookeeper没有问题的话,建议最好是按着我的步骤来,我会罗列地比较详细!!!

Step1:在hbase的conf文件中找到hbase-env.sh这个文件并添加如下命令:

export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true

同时,在hbase的conf文件中找到hbase-site.xml这个文件同时修改或者添加在<configuration>中:

    <property>
             <name>hbase.rootdir</name>
             <value>hdfs://访问hdfs的ip地址:对应的端口号/hbase</value>
     </property>

(ps:在写这个value时注意与之前在hadoop当中的core-site.xml中的那个hdfs地址对应,同时将这个节点上的hbase进行分发一下,就是传给其他节点!!!)

Step2:删除HDFS当中存在的Hbase:

hadoop fs -rm -r /hbase

Step3:删除Zookeeper当中之前的Hbase元数据信息:

①停止Hbase服务:

stop-hbase.sh

(这个命令根据自己的情况,看有没有配置环境变量,或者有没有写脚本,灵活变通一下,只要能把这个服务关了就行,可以通过jps查看一下!!!)

②进入Zookeeper服务中:

[root@hadoop01 ~]# zkCli.sh
[zk: localhost:2181(CONNECTED) 0] ls /
[hbase, zookeeper] #如果有hbase,继续执行下一步,没看到的话输入 quit 回车
[zk: localhost:2181(CONNECTED) 1] deleteall /hbase
[zk: localhost:2181(CONNECTED) 1] quit

Step4:停止zookeeper所有服务,停止hadoop的所有服务

#使得在每一个节点中通过使用“jps”命令,只有一个jps存在即可!!!

Step5:删除格式化生成的data文件:

rm -rf /opt/software/hadoop3.3.0/data #每一个节点都要执行该操作

Step6:重新格式化:

hdfs namenode -format

Step7:启动每个节点上对应的所有服务,然后先启动Zookeeper服务:

[root@hadoop01 ~]# zookeeper.sh start
[root@hadoop01 ~]# zookeeper.sh status

#查看启动状态,保证有一个leader,两个follower即可

然后再启动Hbase服务!!!

Step8:进入Hbase服务当中:

hbase shell

创建表就不会报错啦~~~

快去试试,相信你也可以成功!!!

(个人感想:这个东西真有趣,下次不想再弄了QWQ)

标签: hadoop hbase 大数据

本文转载自: https://blog.csdn.net/zqii07/article/details/134970584
版权归原作者 名叫栗子 所有, 如有侵权,请联系我们删除。

“关于在hadoop中搭建HBase时创建表一直显示“Master is initializing”的问题”的评论:

还没有评论