安装HBase的过程和遇到的问题以及解决办法
一、安装过程
- 解压安装包到指定文件夹
$ sudo tar -zxf hbase-2.2.2-bin.tar.gz -C /usr/local
- 修改名称方便后续使用
$ cd /usr/local
$ sudo mv ./hbase-2.2.2 ./hbase
- 配置环境变量
$ vim ~/.bashrc
# 在最后一行添加:export PATH=$PATH:/usr/local/hbase/bin
# 已有PATH行在后续添加 :/usr/local/hbase/bin 就可以
$ source ~/.bashrc
- 增加所有权限
$ sudo chown -R hadoop ./hbase # 这里用的是hadoop用户
- 查询版本
$ cd /usr/local/hbase/bin
$ hbase version
这里出现报错:
错误: 找不到或无法加载主类 org.apache.hadoop.hbase.util.GetJavaProperty
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
解决办法:
修改环境变量,注释掉hadoop相关内容,重启电脑再次查询版本恢复正常,不影响Hadoop使用
修改环境变量如图:
查询版本如图:
二、配置过程
已配置jdk hadoop ssh
2.1 单机模式
- 配置hbase-env.sh,这里删掉两行注释的井号,修改JAVA_HOME路径,如下图
$ vim conf/hbase-env.sh # habse目录下
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162 # 自己的JDK安装路径
export HBASE_MANAGES_ZK=true


- 配置hbase-site.xml,在configuration中添加内容
$ vim /usr/local/hbase/conf/hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/local/hbase/hbase-tmp</value>
</property>
</configuration>
- 测试运行
$ bin/start-hbase.sh
$ cd bin
$ hbase shell
2.2 伪分布模式
- 配置hbase-env.sh,在前面单机基础上多释放一行HBASE_CLASSPATH(hbase目录下进行)
$ vim /conf/hbase-env.sh
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export HBASE_CLASSPATH=/usr/local/hbase/conf
export HBASE_MANAGES_ZK=true
- 配置hbase-site.xml,老规矩
$ vim /usr/local/hbase/conf/hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
</configuration>
- 登录ssh启动hadoop
$ ssh localhost
$ cd /usr/local/hadoop
$ ./sbin/start-dfs.sh
- 返回hbase目录启动
$ cd ..
$ cd /usr/local/hbase/bin
$ start-hbase.sh
$ jps
$ hbase shell

注意顺序:启动Hadoop – 启动HBase – 关闭HBase --关闭Hadoop
版权声明:本文为XiaoYang0313原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。