zookeeper详解及常用命令

文章目录

    • Zookeeper具有的特性
      • 原子性
      • 数据一致性
      • 实时性
      • 可靠性
      • 独立性
  • zookeeper存储ZNode
      • 类型
        • 持久型
        • 临时型 -e
        • 顺序类型 -s
    • 角色
      • 领导者(leader)
      • 观察者(follower)
      • 追随者(observer)
      • 学习者(Learner)
      • 客户端(Client)
    • watcher:仿效观察者模式实现的Zookeeper的事件通知机制
        • 1:znode数据改变
        • 2:删除事件
        • 3:子目录节点增加删除事件
      • zookeeper常用命令
          • zookeeper启动命令 `zkServer.sh start`
          • zookeeper状态查看的命令: `zkServer.sh status`
          • zookeeper关闭的命令:`zkServer.sh stop`
          • 启动zookeeper客户端命令
          • 列出“/”下面的其它的节点
          • 创建临时节点,用quit命令退出或结束,会话节点消失
          • 创建顺序节点
          • 创建临时数据节点 ( 临时数据节点zookeeper重新启动后消失)
          • 通过名字获取节点
          • 删除指定名字的节点
          • 设置节点内容

从用途来说:Zookeeper是Apache组织下的高性能,分布式的应用协调服务框架,是google的chubby的一个开源实现。

Zookeeper具有的特性

原子性

更新只能成功或者失败,没有中间状态

数据一致性

为客户端展示同一个视图,这是zookeeper里面一个非常重要的功能

实时性

zookeeper不能保证两个客户端能公式得到刚更新的数据,如果需要最新数据,应该在读数据之前调用sync()接口

可靠性

如果消息被一台服务器接收,那么它将被所有的服务器接收。

独立性

各个Client之间互不干预

zookeeper存储ZNode

Znode是Zookeeper存储数据的数据单元

类型

持久型

持久Znode是在Zookeeper创建的Znode是永久存在的Znode;zookeeper即使重启也不会丢失

临时型 -e

临时Znode是客户端断开,这个客户端创建的Znode即被删除的Znode,当客户端创建了Znode,只被这个客户端占有使用;一旦客户端停止,断开,临时的znode会被删除

顺序类型 -s

顺序Znode是Zookeeper为创建的Znode名字后追加10位顺序数字的Znode防止名字冲突;节点后会跟随一个10位数字的顺序号

角色

领导者(leader)

负责进行投票的发起和决议,更新系统状态

观察者(follower)

用于接收客户请求并向客户端返回结果,在选主过程中参与投票。

追随者(observer)

可以接收客户端连接,将请求转发给leader节点。但Observer不参加投票的过程,只同步leader的状态。Observer的目的是为了广播系统,提速读取速度。

学习者(Learner)

是跟随者和观察者

客户端(Client)

请求发起方

watcher:仿效观察者模式实现的Zookeeper的事件通知机制

监听内容:

1:znode数据改变

2:删除事件

3:子目录节点增加删除事件

zookeeper常用命令

zookeeper启动命令 zkServer.sh start
zookeeper状态查看的命令: zkServer.sh status
zookeeper关闭的命令:zkServer.sh stop
启动zookeeper客户端命令
./zkCli.sh  -server ip:port

这里ip 指定是要连接的节点的ip地址。Ip:如ip是192.168.230.121 这条命令就写为,这里的端口号默认为2181.

./zkCli.sh  -server 192.168.230.121:2181
列出“/”下面的其它的节点
`ls /`
创建临时节点,用quit命令退出或结束,会话节点消失
create -e /name1  zhangsan  
创建顺序节点
create -s  /name2 lisi    
创建临时数据节点 ( 临时数据节点zookeeper重新启动后消失)
creae -e -s  /name3  wangwu
通过名字获取节点
get /name1  
删除指定名字的节点
rmr /name2 
设置节点内容
set /name3 zhangsan 

你可能感兴趣的:(6月份大数据学习,zookeeper了解,zookeeper,zookeeper常用命令,zookeeper命令)