目录
把hadoop的配置文件core-site.xml和hdfs-site.xml复制到hbase的配置文件目录下
hbase的集群搭建
安装准备
- 环境 :
系统:CentOS7.0 集群master,slave001,slave002
hadoop版本:2.7.5
zookeeper版本:3.4.11
hbase版本:2.0.0 - 下载hbase安装包:http://apache.spinellicreations.com/hbase/
- hbase需要跟Hadoop版本对应
安装步骤
将下好的hbase安装包上传至服务器然后解压至合适的目录中
tar -zxvf hbase-2.0.0-bin.tar.gz -C /root/opt/
-
配置环境变量
export HBASE_HOME=/root/opt/hbase-2.0.0 export PATH=$PATH:$HBASE_HOME/bin
使环境变量生效并验证环境变量生效 source /etc/profile 检测:hbase version
-
配置hbase-env.sh
/root/opt/hbase-2.0.0/conf
[hadoop@hadoop01 conf]# vi hbase-env.sh # 加入JAVA_HOME export JAVA_HOME=/root/opt/jdk1.8.0_73 # 指定不使用自带的zookeeper export HBASE_MANAGES_ZK=false
-
配置hbase-site.xml
/root/opt/hbase-2.0.0/conf
[hadoop@hadoop01 ~]$ vi hbase-site.xml
<configuration>
<!--
可以不配置,如果要配置,需要和zookeeper配置文件zoo.cfg中的dataDir指定的路径相同
zoo.cfg中dataDir=/var/zookeeper
那么:
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/zookeeper</value>
</property>
-->
<!--指定hbase的数据在hdfs上存放的位置-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://jed/user/hbase</value>这个路径可以写成本机的
<value>/root/data/hbase</value>
</property>
<!--指定hbase集群为分布式集群-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
<!--指定zookeeper集群-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>master:2181,slave001:2181,slave002:2181</value>
</property>
</configuration>
[hadoop@hadoop01 conf]$ vi backup-masters
# 添加备用hbase-master
slave001
-
配置backup-masters
# 如果backup-masters文件没有则创建 在hbase的conf目录下面 vi backup-masters # 配置备份的Master机器 slave01
-
配置conf/regionservers
[hadoop@hadoop01 conf]$ vi regionservers
# 默认有一行localhost,删除
maseter
slave001
slave002
把hadoop的配置文件core-site.xml和hdfs-site.xml复制到hbase的配置文件目录下
[hadoop@hadoop01 conf]$ cp /root/opt/hadoop-2.7.4/conf/core-site.xml /root/opt/hbase/conf
[hadoop@hadoop01 conf]$ cp /root/opt/hadoop-2.7.4/conf/hdfs-site.xml /root/opt/hbase/conf
把hbase安装目录分发给其他节点
[hadoop@hadoop01 opt]$ scp -r hbase-2.0.0 slave001:`pwd`
[hadoop@hadoop01 opt]$ scp -r hbase-2.0.0 slave002:`pwd`
在全部节点的环境变量配置文件中加入HBASE_HOME
启动集群
首先启动zookeeper集群
zkServer.sh start
然后启动HDFS集群
start-dfs.sh
最后启动hbase集群
[hadoop@hadoop01 ~]$ start-hbase.sh
测试
查看进程启动情况
如果有节点相应的进程没有启动,那么可以手动启动
- hbase-daemon.sh start master
- hbase-daemon.sh start regionserver
访问WEB页面进行验证
测试是否可以进入hbase命令行
Kill -9 12395
杀掉master的Hmaster的进程:查看wenb页面slave001的Hmaster的状态是active就证明是高可用。
至此,hbase完全分布式集群搭建成功!