前言:
如果只是简单HBASE单机模式,只需要安装HBASE后修改安装目录下的conf/hbase-site.xml
修改完直接进入BIN目录,启动就好
sh start-hbase.sh
输入JPS后看到HMaster就证明启动成功。
如果需要配置全单机模式的话,请按照如下配置就好,亲测OK可以正常使用。
第一部分 安装前准备
1.安装hadoop
今天刚刚学了hbase的一点基础,准备安装Hbase实际操练一下。因为安装hbase的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hbase的版本相匹配。于是去官网查询了一下我安装的hadoop-3.1.0(目前是最新版)对应支持的hbase版本,然后。。。。。发现没有任何一版hbase是支持hadoop-3.1.0的,默默泪奔。。。。。果然最新的不一定是最好的。
查看hbase与hadoop的版本匹配情况:http://hbase.apache.org/book.html#hadoop
于是乎,又重温了一下hadoop的安装过程。这次我安装的是Hadoop-2.7.7。步骤看这里。
2.安装zookeeper
我这里安装的是单机模式。版本是zookeeper-3.4.9.tar.gz。步骤看这里。
第二部分 安装Hbase单机模式
1.将安装包上传到/usr/local目录下,解压缩,重命名,添加&生成环境变量
复制代码
[root@hadoop ~]# cd /usr/local/
[root@hadoop local]# tar xzvf hbase-2.1.0-bin.tar.gz #解压缩
[root@hadoop local]# mv hbase-2.1.0 hbase #重命名
[root@hadoop local]# vi /etc/profile #添加环境变量
添加变量:export HBASE_HOME=/usr/local/hbase
然后在PATH变量后面添加::$HBASE_HOME/bin
[root@hadoop local]# source /etc/profile #s生成环境变量
复制代码
2.修改几个配置文件
第一个:hbase-env.sh
复制代码
[root@hadoop local]# cd /usr/local/hbase/conf/
[root@hadoop conf]# vi hbase-env.sh
#将以下4个变量取消注释,修改参数如下
export JAVA_HOME=/usr/java
export HBASE_CLASSPATH=/usr/local/hbase/conf
export HBASE_PID_DIR=/var/hadoop/pids
export HBASE_MANAGES_ZK=false #不使用HBase自带的zookeeper
复制代码
第二个:zoo.cfg
在这里我们使用的不是HBase自带的zookeeper,而是之前已经装好的,所以需要将我们现在的zookeeper的zoo.cfg文件复制到hbase的conf目录下
[root@hadoop conf]# cp /usr/local/zookeeper/conf/zoo.cfg /usr/local/hbase/conf/
第三个: hbase-site.xml
复制代码
[root@hadoop conf]# vi hbase-site.xml #添加如下内容
hbase.rootdir
hdfs://hadoop:9000/hbase
hbase.cluster.distributed
true
hbase.zookeeper.quorum
hadoop:2181
hbase.tmp.dir
/var/hbase/
hbase.master
hadoop:60000
hbase.zookeeper.property.dataDir
/usr/local/hbase/zookeeper
复制代码
第四个:regionservers
[root@hadoop conf]# vi regionservers #修改为主机名
hadoop
第三部分 Hbase简单操作
1.启动HBase。在master节点上运行 start-hbase.sh
复制代码
[root@hadoop ~]# start-all.sh #启动hadoop
[root@hadoop ~]# zkServer.sh start #启动zookeeper
[root@hadoop ~]# zkServer.sh status #查看zookeeper状态以及角色
[root@hadoop ~]# start-hbase.sh #启动Hbase
[root@hadoop ~]# jps
#HBase启动成功:显示HMaster和HRegionServer
#hadoop启动成功:显示NameNode、SecondaryNameNode、DataNode、ResourceManager和NodeManager
#zookeeper启动成功:显示QuorumPeerMain
11840 HRegionServer
9313 SecondaryNameNode
12037 Jps
9030 NameNode
11718 HMaster
10055 QuorumPeerMain
9128 DataNode
9465 ResourceManager
9564 NodeManager
复制代码
2.进入shell模式
复制代码
[root@hadoop ~]# hbase shell #进入shell模式
…
hbase(main):001:0> status #查看HBase运行状态
1 active master, 0 backup masters, 1 servers, 0 dead, 2.0000 average load
Took 11.4351 seconds
hbase(main):002:0> exit #退出
[root@hadoop ~]#
复制代码
3.停止HBase。在master节点上运行 stop-hbase.sh
[root@hadoop ~]# stop-hbase.sh #关闭Hbase
[root@hadoop local]# zkServer.sh stop #关闭zookeeper
[root@hadoop local]# stop-all.sh #关闭hadoop
[root@hadoop local]# jps #查看
第四部分 一些问题
1.启动HBase时报错:没有那个文件或目录
[root@hadoop conf]# start-hbase.sh
/usr/local/hbase/bin/hbase:行645: /usr/local/java/bin/java: 没有那个文件或目录
running master, logging to /usr/local/hbase/logs/hbase-root-master-hadoop.out
hadoop: running regionserver, logging to /usr/local/hbase/bin/…/logs/hbase-root-regionserver-hadoop.out
hadoop: /usr/local/hbase/bin/…/bin/hbase:行645: /usr/local/java/bin/java: 没有那个文件或目录
原因:hbase-env.sh中JAVA_HOME配置错误,其应该与/etc/profile文件中的JAVA_HOME一致。
解决方法:我的/etc/profile文件中的JAVA_HOME路径为/usr/java,而在hbase-env.sh文件中却写成了/usr/local/java,因而才找不到目录。把hbase-env.sh文件中的AVA_HOME路径改为/usr/java后,重启HBase,成功!
转载自:https://www.cnblogs.com/zhengna/p/9358578.html
作者:zhengna