美文网首页
Zookeeper-FusionInsight

Zookeeper-FusionInsight

作者: ssttIsme | 来源:发表于2021-07-07 16:38 被阅读0次

基本原理

简介

ZooKeeper是一个分布式、高可用的协调服务器。在华为大数据产品中主要提供两个功能:

  • 帮助系统避免单点故障,建立可靠的应用程序
  • 提供分布式写作服务和维护配置信息

结构

Zookeeper集群中的节点分为三种角色:Leader、Follower和Observer,其结构和关系如图所示。通常来说,需要在集群中配置奇数个(2N+1)Zookeeper服务,至少(N+1)个投票才能成功的执行写操作。


名称 描述
Leader 在Zookeeper集群中只有一个节点作为集群的领导者,有Follower通过Zookeeper Atomic Broadcast(ZAB)协议选举产生,主要负责接收和协调所有写请求,并把写入的信息同步到Follower和Observer
Follower Follower的功能有两个:1每个Follower都作为Leader的储备,当Leader故障时重新选举Leader,避免单点故障。2处理读请求,并配合Leader一起进行写请求处理
Observer Observer不参与选举和写请求的投票,只负责处理读请求,避免系统处理能力浪费。
Client Zookeeper集群的客户端,对Zookeeper集群进行读写操作。例如HBase可以作为Zookeeper集群的客户端,利用Zookeeper集群的仲裁功能,控制其HAMaster的"Active"和"Standby"状态

如果集群启用了安全服务,在连接Zookeeper时需要进行身份认证,认证方式有以下两种:

  • keytab方式:需要从管理员处获取一个"人机"用户,用于登录FushionInsight HD并通过认证,并且获取该用户的keytab文件。
  • 票据方式:从管理员处获取一个"人机"用户,用于后续的安全登录,开启Kerberos服务的renewable和forwardable并且设置票据刷新周期,开启成功后重启kerveros及相关组件

原理

写请求
1.Follower或Observer接收到写请求后,转发给Leader。
2.Leader协调个Follower,通过投票机制决定是否接受该请求。
3.如果超过半数以上的Leader、Follower节点返回写入成功,那么Leader提交该请求并返回成功,否则返回失败。
4.Follower或Observer返回写请求处理结果。
只读请求
客户端直接向Leader、Follower或Observer读取数据

相关文章

  • Zookeeper-FusionInsight

    基本原理 简介 ZooKeeper是一个分布式、高可用的协调服务器。在华为大数据产品中主要提供两个功能: 帮助系统...

网友评论

      本文标题:Zookeeper-FusionInsight

      本文链接:https://www.haomeiwen.com/subject/ujxiultx.html