当前位置:   article > 正文

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

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)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/556469
推荐阅读
相关标签
  

闽ICP备14008679号