Zookeeper

7.1 Zookeeper 的概述

  • Zookeeper 是一个开源的分布式协调服务框架 ,主要用来解决分布式集群中 应用系统的一致性问题

  • Zookeeper 是 Google Chubby 思想的一个开源实现

  • Zookeeper 本质上是一个分布式文件系统, 适合存放小文件, 通过文件系统来实现分布式协调

分布式文件系统?

  • 在上图左侧, Zookeeper 中存储的其实是一个又一个 Znode, Znode 是 Zookeeper 中的节点

    • Znode 是有路径的, 例如 /data/host1, /data/host2, 这个路径也可以理解为是 Znode 的 Name

    • Znode 也可以携带数据, 例如说某个 Znode 的路径是 /data/host1, 其值是一个字符串 "192.168.0.1"

  • 正因为 Znode 的特性, 所以 Zookeeper 可以对外提供出一个类似于文件系统的试图, 可以通过操作文件系统的方式操作 Zookeeper

    • 使用路径获取 Znode

    • 获取 Znode 携带的数据

    • 修改 Znode 携带的数据

    • 删除 Znode

    • 添加 Znode

    • 等等...

Zookeeper 是分布式的

首先呢, Zookeeper 是分为服务端和客户端的, 客户端有 Java 的客户端, 有 Shell 命令行的客户端等, 客户端通过一个类似于文件系统的 API 来访问 Zookeeper 集群

但是事实上, 客户端最终是直接访问 Zookeeper 集群, 集群中有两大类角色, 一类是 Leader, 一类是 Follower, 其实就是主从, Leader 负责读和写, Follower 只能读, 遇到会产生修改的请求会转发给 Leader 处理, 这是因为 Zookeeper 本质上就是为了在分布式环境中对消息的一致性的支持, 而 Zookeeper 所基于的 ZAB 协议是 Paxos 协议的一个变种, ZAB 协议中是有一个全局的事务生成者, 就是 Leader, 修改设计到在分布式环境下对事务达成一致, 必须由 Leader 发起

举个例子?

比如说一个常见的分布式主从系统, 如果有 ZK 在的话, 主节点不需要和每个从节点保持连接, 只需要监听从节点创建的 Znode, 便可以知道谁在线

Zookeeper 能做什么?

  • 发布订阅

  • 命名服务

  • 分布式锁

  • 分布式协调

7.2 Zookeeper安装

服务器IP 主机名 myid的值
192.168.174.100 node01 1
192.168.174.110 node02 2
192.168.174.120 node03 3

Zookeeper的概述相关推荐

  1. clickhouse官方文档_clickhouse分析:zookeeper减压概述

    点击上方蓝字关注我们 " 使用复制表之后,随着数据量的增加,zookeeper是瓶颈?这个问题估计任何一个对ch关注的人都会看到,当然解决这个问题是需要花费较大精力的.本次我主要想分享ch官 ...

  2. Zookeeper详细概述及使用

    1.Zookeeper综述 2.Zookeeper基础 3-1.Zookeeper原生客户端 3-2.ZkClient 3-3.Curator 4.Zookeeper高级进阶 5-1.服务注册与发现( ...

  3. clickhouse分析:zookeeper减压概述

    前言:编译使用的clickhouse版本为: 19.5.3.1,本次测试比较主要以这个版本为主,鉴于clickhouse更新速度快,新版本的使用还需多查看release的更新日志. 问题描述 使用复制 ...

  4. ZooKeeper分布式应用程序的分布式协调服务:概述,入门,发布版本

    ZooKeeper概述适用于客户端开发人员,管理员和贡献者的技术概述文档 概述 -ZooKeeper的鸟瞰图,包括设计概念和体系结构 入门 -教程风格的指南,供开发人员安装,运行和编程到ZooKeep ...

  5. [2021]Zookeeper getAcl命令未授权访问漏洞概述与解决

    今天在漏洞扫描的时候蹦出来一个zookeeper的漏洞问题,即使是非zookeeper的节点,或者是非集群内部节点,也可以通过nc扫描2181端口,获取极多的zk信息.关于漏洞的详细描述参考apach ...

  6. Hadoop集群高可用及zookeeper+kafka组件搭建

    目录 一.Hadoop集群高可用 1.Zookeeper概述 1)Zookeeper基本概述 3)Zab协议 3)observer 4)zookeeper集群图例 2.zookeeper集群搭建 3. ...

  7. 分布式系统的可靠协调系统——Zookeeper

    文章目录 一.zookeeper简介 1.1 zookeeper的概述 1.2 Zookeeper的定义 1.3 Zookeeper的工作机制 1.4 Zookeeper 的特点 1.5 zookee ...

  8. Zookeeper系列(一)

    一.ZooKeeper的背景 1.1 认识ZooKeeper ZooKeeper---译名为"动物园管理员".动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观 ...

  9. 一文带你了解Zookeeper基本概念、集群搭建、使用方法

    本文图文并茂的描述了:zookeeper是什么,演示了Zookeeper集群如何搭建.Zookeeper常用命令的使用.如何查看Zookeeper日志:详细描述了Zookeeper数据模型.watch ...

最新文章

  1. IMXRT 分散加载文件 修改OCRAM,DTCM、ITCM大小
  2. html中怎样引入外部字体文件路径,CSS引入外部字体
  3. dp括号匹配 网易面试题_面试题:大括号验证
  4. 好久不更新这个博客了。
  5. Bezier曲线扫盲
  6. matlab7.0的序列号
  7. 联系人存储ContactsProvider表分析
  8. Python 爬虫对链家网广州二手房源信息的处理与可视化分析
  9. 三维空间中点到点、点到直线、点到平面的距离计算
  10. cdlinux中minidwep的使用
  11. vscode自动生成项目目录结构
  12. 中医针灸学综合练习题库【10】
  13. 数据分析--企业的贤内助 附下载地址
  14. [文献阅读]Detecting Spacecraft Anomalies Using LSTMs and Nonparametric Dynamic Thresholding
  15. linux实践感悟与体会100字,掌上综素b5学科时间活动心得体会50字
  16. 鼠标事件(鼠标的各种处理事件)
  17. bugku:游戏过关
  18. 爬虫实战1:爬取糗事百科段子
  19. 无线射频专题《射频单位,功率单位与相对单位,瓦特,毫瓦,分贝,dBi,dBd,dBm》
  20. 基于区块链的Smart系统-题库及试卷管理模块的设计与开发

热门文章

  1. [bzoj4236]JOIOJI
  2. loadrunner录制脚本,页面无法显示
  3. IIs管理服务一直启动失败的原因之一
  4. syntax error: unexpected end of file
  5. Windows下的.NET+ Memcached安装
  6. IT牛人往事如烟之七大“先烈”
  7. 【JFreeChart】JFreeChart—输出柱形图
  8. Jmeter之事物控制器
  9. Unity3D——C#编译到运行的过程分析
  10. HTTP Content-Type类型