0


HBase 分布式搭建

文章目录

前言:

请先确保 Hadoop 集群搭建完成。

  • Hadoop 完全分布式搭建(超详细)

搭建环境介绍:

三台主机,一主两从,系统为 Centos 7.5。

相关组件版本信息如下:

  • jdk1.8
  • hadoop-3.1.3
  • zookeeper-3.5.7
  • hbase-2.2.3

注意,以下安装教程中涉及到的路径请替换成自己的!

ZooKeeper 安装

解压并改名
# 解压文件cd /opt/software/
tar-zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/

# 改名cd /opt/module
mv apache-zookeeper-3.5.7-bin/ zookeeper-3.5.7
添加环境变量
vim /etc/profile

在文件末尾插入如下代码:

#ZOOKEEPER_HOMEexportZOOKEEPER_HOME=/opt/module/zookeeper-3.5.7
exportPATH=$PATH:$ZOOKEEPER_HOME/bin

最后使修改生效:

source /etc/profile
配置服务器编号

在 ZooKeeper 安装目录下创建一个文件夹

zkData

,在

zkData

中创建一个文件

myid

用以保存服务器编号。

# 进入 ZooKeeper 安装目录cd$ZOOKEEPER_HOME# 创建文件夹mkdir zkData

# 创建文件并添加编号cd zkData

echo1> myid
配置 zoo.cfg 文件
# 进入 ZooKeeper 的配置文件目录cd$ZOOKEEPER_HOME/conf/

# 修改文件名称mv zoo_sample.cfg zoo.cfg

# 编辑 zoo.cfg 文件vim zoo.cfg

修改数据的存储位置,指定为:

/opt/module/zookeeper-3.5.7/zkData

然后在文件末尾添加服务器配置,如下所示:

server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

#监听所有IPquorumListenOnAllIPs=true

注意,每一行的后面都不要有空格。

在这里插入图片描述

添加完成后保存并退出。

文件分发与同步

在 master 服务器中将 ZooKeeper 安装文件分发到其它服务器上。

scp-r /opt/module/zookeeper-3.5.7/ slave1:/opt/module/
scp-r /opt/module/zookeeper-3.5.7/ slave2:/opt/module/

在 master 服务器中将环境变量文件同步至其它服务器中。

rsync /etc/profile root@slave1:/etc/profile
rsync /etc/profile root@slave2:/etc/profile

我们分别进入 slave1、slave2 服务器中,先初始化环境变量,然后修改 ZooKeeper 编号,编辑

myid

文件,依次写入为:

2

3

启动 ZooKeeper

我们分别进入 master、slave1、slave2 服务器中,启动 ZooKeeper 服务。

# 启动 ZooKeeper
zkServer.sh start

启动完成后会显示出如下

STARTED

提示:

在这里插入图片描述

我们也可以通过命令

jps

来检查 ZooKeeper 服务是否启动,如下所示:

在这里插入图片描述

HBase 安装

解压
cd /opt/software/

# 解压 HBase 安装包tar-zxvf hbase-2.2.3-bin.tar.gz -C /opt/module/
配置环境变量

通过

vim /etc/profile

命令编辑配置文件,在文件末尾输入如下代码(不可以有空格):

#HBASE_HOMEexportHBASE_HOME=/opt/module/hbase-2.2.3
exportPATH=$PATH:$HBASE_HOME/bin

然后,保存并退出。执行命令

source /etc/profile

,使刚刚的配置生效。

配置 HBase 相关文件

首先切换到 HBase 安装文件的

conf

目录下。

cd$HBASE_HOME/conf

1、修改

hbase-env.sh

文件

在文件末尾添加如下内容:

export HBASE_MANAGES_ZK=false
export JAVA_HOME=/opt/module/jdk1.8

添加完成后保存并退出。

2、配置

hbase-site.xml

文件

configuration

标签中添加如下内容:

<!--指定 zookeeper 服务器 --><property><name>hbase.zookeeper.quorum</name><value>master,slave1,slave2</value></property><!--指定 hbase 根路径 --><property><name>hbase.rootdir</name><value>hdfs://master:8020/hbase</value></property><!--将 hbase 设置为分布式部署。 --><property><name>hbase.cluster.distributed</name><value>true</value></property><!-- 避免出现启动错误。 --><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property>

修改完成后保存并退出。

3、修改

regionservers

文件

添加如下内容:

master
slave1
slave2

添加完成后保存并退出。

解决 log4j 兼容性问题

HBase 与 Hadoop 在运行时会出现 log4j 兼容性问题,这是因为 HBase 的 log4j 版本与 Hadoop 的产生了冲突,我们这里将 HBase 的 log4j 设置为备份。

mv /opt/module/hbase-2.2.3/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar /opt/module/hbase-2.2.3/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar.bak
文件分发与同步

将 master 服务器的 HBase 安装文件分发到 slave1、slave2 服务器上。

cd /opt/module

scp-r hbase-2.2.3/ slave1:/opt/module
scp-r hbase-2.2.3/ slave2:/opt/module

将 master 服务器的环境变量文件与 slave1、slave2 服务器进行同步。

rsync /etc/profile slave1:/etc/profile
rsync /etc/profile slave2:/etc/profile

**在 slave1、slave2 服务器上分别执行

source /etc/profile

使发送来的配置生效。**

启动 HBase 集群

只需要在 master 服务器上执行。

# 启动 HBase 服务
start-hbase.sh

启动后会出现如下提示:

在这里插入图片描述

验证 HBase 节点在三台机器上的运行情况,正常启动如下图所示:

在这里插入图片描述

HBase 分布式搭建完成啦!

标签: hbase 分布式 hadoop

本文转载自: https://blog.csdn.net/weixin_46389691/article/details/128981433
版权归原作者 月亮给我抄代码 所有, 如有侵权,请联系我们删除。

“HBase 分布式搭建”的评论:

还没有评论