CentOS7 伪分布式下搭建HBase(踩坑总结)

之前呢用的都是老版本的HBase0.xx,但是最近在安装HBase1.xx的时候呢出了不少问题,其实你所能见到的常见错误归根到底就是:配置文件没配置好,接下来我详细的介绍下我的安装过程。

1.上传安装包并解压:

sudo tar -zxvf hbase-1.5.0-bin.tar.gz

在这里插入图片描述
2.拷贝hadoop配置文件:

进入到hadoop的/ect/hadoop目录下将hdfs-site.xml,core-site.xml拷贝到hbase安装目录下的conf文件夹下,这里每个人的安装路径不同,就不在详细展示命令了。

3.修改用户权限(root下的不用这一步):

注意:我呢搭建hadoop伪分布的时候用的是az这个另外创建的用户,不是在root用户下,所以需要先修改下权限,不修改权限的话,你在关闭hbase的时候会如下错误:

stopping hbasecat: /tmp/hbase-az-master.pid: 没有那个文件或目录

网上都让重启hbase,zookeeper啥的,但是对我来说都不管用,最后还是修改下权限解决了问题。

命令格式:sudo chown -g 所用用户名 hbase的安装目录

sudo chown -g az /itcast/hbase-1.5.0

4.配置hbase-env.sh文件:

第一行配置是引入jdk的位置;
第二行配置是让hbase采用内部自带的zookeeper

在这里插入图片描述
5.配置hbase-site.xml文件:

    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop01:9000/hbase</value>
    </property>

    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>

第一个标签配置的是hbase数据存储在hdfs上的路径,我把值配值成hdfs://hadoop01:9000/hbase(hadoop01是我的主机名),我们可以看下hadoop的配置文件core-site.xml
在这里插入图片描述
很多教程配置的都是hdfs://localhost:9000/hbase,但是之后会报错,如下:

ERROR: Can't get master address from ZooKeeper; znode data == null
Here is some help for this command:
List all tables in hbase. Optional regular expression parameter could
be used to filter the output. Examples:
  hbase> list
  hbase> list 'abc.*'

所以建议大家还是按照自己的hadoop配置文件里面的配置去配置。

第二个标签配置的是hbase所处的模式是否是分布式;
在这里插入图片描述
6.启动hbase:

进入到bin目录下,执行./start-hbase.sh,然后输入hbase shell进入hbase命令行。
在这里插入图片描述

发布了80 篇原创文章 · 获赞 69 · 访问量 8932

猜你喜欢

转载自blog.csdn.net/qq_43437122/article/details/105262973
今日推荐