zookeeper学习笔记

zookeeper学习笔记

一个动物管理员的故事。
在集群的管理中,zookeeper主要负责分布式应用程序的协调的工作。

一、四个主要的功能

  1. 统一的命名服务
    在分布式应用中需要一套完整的命名规则,既能够产生唯一的名称又便于识别和记忆。通常情况下使用树形的名称结构是一个理想的选择。
    20201020171803

阿里的dubbo中使用了zookeeper来作为其命名服务,维护全局的服务地址列表。
在leader统一命名的管理下,集群中的数据读写的方式:

  • 1.1.写数据,一个客户端进行写数据请求时,会指定Zookeeper集群节点,如果是Follower接收到写请求,会把请求转发给Leader,Leader通过内部的Zab协议进行原子广播,直到所有Zookeeper节点都成功写了数据,然后Zookeeper会给Client发回写完响应。
  • 1.2.读数据,因为集群中Zookeeper按照统一的命名空间,所有Zookeeper节点呈现相同的命名空间视图(文件目录名称结构),所以读数据的时候请求任意一台Zookeeper节点都一样。
  1. 配置管理
    将人工维护的每台机器都一样的配置环境一样的东西交给zookeeper来维护。
    20201020172741

如图所示,将配置信息保存在Zookeeper(Leader节点)的某一个目录中,然后将所有需要修改的应用机器订阅该Zookeeper(Leader节点)节点,一旦Leader节点发布新配置信息,每台订阅的机器就会收到Zookeeper的通知,然后从Zookeeper获取新的配置信息应用到系统中,完成配置的集中统一管理。

  1. 集群管理
    监控集群和leader选举。
    20201020172902
    看不懂了。
    20201020173522
    20201020173550

二、基本运转流程

ZooKeeper的基本运转流程:
1、选举Leader。
2、同步数据。
3、选举Leader过程中算法有很多,但要达到的选举标准是一致的。
4、Leader要具有最高的执行ID,类似root权限。
5、集群中大多数的机器得到响应并接受选出的Leader。

三、zookeeper为什么要用

20201020174752

我个人觉得zookeeper在hadoop中的作用就是为了防止夯机,所以实时监管了一个NN。

四、zookeeper安装

20201020175314

参考资料

【1】 作者:悟成  链接:https://www.jianshu.com/p/fdcd6cd6a871 来源:简书
【2】 百度百科 https://baike.baidu.com/item/zookeeper/4836397?fr=aladdin
【3】 作者:柳树 连接:https://zhuanlan.zhihu.com/p/69114539
【4】 https://blog.csdn.net/julyfire/article/details/12081021
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值