当前位置:   article > 正文

HBase高可用

hbase高可用

一、HBase高可用简介

HBase集群如果只有一个master,一旦master出现故障,将导致整个集群无法使用,所以在实际的生产环境中,需要搭建HBase的高可用,也就是让HMaster高可用,也就是需要再选择一个或多个节点也作为HMaster,但是只有一个是active,其他的都为backup master当active的master宕机时,从backup master中选举一个作为active。

搭建HBase的高可用

1.在HBase的conf文件夹中创建一个backup-masters的文件

在这里插入图片描述

2. 修改backup-masters,添加作为备份master的节点信息

在这里插入图片描述

3. 分发backup-masters文件到其他的服务器

在这里插入图片描述

4. 重新启动HBase

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

5. 查看web ui

在这里插入图片描述

在这里插入图片描述

三、测试高可用

1. 尝试杀掉node1的HMaster进程,模拟node1宕机

在这里插入图片描述

2. 查看node1的web ui

在这里插入图片描述

3. 再查看node2的web ui

在这里插入图片描述

4. 进入HBase shell,可以继续使用

在这里插入图片描述

5. 再次运行Java api程序,查看结果

在这里插入图片描述

四、高可用原理

zookeeper临时节点 + watch + select

在这里插入图片描述

五、HBase的高可用架构及原理

1. 系统架构

在这里插入图片描述

2. Client

客户端,发出HBase的操作请求,比如hbase shell,HBase Java API。

3. Master Server

在这里插入图片描述

作用:

l 监控RegionServer

l 处理RegionServer的故障

l 处理元数据的变更

l 处理region的分配或移除

l 处理负载均衡

l 通过zookeeper发布自己的状态信息

!](https://img-blog.csdnimg.cn/494613466c7249c39ea5edfd0c91e128.png)

4. Region Server

l 处理分配给它的region

l 负责存储HBase的实际数据

l 刷新缓存到hdfs

l 维护HLog日志

l 执行压缩

l 处理region分片

l 包含有大量的组件

n Write-Ahead logs

n HFile(StoreFile)

n Store

n MemStore

n Region

在这里插入图片描述

5. Region

在HBase中,表的存储被划分为很多个Region,并由RegionServer提供服务

在这里插入图片描述

在这里插入图片描述

6. Store

Region按列簇垂直划分为Store,存储在hdfs的HFile中

7. MemStore

类似于缓存

l 当往HBase中写入数据时,首先写入MemStore

l 每个列簇有一个MemStore

l 当MemStore存储快满的时候,整个数据写入hdfs的HFile中

8. StoreFile

物理上存储的是HFile**,存储整个排序的key-value****数据,操作连续速度非常快**

9. WAL

Write-AHead Logs的缩写,是HBase提供的一种高并发、持久化(写入hdfs****等永久性存储介质上)的日志系统,具有回放机制,主要的作用就是故障恢复。

比如put**、delete****、incr等业务写入操作,都会保存在wal中,一旦服务器崩溃,就可以通过wal实现恢复崩溃前的数据。物理上存储的是hdfs的SequenceFile****。**

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/387132
推荐阅读
  

闽ICP备14008679号