解压安装包到指定文件夹
$ 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使用
修改环境变量如图:
查询版本如图:
2.1 单机模式已配置jdk hadoop ssh
配置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
hbase.rootdir file:///usr/local/hbase/hbase-tmp
测试运行
$ 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
hbase.rootdir hdfs://localhost:9000/hbase hbase.cluster.distributed true hbase.unsafe.stream.capability.enforce false
登录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



