0


zookeeper常用命令

zookeeper常用命令

1. 下载安装

  • 可以参考下面的文章: zookeeper安装与使用(win+linux).

2. 配置说明

2.1 配置

  • 如下:# The number of milliseconds of each tick# zookeeper时间配置中的基本单位(毫秒)tickTime=2000# The number of ticks that the initial # synchronization phase can take# 允许 follower 初始化连接到 leader 最大时长,它表示tickTime时间倍数,即:initLimit * tickTimeinitLimit=10# The number of ticks that can pass between # sending a request and getting an acknowledgement# 允许 follower 与 leader 数据同步最大时长,它表示tickTime时间倍数syncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just # example sakes.# zookeeper 数据存储目录及日志保存目录(如果没有指明dataLogDir,则日志也保存到这个文件夹中)# dataDir=/tmp/zookeeperdataDir=/home/susu/soft/softWare/zk/apache-zookeeper-3.5.9-bin/dataDir# the port at which the clients will connect# 对客户端提供的端口号clientPort=2181# the maximum number of client connections.# increase this if you need to handle more clients# 单个客户端与zookeeper最大并发连接数# maxClientCnxns=60# Be sure to read the maintenance section of the # administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir# 保存数据快照数量,之外的将会被清除# autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature# 自动触发清除时间间隔,单位为小时。默认为0,表示不自动清除# autopurge.purgeInterval=1

3. zookeeper的常见命令

3.1 server端启动停止等命令

  1. 启动- 不指定配置文件启动./zkServer.sh start #进入bin目录下,直接执行此命令- 指定配置文件启动./zkServer.sh start ../conf/zoo.cfg
  2. 停止./zkServer.sh stop # 不指定文件./zkServer.sh stop ../conf/zoo.cfg # 指定文件
  3. 查看zk服务器的状态./zkServer.sh status在这里插入图片描述

3.2 客户端连接等命令

  1. 启动server之后,连接客户端,连接客户端命令./zkCli.sh./zkCli.sh -server127.0.0.1:2181
  2. 退出客户端命令:quit # 注意:不加分号

3.3 客户端简单常用命令

3.3.1 查看目录(查看数据结构)

  • 如下:ls /在这里插入图片描述

3.3.2 删除目录

  • 删除目录delete /aa # 下面没有子节点的,可以直接用 deletedeleteall /手机 # 下面有子节点的,用 deleteall在这里插入图片描述

3.3.3 创建目录

  1. 直接创建目录create /狗狗create /狗狗/边牧create /狗狗/边牧/麦兜在这里插入图片描述

3.3.4 创建目录并写入值 + 查看节点值

  • 如下:create /骆驼 园区2号get /骆驼在这里插入图片描述

3.3.5 设置节点值

  • 如下:set /猩猩 园外区-1号在这里插入图片描述

3.3.6 查询节点

3.3.6.1 普通查询
3.3.6.1.1 普通简单查询
  • 如下:get /骆驼 # 查询节点值ls /狗狗/边牧 # 查询其下的子节点
3.3.6.1.2 普通递归查询
  • 如下:ls-R /在这里插入图片描述
3.3.6.2 查询节点的详细信息
  • 查询含节点值的详细信息,如下:get -s /猩猩在这里插入图片描述
  • 解释: - 第一行显示:该节点的值- cZxid:创建节点的事务ID- ctime:创建节点的时间- mZxid:修改节点的事务ID- mtime:修改节点的时间(最近修改时间)- pZxid:添加和删除子节点的事务ID- cversion:cversion是指节点的子节点版本号,也就是说当一个节点的子节点发生变化时,cversion会自增。(即:每新增或删除一个子节点时,版本➕1)- dataVersion:dataVersion是指节点数据的版本号,当一个节点的数据发生变化时,dataVersion会自增。每更新一次数据(set一次即更新节点值),版本会➕1- aclVersion:此节点的权限版本- ephemeralOwner:如果当前节点是临时节点,该值是当前节点所有者的session id。如果节点不是临时节点,则值为零。- dataLength:节点内数据的长度(节点值)- numChildren:该节点的子节点个数
3.3.6.3 查询节点的详细信息2
  • 查询含子节点的,可以直接ls ,如下:ls-s /猩猩在这里插入图片描述

3.3.7 创建持久序号节点

  • 加选项 -s ,如下: create -s /bb/bb1在这里插入图片描述

3.3.8 创建临时节点

  • 什么是临时节点?临时节点是在会话结束后,自动被删除的,通过这个特性,zk可以实现服务注册与发现的效果。
  • 临时节点和普通节点的不同?临时节点如何维持心跳呢? - 在Zookeeper中,临时节点和持久节点是两种不同的节点类型。- 持久节点一旦创建,除非主动调用删除操作,否则会一直存储在Zookeeper上。- 而临时节点是与客户端会话绑定的,一旦客户端会话失效,这个客户端所创建的所有临时节点都会被移除。- 临时节点的特点是它们的生命周期与客户端会话相关,当客户端会话结束时,临时节点会被自动删除。而持久节点则会一直存在,直到被显式删除。- 看下面结构图理解临时节点和持久节点:在这里插入图片描述在这里插入图片描述
  • 创建临时节点的命令,如下:create -e /cc # 临时节点create -e-s /dd # 临时序号节点在这里插入图片描述在这里插入图片描述

3.4 权限设置——创建权限节点

3.4.1 步骤

  • 首先,使用 addauth digest 命令给当前会话添加一个认证用户,如下:addauth digest maidou # 不带密码addauth digest beita:123456 # 带密码在这里插入图片描述在这里插入图片描述

3.4.2 解释

  • 在ZooKeeper中,创建节点权限的命令可以使用以下命令:create \[-s\]\[-e\] path data acl 其中,path是要创建的节点路径,data是节点的数据,acl是节点的权限设置。权限设置可以使用以下格式:scheme:id:permission 其中,scheme是权限方案,id是授权的对象,permission是授予的权限。常用的权限包括: - c:创建权限,可以在当前节点下创建子节点- r:读权限,可以读取节点的内容及子节点- w:写权限,可以向节点写入数据- d:删除权限,可以删除节点的子节点- a:管理权限,可以设置节点的权限
  • 所以,创建节点权限的命令可以使用类似以下格式:create /path data scheme:id:permission

4. zookeeper 内部的数据模型

4.1 数据结构模型图

  • 如下:在这里插入图片描述
  • 解释 - zookeeper 中的数据是保存在节点上的,节点就是znode,多个znode之间构成一颗树的目录结构。zookeeper 的数据模型是什么样子的呢?它很像数据结构当中的树,也很像文件系统的目录。- 树是由节点组成,zookeeper 的数据存储也同样是基于节点,这种节点叫做znode。但是不同于树的节点,znode的引用方式是路径引用,类似于文件路径,如下:- 这样的层级结构,让每一个znode节点拥有唯一的路径,就像命名空间一样,对不同信息做出清晰的隔离。

5.

标签: zookeeper 分布式

本文转载自: https://blog.csdn.net/suixinfeixiangfei/article/details/131954790
版权归原作者 @素素~ 所有, 如有侵权,请联系我们删除。

“zookeeper常用命令”的评论:

还没有评论