Apache HBase 1.2.12在CentOS下的集群部署
一、依赖环境
前置依赖及安装
- CentOS7.x、JDK、Hadoop2.7.7集群、zookeeper-3.4.14集群
- 此次部署三节点的zookeeper,对应的机器hostname分别为:bigdata02、bigdata03、bigdata04
集群规划如下表:
机器 | Zookeeper | HMaster | HRegionServer |
---|---|---|---|
bigdata02 | √ | √ | |
bigdata03 | √ | √ | |
bigdata04 | √ | √ | √ |
下载Apache HBase
- HBase官网:http://hbase.apache.org/ 找到官网下载 hbase 安装包 hbase-1.2.12-bin.tar.gz
- 其他网站推荐镜像:http://mirrors.hust.edu.cn/apache/hbase/
- 对应版本的官方文档:http://hbase.apache.org/1.2/book.html
- 如果要下载其他的版本:http://archive.apache.org/dist/hbase/
二、安装Apache Hbase
创建安装路径
-
在/路径下创建文件夹hbase
[root@bigdata02 /]# mkdir hbase
-
将下载的hbase-1.2.12-bin.tar.gz放入hbase路径下并解压
[root@bigdata02 hbase]# tar -zxvf hbase-1.2.12-bin.tar.gz
修改配置文件
-
修改hbase-env.sh 进入解压路径下的conf路径
[root@bigdata02 conf]# vim hbase-env.sh
-
修改两个地方,分别是jdk路径及不适用自带zk
export JAVA_HOME=/usr/local/src/jdk8 export HBASE_MANAGES_ZK=false
-
修改hbase-site.xml
[root@bigdata02 conf]# vim hbase-site.xml
-
增加以下配置:
<property> <!-- 指定hbase表数据在HDFS上存储的根路径 --> <name>hbase.rootdir</name> <value>hdfs://bigdata02:9000/hbase</value> </property> <property> <!-- 指定hbase是分布式的集群模式 --> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <!-- 指定zookeeper的地址,多个用","分割 --> <name>hbase.zookeeper.quorum</name> <value>bigdata02:2181,bigdata03:2181,bigdata04:2181</value> </property>
-
此处需要在hdfs路径下创建hbase表数据在HDFS上存储的根路径
[root@bigdata02 conf]# hdfs dfs -mkdir /hbase
-
修改regionservers
[root@bigdata02 conf]# vim regionservers # 内容如下: bigdata03 bigdata04
-
在conf下创建backup-masters
[root@bigdata02 conf]# touch backup-masters #内容如下,配置集群的backup master节点 bigdata04
-
拷贝hadoop集群的核心配置文件hdfs-site.xml和core-site.xml到conf路径下
分发安装包到各节点
-
回退到hbase路径,分发安装包到各节点,注意安装路径要一样;将hbase-1.2.12文件夹分发给另外两个节点bigdata03和bigdata04(需先在bigdata03和bigdata04节点建立hbase文件路径)
[root@bigdata02 hbase] # scp -r hbase-1.2.12 root@bigdata03:/hbase [root@bigdata02 hbase] # scp -r hbase-1.2.12 root@bigdata04:/hbase
同步服务器时间
-
HBase集群对于时间的同步要求的比HDFS严格,要求相差不要超过30s
sudo yum install -y ntpdate sudo ntpdate -u ntp.api.bz
配置Hbase的环境变量
-
在三台机器上分别配置Hbase的环境变量
# vim /etc/profile export HBASE_HOME=/hbase/hbase-1.2.12 export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SCALA_HOME/bin:$SPARK_HOME/bin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin
-
使之生效
# source /etc/profile
三、启动服务
-
启动服务注意顺序启动 1.Zookeeper集群、2.Hadoop集群、3.Hive集群(如有的话)、4.Hbase集群;
-
启动hbase ,此处在bigdata02节点启动即可
[root@bigdata02 hbase] # start-hbase.sh
四、查看启动情况
- 查看启动是否正常,是否成功 ,依次jps各节点,如下:
-
说明:主节点和备用节点都启动hmaster进程;各从节点都启动hregionserver进程
-
通过访问浏览器页面:http://bigdata02:16010
五、关闭Hbase服务
-
在HMaster节点的bin路径下执行:
[root@bigdata04 bin]# ./hbase-daemon.sh stop master
-
在HRegionServer节点的bin路径下执行:
[root@bigdata04 bin]# ./hbase-daemon.sh stop regionserver RegionServer