Zookeeper02——数据结构与命令行操作

本文详细介绍了Zookeeper的数据结构,包括znode的组成和特性,以及如何使用Zookeeper的命令行工具进行节点的创建、修改、删除和查看等操作。通过实际案例,深入解析了znode的状态信息和版本控制机制。
1.Zookeeper的数据结构
  • Zookeeper的数据结构和文件的目录结构类似,主要区别是文件的目录结构中,目录和文件是区分开的,但是Zookeeper的数据树节点既是路径,也存储文件。
  • Zookeeper的数据结构如下图所示:Zookeeper的DataTree
    • 所有的node都从根节点 / 创建,zookeeper的节点称为znode。
    • 每个znode的组成结构包含:
      • path:节点的全路径(没有相对路径的说法)
      • stat:节点的状态信息(重点)。
      • data:节点下存储的数据(不一定有值)。
    • 从上图可以看出,znode可同时存储数据也可以有子节点。
    • 下图是通过Zookeeper的客户端对znode节点进行get后的输出信息(除第一行是data数据,其他就是znode的stat信息):znode的数据信息
      • 第一行:9527是节点存储的数据。
      • cZxid:znode创建时的事务id(16进制)。
      • ctime:znode创建的时间。
      • mZxid:znode最后一次修改的事务id。
      • mtime:最后一次修改的时间。
      • pZxid:数据节点的子节点列表,最后一次被修改的事务id
        • 即在一个znode下创建一个子znode,可以看到子znode的cZxid,mZxid,pZxid都等于这个值,其中cZxid不会改变,另外mZxid,pZxid进行相应的操作会发生变更。
      • cversion:子节点的版本号。
      • dataVersion:数据节点的版本号,变更一次加1。
      • aclVersion:数据的ACL(权限控制列表)版本号,变更一次加1。
      • ephemeralOwner:如果是临时节点,则表示该节点创建的会话id,否则为0x0(ephemeralOwner = 0x169843156830000)。
      • dataLength:数据长度(中文1个字表示3个字节长度)。
      • numChildren:子节点的数据长度。
    2.Zookeeper的命令行操作
    • 在通过zookeeper提供的客户端登录脚本{zookeeper_home}\bin\ zkCli.sh连接到zookeeper服务后,输入 help可以看到zookeeper支持的命令。
    • zookeeper命令行操作,支持的命令如图:在这里插入图片描述
    • Zookeeper的命令行操作可以和其提供的API库一一对应起来,先学习其命令行工具,再转回查看其客户端库的API会十分方便理解。
  • Zookeeper的客户端端命令:
    • 连接zookeeper服务:
      • ./zkCli.sh -server ip:port
      • 连接成功后,连接其他zookeeper服务:connect host:port
    • 创建命令:
      • znode节点分为临时有序两种组合类型,即存在临时节点,临时有序节点,持久节点,持久有序节点。
      • 临时节点:create -e /test "" -e表示临时节点,只在当次会话存在,会话消失则删除。
      • 临时有序节点:create -e -s /test "" -s表示节点有序,有序是指对创建节点的名称后拼接一个有序自增数。如示例命令创建节点名称为/test0000000111
      • 创建节点时,去除-e参数,则分别表示持久节点和持久有序节点。
    • 修改命令:
      • set path data [version]:针对指定的路径进行重新赋值,上图中有一个可选参数 version,为前面介绍的znode的stat信息中dataVersion的值,操作时指定这个值,则必须在操作znode的dataVersion值等于指定值时,修改指令才能生效。
    • 删除命令
      • delete path [version]:其中version作用和修改命令中的一致,delete只能删除没有子节点的znode。
      • rmr path:删除指定节点,及其子节点。
    • 查看命令:
      • get path [watch]:查看znode的data和stat信息。其中可选参数watch,表示是否在此节点设置监视点,true或false。在进行修改命令操作时会触发监听器,监听器只能被触发一次,如果需要再次监听,需要重新设置监听。
      • ls path [watch]:查看znode下的子znode。也可以设置监听器,对子节点的创建删除进行监听。
      • stat path [watch]:查看前面介绍的znode的stat信息,设置的监听器,监听该节点的数据变化。
      • ls2:为get和stat的结合。
    • 权限命令
      • 见下一篇博客
    • 配额命令
      • 后续博客更新。

PS:欢迎各位留言交流~~

内容概要:本文档是一份关于交换路由配置的学习笔记,系统地介绍了网络设备的远程管理、交换机路由器的核心配置技术。内容涵盖Telnet、SSH、Console三种远程控制方式的配置方法;详细讲解了VLAN划分原理及Access、Trunk、Hybrid端口的工作机制,以及端口镜像、端口汇聚、端口隔离等交换技术;深入解析了STP、MSTP、RSTP生成树协议的作用配置步骤;在路由部分,涵盖了IP地址配置、DHCP服务部署(接口池全局池)、NAT转换(静态动态)、静态路由、RIPOSPF动态路由协议的配置,并介绍了策略路由和ACL访问控制列表的应用;最后简要说明了华为防火墙的安全区域划分基本安全策略配置。; 适合人群:具备一定网络基础知识,从事网络工程、运维或相关技术岗位1-3年的技术人员,以及准备参加HCIA/CCNA等认证考试的学习者。; 使用场景及目标:①掌握企业网络中常见的交换路由配置技能,提升实际操作能力;②理解VLAN、STP、OSPF、NAT、ACL等核心技术原理并能独立完成中小型网络搭建调试;③通过命令示例熟悉华为设备CLI配置逻辑,为项目实施和故障排查提供参考。; 阅读建议:此笔记以实用配置为主,建议结合模拟器(如eNSP或Packet Tracer)动手实践每一条命令,对照拓扑理解数据流向,重点关注VLAN间通信、路由选择机制、安全策略控制等关键环节,并注意不同设备型号间的命令差异。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值