Hbase 2.2.4集群部署在Hadoop3.3.0上

写在前面:搭Hbase条件要求挺高,要确认zookeeper搭好没问题+Hadoop HA搭好没问题,以及时间必须同步。至于其他小坑都不提了,就简单写个总结。

1: 确认JDK版本和Hadoop版本

http://hbase.apache.org/1.2/book.html#basic.prerequisites

jdk: 除了8以外都有issue,这里就用jdk8
在这里插入图片描述

hadoop:

hbase2.1.x后的版本支持hadoop3.1.1+ ,那用Hadoop 3.3.0没问题
在这里插入图片描述

2:准备工作
Zookeeper :https://blog.csdn.net/l1682686/article/details/107998554
Hadoop -HA:https://blog.csdn.net/l1682686/article/details/107997323

3:HBase 下载

http://mirrors.hust.edu.cn/apache/hbase/stable/hbase-2.2.4-bin.tar.gz

这里用的2.2.4版本,下载,解压。

4:修改配置文件

hbase/conf/hbase-env.sh
懒了,直接用GHOME修改不香吗 cd来cd去的 还要想想vim怎么退出
在这里插入图片描述
添加以下内容:

export JAVA_HOME=/home/hadoop/app/jdk

export HBASE_OPTS="$HBASE_OPTS -XX:+UseConcMarkSweepGC"

(GC相关,可不加)

export HBASE_MANAGES_ZK=false

(关闭自带的zkserver)

conf/hbase-site.xml

<configuration>

        <property>
                <!-- 指定 hbase 在 HDFS 上存储的路径 -->
                <name>hbase.rootdir</name>
                <value>hdfs://cluster1/hbase</value>
        </property>
        <property>
                <!-- 指定 hbase 是分布式的 -->
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <!-- 指定 zk 的地址,多个用“,”分割 -->
                <name>hbase.zookeeper.quorum</name>
                <value>master:2181,worker1:2181,worker2:2181</value>
        </property>

	<property>
		<name>hbase.unsafe.stream.capability.enforce</name>
		<value>false</value>
	</property>

</configuration>

修改regionservers:
在这里插入图片描述
(就是各台虚拟机的hostname)

在conf/ 下新增一个backup-masters文件:
在这里插入图片描述

5:分发Hbase & 配置环境变量

分发Hbase到其他虚拟机上:

scp -r hbase/ hadoop@worker1:$PWD
scp -r hbase/ hadoop@worker2:$PWD

配置环境变量:

在每台机器上,

vim ~/.bashrc

在这里插入图片描述

6:启动HBase集群

先启动Zookeeper集群:

zkServer.sh start
zkServer.sh status

再启动hdfs:

start-dfs.sh

再起个yarn:

start-yarn.sh

检查节点状态:
在这里插入图片描述

都没什么问题的话,就启动HBase。

start-hbase.sh

检查HBase启动状态:

master:

在这里插入图片描述

worker2:
在这里插入图片描述
worker1:
在这里插入图片描述

可以看到,在每台机器上都起了HRegionServer。而在master和设置的back-master节点worker1上启动了HMaster。

可以在浏览器看到:

在这里插入图片描述
在这里插入图片描述

全文完。

踩坑记录1:
HMaster没启起来,看日志报

master.HMaster: Failed to become active master

解决方法:

在配置文件 hbase-site.xml中添加:

hbase.unsafe.stream.capability.enforce
false

踩坑记录2:
HRegionServer没起起来,进去看报错

Caused by: java.net.BindException: Address already in use

解决方法:

执行 bin/start-hbase.sh 后,在hmaster 节点上执行 bin/local-regionservers.sh
start 1(2,3,4…) 启动regionserver

1,2,3,4表示偏移量 默认端口是 16020 加上偏移量之后启用16021端口,解决端口冲突

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值