Mysql

HBase集群的搭建

2021-07-17  本文已影响0人  顾子豪

HBase集群搭建

HBase官网:http://hbase.apache.org/
考虑点:

版本选择 企业常用的:0.96,0.98,hbase-2.x,这里我们选择1.2.12版本
兼容问题 hadoop-2.7.7 hbase-1.2.12
依赖环境 HDFS, ZooKeeper, JDK
资源评估
集群结构 主从架构 master/regionserver

集群规划

我们准备三台服务器,分别是 bigdata02, bigdata03, bigdata04,他们的角色分别如下表所示:

Syntax ZooKeeper HMaster HRegionServer
bigdata02
bigdata03
bigdata04

版本选择:不新不旧的稳定兼容的版本

1、JDK-1.8
2、HBase-1.2.x
3、Hadoop-2.7.1+

安装步骤

1、安装zookeeper集群,此处略
2、下载安装包
找到官网下载 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/
3、上传安装包到服务器,并解压到对应的安装目录

[bigdata@bigdata02 ~]$ tar -zxvf ~/soft/hbase-1.2.12-bin.tar.gz -C ~/apps/

4、 修改配置文件:hbase-env.sh

[bigdata@bigdata02 ~]$ cd ~/apps/hbase-1.2.12/conf/
[bigdata@bigdata02 ~]$ vi hbase-env.sh

修改两个两地方:

export JAVA_HOME=/usr/local/java/jdk1.8.0_73 # 表示修改为自己的jdk目录
export HBASE_MANAGES_ZK=false # 默认为true,改为false,表示不用自带的zookeeper

保存退出
5、修改集群配置文件:hbase-site.xml
增加以下配置:

<configuration>
    <property>
        <!-- 指定hbase表数据在HDFS上存储的根路径 -->
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop277ha/hbase1212</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>
</configuration>

6、修改regionservers
执行命令:

[bigdata@bigdata02 conf]$ vi regionservers

添加如下内容:

bigdata02
bigdata03
bigdata04

7、修改backup-masters
该文件是指定备用的主节点,默认不存在的,先自行创建:

[bigdata@bigdata02 conf]$ touch backup-masters

执行命令:

[bigdata@bigdata02 conf]$ vi backup-masters

然后往文件中增加如下内容,配置你的backup master节点

bigdata04

8、拷贝hadoop的核心配置文件过来
最重要一步,要把hadoop的hdfs-site.xml和core-site.xml放到hbase-1.2.6/conf下,如果不是HA的Hadoop集群,那可以不用拷贝

[bigdata@bigdata02 conf]$ cp ~/apps/hadoop-2.7.7/etc/hadoop/core-site.xml ~/apps/hbase-1.2.12/conf/
[bigdata@bigdata02 conf]$ cp ~/apps/hadoop-2.7.7/etc/hadoop/hdfs-site.xml ~/apps/hbase-1.2.12/conf/

9、 分发安装包到各节点,注意安装路径要一样!

[bigdata@bigdata02 apps]$ scp -r hbase-1.2.12/ bigdata03:$PWD
[bigdata@bigdata02 apps]$ scp -r hbase-1.2.12/ bigdata04:$PWD

10、 同步服务器时间
HBase集群对于时间的同步要求的比HDFS严格,所以,集群启动之前千万记住要进行时间同步,要求相差不要超过30s,这个操作,我们最开始在准备集群的时候,就应该已经做了。
11、 配置环境变量

[bigdata@bigdata02 ~]$ vi ~/.bashrc

添加两行:

export HBASE_HOME=/home/bigdata/apps/hbase-1.2.12
export PATH=$PATH:$HBASE_HOME/bin

然后分发该环境变量配置文件到所有节点,或者挨个儿节点进行环境变量配置都可以

[bigdata@bigdata02 ~]$ scp -r ~/.bashrc bigdata03:$PWD
[bigdata@bigdata02 ~]$ scp -r ~/.bashrc bigdata04:$PWD

保存退出!!!别忘了执行命令,使配置生效

[bigdata@bigdata02 ~]$ source ~/.bashrc
[bigdata@bigdata03 ~]$ source ~/.bashrc
[bigdata@bigdata04 ~]$ source ~/.bashrc

12、 启动(顺序别搞错了)
保证ZooKeeper集群和HDFS集群启动正常的情况下启动HBase集群
1、先启动zookeeper集群(每个节点分别启动)

zkServer.sh start

2、启动hdfs集群(随便哪个节点都可以)

start-dfs.sh

3、启动hbase(在主节点上启动,我的是bigdata02和bigdata04)

[bigdata@bigdata02 ~]$ start-hbase.sh

观看启动日志可以看到:

1、首先在命令执行节点启动master
2、然后分别在bigdata02,bigdata03,bigdata04启动regionserver
3、然后在backup-masters文件中配置的备节点上再启动了一个master主进程

13、 查看启动是否正常,是否成功
1、检查各进程是否启动正常

主节点和备用节点都启动hmaster进程
各从节点都启动hregionserver进程

2、通过访问浏览器页面:http://bigdata02:16010/ 或者 http://bigdata04:16010/
14、如果有节点相应的守护进程没有启动,那么可以手动启动

hbase-daemon.sh start master
hbase-daemon.sh start regionserver

15、基本使用

hbase shell
list
上一篇下一篇

猜你喜欢

热点阅读