`

zookeeper学习(六)

 
阅读更多

     下面列举一些,ZooKeeper的命令操作实例:

 

连接server

  1. bin/zkCli.sh -server 10.1.39.43:4180  

列出指定node的子node

  1. [zk: 10.1.39.43:4180(CONNECTED) 9] ls /  
  2. [hello, filesync, zookeeper, xing, server, group, log]  
  3. [zk: 10.1.39.43:4180(CONNECTED) 10] ls /hello  
  4. []  

创建znode节点, 并指定关联数据

  1. create /hello world  

创建节点/hello, 并将字符串"world"关联到该节点中.

获取znode的数据和状态信息

 
  1. [zk: 10.1.39.43:4180(CONNECTED) 7] get /hello  
  2. world  
  3. cZxid = 0x10000042c  
  4. ctime = Fri May 17 17:57:33 CST 2013  
  5. mZxid = 0x10000042c  
  6. mtime = Fri May 17 17:57:33 CST 2013  
  7. pZxid = 0x10000042c  
  8. cversion = 0  
  9. dataVersion = 0  
  10. aclVersion = 0  
  11. ephemeralOwner = 0x0  
  12. dataLength = 5  
  13. numChildren = 0  

删除znode

 
  1. [zk: localhost:4180(CONNECTED) 13] delete /xing/item0000000001  
  2. [zk: localhost:4180(CONNECTED) 14] delete /xing                 
  3. Node not empty: /xing  

使用delete命令可以删除指定znode. 当该znode拥有子znode时, 必须先删除其所有子znode, 否则操作将失败. rmr命令可用于代替delete命令, rmr是一个递归删除命令, 如果发生指定节点拥有子节点时, rmr命令会首先删除子节点.

 

 使用-e参数指定创建ephemeral节点.

 
  1. [zk: localhost:4180(CONNECTED) 4] create -e /xing/ei world     
  2. Created /xing/ei  

使用-s参数指定创建sequence节点.

 
  1. [zk: localhost:4180(CONNECTED) 0] create -s /xing/item world  
  2. Created /xing/item0000000001  
  3. [zk: localhost:4180(CONNECTED) 1] create -s /xing/item world  
  4. Created /xing/item0000000002  
  5. [zk: localhost:4180(CONNECTED) 2] create -s /xing/item world  
  6. Created /xing/item0000000003  
  7. [zk: localhost:4180(CONNECTED) 3] create -s /xing/item world  
  8. Created /xing/item0000000004  

 ls命令. ls命令的第一个参数指定znode, 第二个参数如果为true, 则说明监听该znode的子节点的增减, 以及该znode本身的删除事件.

 
  1. [zk: localhost:4180(CONNECTED) 21] ls /xing true  
  2. []  
  3. [zk: localhost:4180(CONNECTED) 22] create /xing/item item000  
  4.   
  5. WATCHER::  
  6.   
  7. WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/xing  
  8. Created /xing/item  

get命令. get命令的第一个参数指定znode, 第二个参数如果为true, 则说明监听该znode的更新和删除事件.

 
  1. [zk: localhost:4180(CONNECTED) 39] get /xing true  
  2. world  
  3. cZxid = 0x100000066  
  4. ctime = Fri May 17 22:30:01 CST 2013  
  5. mZxid = 0x100000066  
  6. mtime = Fri May 17 22:30:01 CST 2013  
  7. pZxid = 0x100000066  
  8. cversion = 0  
  9. dataVersion = 0  
  10. aclVersion = 0  
  11. ephemeralOwner = 0x0  
  12. dataLength = 5  
  13. numChildren = 0  
  14. [zk: localhost:4180(CONNECTED) 40] create /xing/item item000  
  15. Created /xing/item  
  16. [zk: localhost:4180(CONNECTED) 41] rmr /xing  
  17.   
  18. WATCHER::  
  19.   
  20. WatchedEvent state:SyncConnected type:NodeDeleted path:/xing  

stat命令. stat命令用于获取znode的状态信息. 第一个参数指定znode, 如果第二个参数为true, 则监听该node的更新和删除事件.

 

ps:注意上面这个例子,在/xing下建立子节点的时候,/xing/item,watch并没有触发。因为getData对于子节点创建这种事件是不会触发的,详见:

http://wjy320.iteye.com/blog/2078655

 

分享到:
评论

相关推荐

    zookeeper 学习资料 中篇

    《Zookeeper学习资料 中篇》 Zookeeper,作为Apache Hadoop的一个子项目,是一个分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作...

    zookeeper 系列整理总结

    系列之五和六可能涉及ZooKeeper的运行机制和四字命令,四字命令是用于检查和调试ZooKeeper状态的简洁工具,如`stat`、`conf`、`envi`等,这些命令可以帮助管理员监控和诊断ZooKeeper集群。 ZooKeeper的命令行工具...

    zookeeper 入门学习(PPT)

    #### 六、与Zookeeper交互的方式 1. **命令行工具**:通过Zookeeper提供的命令行工具可以直接与Zookeeper服务进行交互,执行诸如创建节点、获取节点数据等操作。 2. **API绑定**:Zookeeper提供了多种编程语言的API...

    zookeeper, 分布式系统服务ZooKeeper的学习历程.zip

    六、ZooKeeper的应用场景 1. 分布式锁:利用ZooKeeper的临时节点特性,可以实现分布式锁,确保同一时刻只有一个客户端持有锁。 2. 分布式队列:通过顺序创建节点并监听前一个节点的删除事件,实现FIFO(先进先出)的...

    zookeeper指南

    在开始学习之前,读者需要具备良好的Java基础,因为Zookeeper服务器运行于Java虚拟机(JVM)之上,同时还需要对分布式处理和Linux环境有一定的了解。 #### 五、版权与免责声明 本教程版权归TutorialsPoint(I)Pvt.Ltd...

    zookeeper-3.4.8源码包

    《深入剖析Zookeeper 3.4.8源码》 Zookeeper作为一个分布式协调服务,是Apache Hadoop项目的重要组成部分,广泛应用于...通过学习源码,开发者可以更好地利用Zookeeper解决实际问题,并为未来的系统设计提供灵感。

    zookeeper教程

    #### 六、Zookeeper 数据结构与命令 Zookeeper 的数据结构类似于文件系统,具有以下特点: - **层次化目录结构**:Zookeeper 使用类似文件系统的层级目录结构来组织数据。 - **节点类型**:节点分为持久节点...

    Zookeeper入门到精通 教学视频及文档

    《Zookeeper入门到精通》教学视频及文档涵盖了分布式协调...通过学习《Zookeeper入门到精通》的教学视频和文档,你将全面掌握Zookeeper的基础知识,并能灵活运用到实际的分布式系统开发和运维中,提升你的IT技能水平。

    大数据之Zookeeper视频

    通过对Zookeeper的学习和掌握,可以更好地理解其在Hadoop生态系统中的应用,同时也能为解决实际项目中的问题提供有效的解决方案。无论是对于开发人员还是运维人员来说,掌握Zookeeper都是非常有价值的。希望通过对...

    zookeeper入门学习

    六、Zookeeper与Java的结合 在Java中,可以使用Zookeeper的Java客户端ZKClient或Curator框架来操作Zookeeper。这些库提供了更友好的API,简化了与Zookeeper的交互过程,例如创建会话、注册Watcher、操作Znode等。 ...

    hadoop_zookeeper-3.4.10.rar linux用

    《Hadoop ZooKeeper 3.4.10在Linux环境中的应用详解》 Apache ZooKeeper是Hadoop生态系统中一个至关重要的组件,它是一款...通过深入学习和实践,我们可以充分利用ZooKeeper的能力,提升分布式应用的稳定性和可靠性。

    zookeeper-3.4.7

    《Zookeeper-3.4.7:分布式协调服务的核心解析》 Zookeeper是Apache软件基金会的一个开源项目,作为...通过深入学习和理解其源码,开发者能更好地利用Zookeeper解决分布式系统中的各种挑战,提升系统的稳定性和效率。

    ZooKeeper 运维

    在IT行业中,ZooKeeper是一个广泛使用的分布式协调服务,它为分布式应用提供了高效且可靠的命名服务、配置管理、集群同步、领导选举等...此外,持续学习和关注ZooKeeper的更新与最佳实践也是提升运维能力的重要途径。

    zookeeper客户端原理代码操作应用场景

    "05第五次课程"可能会讨论到Zookeeper在分布式环境中的应用案例,"06第六次课程"可能进一步深化了实际场景的应用,而"michael-vip"可能是一份关于Zookeeper进阶或实战的资料。 总的来说,Zookeeper客户端是实现...

    Apache Zookeeper Essentials-iteblog.com.pdf

    #### 六、学习本书的价值 通过学习本书,读者不仅能够获得关于Apache ZooKeeper的基础知识和实践经验,还能够了解到如何有效地利用这一工具解决分布式系统中的常见问题。无论是对于初学者还是有一定经验的开发者来...

    ZooKeeper源码

    六、ZooKeeper的应用场景 1. 分布式锁:利用临时节点实现共享锁,保证同一时刻只有一个客户端获取锁。 2. 配置管理:集中存储和分发应用配置,简化运维工作。 3. 名称服务:提供分布式应用的命名服务,解决服务发现...

    Zookeeper从入门到精通课程资源(未加密)

    通过学习《Zookeeper从入门到精通课程资源》,你可以深入了解Zookeeper的工作原理,掌握其核心功能,以及如何在分布式系统中有效利用Zookeeper解决实际问题。配合提供的"zookeeper视频汇总.txt",系统学习将更加高效...

Global site tag (gtag.js) - Google Analytics