1、准备

Hadoop 版本:2.7.7

ZooKeeper 版本:3.4.14

Hbase 版本:2.0.5

四台主机: s0, s1, s2, s3

搭建目标如下:

HMaster:s0,s1(备份HMaster)

HRegionServer:s1, s2, s3

主机映射信息如下

192.168.32.100 s0
192.168.32.101 s1
192.168.32.102 s2
192.168.32.103 s3

Hadoop 安装步骤参考(示例版本与HDFS端口配置略有差异,根据实际情况调整):

https://www.cnblogs.com/jonban/p/hadoop.html

ZooKeeper 安装步骤参考:

https://www.cnblogs.com/jonban/p/zookeeper.html

2、下载 hbase-2.0.5-bin.tar.gz

下载地址:

https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.0.5/hbase-2.0.5-bin.tar.gz

3、解压到 /opt 下

tar -zxvf hbase-2.0.-bin.tar.gz -C /opt/

4、配置

进入到 /opt/hbase-2.0.5/conf 下

cd /opt/hbase-2.0./conf

① 修改 hbase-env.sh 文件,修改jdk配置和ZooKeeper配置,如下所示:

# The java implementation to use.  Java 1.8+ required.
export JAVA_HOME=/opt/jdk1..0_192 # Tell HBase whether it should manage it's own instance of ZooKeeper or not.
export HBASE_MANAGES_ZK=false

② 修改 hbase-site.xml 文件,内容如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://s0/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>s1,s2,s3</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
</configuration>

③ 修改 regionservers 文件 ,内容如下:

s1
s2
s3

④ 创建 backup-masters 文件

echo 's1' > backup-masters

⑤ 复制Hadoop 配置文件 hdfs-site.xml 和 core-site.xml 到Hbase配置目录下

cp /opt/hadoop-2.7.7/etc/hadoop/hdfs-site.xml /opt/hbase-2.0.5/conf/
cp /opt/hadoop-2.7.7/etc/hadoop/core-site.xml /opt/hbase-2.0.5/conf/

5、远程复制 hbase-2.0.5 安装目录到其它三台主机 s1, s2, s3

scp -r /opt/hbase-2.0.5 root@s1:/opt/
scp -r /opt/hbase-2.0.5 root@s2:/opt/
scp -r /opt/hbase-2.0.5 root@s3:/opt/

6、配置环境变量

vi /etc/profile

添加如下内容:

export HBASE_HOME=/opt/hbase-2.0.5
export PATH=$PATH:$HBASE_HOME/bin

使用source命令使配置立即生效

source /etc/profile

7、启动

启动ZooKeeper 集群

zkServer.sh start

启动 HDFS

start-dfs.sh

启动Hbase

start-hbase.sh

8、查看状态

在四台主机上分别输入  jps  命令,查看集群状态,内容如下:

[root@s0 conf]# jps
1632 NameNode
2024 HMaster
[root@s1 ~]# jps
1489 QuorumPeerMain
1607 HRegionServer
1449 DataNode
1674 HMaster
[root@s2 ~]# jps
1475 DataNode
1640 HRegionServer
1519 QuorumPeerMain
[root@s3 ~]# jps
1534 QuorumPeerMain
1487 DataNode
1647 HRegionServer

符合集群预期结果

HMaster:s0,s1(备份HMaster)
HRegionServer:s1, s2, s3

9、 验证

浏览器输入地址:

http://s0:16010

http://s1:16010

效果截图如下:

下面是备份 HMaster,地址为自动跳转

集群状态完美!!!

Hbase 完全分布式 高可用 集群搭建

.

Hbase 完全分布式 高可用 集群搭建的更多相关文章

  1. ClickHouse 分布式高可用集群搭建(转载)

    一.ClickHouse安装方式: 源码编译安装 Docker安装 RPM包安装 为了方便使用,一般采用RPM包方式安装,其他两种方式这里不做说明. 二.下载安装包 官方没有提供rpm包,但是Alti ...

  2. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.服务器环境 主机名 IP 用户名 密码 安装目录 master188 192.168.29.188 hadoop hadoop /home/ha ...

  3. Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...

  4. RabbitMQ高级指南:从配置、使用到高可用集群搭建

    本文大纲: 1. RabbitMQ简介 2. RabbitMQ安装与配置 3. C# 如何使用RabbitMQ 4. 几种Exchange模式 5. RPC 远程过程调用 6. RabbitMQ高可用 ...

  5. HDFS-HA高可用集群搭建

    HA高可用集群搭建 1.总体集群规划 在hadoop102.hadoop103和hadoop104三个节点上部署Zookeeper. hadoop102 hadoop103 hadoop104 Nam ...

  6. hadoop高可用集群搭建小结

    hadoop高可用集群搭建小结1.Zookeeper集群搭建2.格式化Zookeeper集群 (注:在Zookeeper集群建立hadoop-ha,amenode的元数据)3.开启Journalmno ...

  7. Spark高可用集群搭建

    Spark高可用集群搭建 node1    node2    node3   1.node1修改spark-env.sh,注释掉hadoop(就不用开启Hadoop集群了),添加如下语句 export ...

  8. MongoDB高可用集群搭建(主从、分片、路由、安全验证)

    目录 一.环境准备 1.部署图 2.模块介绍 3.服务器准备 二.环境变量 1.准备三台集群 2.安装解压 3.配置环境变量 三.集群搭建 1.新建配置目录 2.修改配置文件 3.分发其他节点 4.批 ...

  9. spring cloud 服务注册中心eureka高可用集群搭建

    spring cloud 服务注册中心eureka高可用集群搭建 一,准备工作 eureka可以类比zookeeper,本文用三台机器搭建集群,也就是说要启动三个eureka注册中心 1 本文三台eu ...

随机推荐

  1. Swoole HTTP 的应用

    目录 概述 代码 小结 扩展 概述 这是关于 Swoole 学习的第四篇文章:Swoole HTTP 的应用. 第三篇:Swoole WebSocket 的应用 第二篇:Swoole Task 的应用 ...

  2. linux命令之curl,wget

    curl由于可自定义各种请求参数所以在模拟web请求调试网页方面更擅长:wget由于支持ftp和Recursive所以在下载文件方面更擅长.类比的话curl是浏览器,而wget是迅雷9. 在下载上,也 ...

  3. Ant Design中的Form组件

    1. 使用Form.create()包裹过的组件可以获取到this.props.form属性 Form.create()(Comp) 2. getFieldDecorator() // 在表单中的使用 ...

  4. MySQL server has gone away和Maximum execution time of 120 seconds exceeded

    今天在写采集时碰到两个问题1.MySQL server has gone away2.Maximum execution time of 120 seconds exceeded 采集程序写好运行大概 ...

  5. STP-8-RSTP中的提议/同意过程

    连接中断原因也可能是增加了新的链路,导致其中一台交换机重新选举根端口,最终认为新链路所连端口是根端口,RSTP在点到点链路上使用提议/同意(Proposal/Agreement)过程,让类似这种链路迅 ...

  6. 转 DataGuard环境搭建 (一主一备一级联)

    DataGuard环境搭建 (一主一备一级联) http://blog.itpub.net/30130773/viewspace-2116985/ 1.--------- primary_role / ...

  7. Ubuntu搭建WordPress-MySQL-Apache

    目标 技术博客www.xifarm.com有5年时间了. 原来在虚拟机/VPS上搭建,不过都是Windows系统下的. 最近突发奇想,试试迁移到Linux的Unbuntu下.说干就干,抽空用了大约3天 ...

  8. 次小生成树(SST)

    次小生成树(SST) 题目背景 Awson是某国际学校信竞组的一只菜鸡.Awson最近学了很多最小生成树的算法,Prim算法.Kurskal算法.消圈算法等等.正当Awson洋洋得意之时,信竞组其他大 ...

  9. MyBatis学习总结(二)---实例

    为了对MyBatis有个初步了解,现做一个简单的增.删.改.查实例.了解涉及的文件与相关作用. MySql创建friends表,以下是表的sql语句 DROP TABLE IF EXISTS `fri ...

  10. 有关在python中使用Redis(二)

    这里简单介绍下在python中使用如何使用hashset,set和list: 从list开始: 一般我们使用lpush对一个list进行初始化添加,但是如果需要不断往这个list里面加值,就要用rpu ...