当前位置: 首页 > news >正文

Zookeeper基本命令解析

 ZooKeeper -server host:port -client-configuration properties-file cmd args
    addWatch [-m mode] path # optional mode is one of [PERSISTENT, PERSISTENT_RECURSIVE] - default is PERSISTENT_RECURSIVE
    addauth scheme auth

一、整体命令格式

  1. ZooKeeper -server host:port -client -configuration properties - file cmd args

    • 含义
      • 这是ZooKeeper客户端启动并执行命令的一种格式。
      • -server host:port:指定要连接的ZooKeeper服务器的主机名(host)和端口号(port)。例如,如果ZooKeeper服务器运行在本地的2181端口,可以写成-server localhost:2181
      • -client -configuration properties - file:用于指定客户端配置属性文件。这个文件包含了一些客户端的配置信息,如连接超时时间、会话超时时间等相关设置。
      • cmd args:表示要执行的ZooKeeper命令(cmd)以及命令所需的参数(args)。例如,ls /是一个命令(ls为查看节点命令)和参数(/为要查看的节点路径)的组合。

二、addWatch相关命令

  1. addWatch [-m mode] path # optional mode is one of [PERSISTENT, PERSISTENT_RECURSIVE] - default is PERSISTENT_RECURSIVE

    • 含义
      • 这个命令用于对指定的path(路径)添加观察(watch)。
      • [-m mode]mode是可选参数,有两种模式可供选择。PERSISTENT模式表示持久化观察,这种观察在被触发一次之后不会自动删除,仍然会持续观察节点的变化;PERSISTENT_RECURSIVE模式是持久化递归观察,它不仅会持续观察指定节点的变化,还会观察该节点下所有子节点的变化,默认情况下如果不指定模式,就是PERSISTENT_RECURSIVE模式。例如,如果执行addWatch -m PERSISTENT /my/node,就会对/my/node以持久化模式添加观察。

三、addauth相关命令

  1. addauth scheme auth

    • 含义
      • 这个命令用于添加身份验证信息。
      • scheme:是身份验证的方案类型。例如,在ZooKeeper中可以使用digest方案,这是一种基于用户名和密码的摘要认证方式。
      • auth:是与所选认证方案相关的认证数据。如果是digest方案,可能是类似username:password经过摘要算法处理后的字符串。例如,如果用户名是user1,密码是pass1,经过摘要处理后得到的字符串作为auth参数,执行addauth digest <摘要后的字符串>来向ZooKeeper服务器提供身份验证信息,以便进行后续权限相关的操作。

    close 
    config [-c] [-w] [-s]
    connect host:port
    create [-s] [-e] [-c] [-t ttl] path [data] [acl]
    delete [-v version] path
    deleteall path [-b batch size]
    delquota [-n|-b|-N|-B] path
    get [-s] [-w] path
    getAcl [-s] path
    getAllChildrenNumber path
    getEphemerals path
    history 
    listquota path
    ls [-s] [-w] [-R] path
    printwatches on|off
    quit 
    reconfig [-s] [-v version] [[-file path] | [-members serverID=host:port1:port2;port3[,...]*]] | [-add serverId=host:port1:port2;port3[,...]]* [-remove serverId[,...]*]
    redo cmdno
    removewatches path [-c|-d|-a] [-l]
    set [-s] [-v version] path data
    setAcl [-s] [-v version] [-R] path acl
    setquota -n|-b|-N|-B val path
    stat [-w] path
    sync path
    version 
    whoami

一、基础连接与操作相关命令

  1. close

    • 含义
      • 用于关闭当前与ZooKeeper服务器的连接。当执行此命令后,客户端将断开与ZooKeeper服务器的连接,不再能够发送请求或接收响应。
  2. config

    • [-c] [-w] [-s]
      • 含义
        • 用于获取或设置ZooKeeper服务器的配置信息。-c表示输出配置的变化信息;-w表示在配置发生变化时等待通知;-s表示输出配置信息的摘要。通过这个命令,可以查看和管理ZooKeeper服务器的一些运行参数,如tickTime、initLimit、syncLimit等。
  3. connect host:port

    • 含义
      • 用于连接到指定的ZooKeeper服务器。其中host是ZooKeeper服务器的主机名或IP地址,port是ZooKeeper服务器的端口号(通常为2181)。如果当前客户端已经连接到一个服务器,执行此命令可以切换连接到其他服务器。

二、数据节点操作相关命令

  1. create [-s] [-e] [-c] [-t ttl] path [data] [acl]
    • [-s] [-e] [-c] [-t ttl]
      • 含义
        • -s表示创建顺序节点。顺序节点在ZooKeeper中会根据创建顺序在节点名后自动添加一个单调递增的序号。-e表示创建临时节点,临时节点的生命周期与创建它的客户端会话相关,当客户端会话结束时,临时节点会被自动删除。-c表示创建容器节点(在某些ZooKeeper版本中支持)。-t ttl用于设置节点的生存时间(Time - To - Live),超过这个时间节点将被自动删除(如果支持)。
    • path [data] [acl]

      • 含义
        • path是要创建的节点的路径,例如/my/nodedata是要存储在节点中的数据,可以是任意字节数组(在命令行中通常以字符串形式表示)。acl是访问控制列表(Access Control List),用于定义对节点的访问权限。
  2. delete [-v version] path

    • [-v version]
      • 含义
        • 用于删除指定路径的节点。-v version表示指定节点的版本号,如果不指定版本号,将删除最新版本的节点。版本号机制有助于在并发操作时确保数据的一致性,只有当指定的版本号与节点当前版本号匹配时,删除操作才会成功。
  3. deleteall path [-b batch size]

    • [-b batch size]
      • 含义
        • 用于递归删除指定路径及其所有子节点。-b batch size表示批量删除的大小,在某些情况下可以提高删除操作的效率,特别是当子节点数量较多时。
  4. get [-s] [-w] path

    • [-s] [-w]
      • 含义
        • 用于获取指定路径节点的数据内容。-s表示同时获取节点的状态信息,如节点的创建时间、修改时间、版本号等。-w表示对节点设置数据变更的观察(watch),当节点数据发生变化时,客户端将收到通知。
  5. set [-s] [-v version] path data

    • [-s] [-v version]
      • 含义
        • 用于设置指定路径节点的数据内容。-s表示同时获取节点的状态信息更新(如更新后的版本号等)。-v version表示指定节点的版本号,只有当指定的版本号与节点当前版本号匹配时,设置操作才会成功,这有助于防止数据的并发冲突。

三、权限与配额相关命令

  1. addauth scheme auth

    • 含义
      • 用于添加身份验证信息。scheme是身份验证的方案,如digest(基于用户名和密码的摘要认证)等,auth是与认证方案相关的认证数据。通过这个命令,客户端可以向ZooKeeper服务器提供身份验证信息,以便进行权限相关的操作。
  2. getAcl [-s] path

    • [-s]
      • 含义
        • 用于获取指定路径节点的访问控制列表(ACL)。-s表示同时获取节点的状态信息。ACL定义了哪些用户或用户组对节点具有何种操作权限,如读、写、创建子节点等权限。
  3. setAcl [-s] [-v version] [-R] path acl

    • [-s] [-v version] [-R]
      • 含义
        • 用于设置指定路径节点的访问控制列表(ACL)。-s表示同时获取节点的状态信息更新。-v version表示指定节点的版本号,只有当指定的版本号与节点当前版本号匹配时,设置操作才会成功。-R表示递归设置ACL,即对指定路径节点及其所有子节点设置相同的ACL。
  4. delquota [-n|-b|-N|-B] path

    • [-n|-b|-N|-B]
      • 含义
        • 用于删除指定路径节点的配额限制。-n表示删除节点数量的配额限制;-b表示删除字节数的配额限制;-N表示删除节点数量的非递归配额限制;-B表示删除字节数的非递归配额限制。配额限制可以用来控制节点的数量或数据量,防止节点过度增长。
  5. setquota -n|-b|-N|-B val path

    • -n|-b|-N|-B val
      • 含义
        • 用于设置指定路径节点的配额限制。-n表示设置节点数量的配额;-b表示设置字节数的配额;-N表示设置非递归的节点数量配额;-B表示设置非递归的字节数配额。val是要设置的配额值。

四、观察(watch)与监控相关命令

  1. addWatch [-m mode] path # optional mode is one of [PERSISTENT, PERSISTENT_RECURSIVE] - default is PERSISTENT_RECURSIVE

    • [-m mode]
      • 含义
        • 用于对指定路径的节点添加观察(watch)。mode可以是PERSISTENT(持久化观察,即使触发一次观察后也不会自动删除)或PERSISTENT_RECURSIVE(持久化递归观察,对节点及其所有子节点进行持久化观察,默认模式)。当节点发生符合观察条件的变化时(如数据变化、子节点变化等),客户端将收到通知。
  2. printwatches on|off

    • 含义
      • 用于开启或关闭观察(watch)的打印功能。当设置为on时,客户端在收到观察通知时会打印相关信息;当设置为off时,则不会打印观察通知信息。
  3. removewatches path [-c|-d|-a] [-l]

    • [-c|-d|-a] [-l]
      • 含义
        • 用于移除对指定路径节点的观察(watch)。-c表示移除连接级别的观察;-d表示移除数据级别的观察;-a表示移除所有类型的观察。-l表示列出当前的观察设置情况。

五、其他命令

  1. getAllChildrenNumber path

    • 含义
      • 用于获取指定路径节点的所有子节点的数量。这个命令可以快速获取某个节点下的子节点数量情况,对于一些需要统计子节点数量的应用场景很有用。
  2. getEphemerals path

    • 含义
      • 用于获取指定路径节点下的所有临时节点。临时节点在ZooKeeper中有特殊的用途,如表示某个客户端的会话状态等,通过这个命令可以查看特定节点下的临时节点情况。
  3. history

    • 含义
      • 用于查看在当前ZooKeeper客户端会话中执行过的命令历史记录。这有助于回顾之前执行过的操作,方便调试和重复执行某些命令。
  4. listquota path

    • 含义
      • 用于列出指定路径节点的配额限制情况。可以查看节点是否设置了节点数量、字节数等配额限制,以及当前的使用情况是否接近配额限制。
  5. ls [-s] [-w] [-R] path

    • [-s] [-w] [-R]
      • 含义
        • 用于列出指定路径节点的子节点。-s表示同时获取子节点的状态信息;-w表示对子节点设置数据变更的观察(watch);-R表示递归列出子节点,即列出指定路径节点及其所有子节点的子节点情况。
  6. reconfig [-s] [-v version] [[-file path] | [-members serverID=host:port1:port2;port3[,...]]] | [-add serverId=host:port1:port2;port3[,...]] [-remove serverId[,...]*]

    • [-s] [-v version] [[-file path] | [-members serverID=host:port1:port2;port3[,...]]] | [-add serverId=host:port1:port2;port3[,...]] [-remove serverId[,...]*]
      • 含义
        • 用于重新配置ZooKeeper集群。-s表示同时获取配置信息的状态更新。-v version表示指定配置的版本号。-file path表示从指定的文件中读取新的集群配置信息。-members serverID = host:port1:port2;port3[,...]*用于指定集群成员的详细信息,包括服务器ID、主机名、端口等。-add serverId = host:port1:port2;port3[,...]用于添加新的服务器成员到集群中。-remove serverId[,...]*用于从集群中移除服务器成员。这个命令可以动态地调整ZooKeeper集群的成员构成和配置信息。
  7. redo cmdno

    • 含义
      • 用于重新执行之前执行过的命令。cmdno是命令历史记录中的命令编号,可以通过history命令获取。这个命令在需要重复执行某个操作或者纠正之前操作的错误时很有用。
  8. stat [-w] path

    • [-w]
      • 含义
        • 用于获取指定路径节点的状态信息。-w表示对节点设置状态变更的观察(watch),当节点的状态(如创建时间、修改时间、版本号等)发生变化时,客户端将收到通知。
  9. sync path

    • 含义
      • 用于强制同步指定路径节点的数据。在ZooKeeper中,数据的同步是自动进行的,但在某些特殊情况下(如网络故障后恢复),可以使用这个命令来确保节点数据在本地客户端与服务器之间的一致性。
  10. version

  • 含义
    • 用于获取ZooKeeper服务器的版本信息。可以了解当前使用的ZooKeeper的具体版本,这对于兼容性和功能支持方面的判断很有帮助。
  1. whoami

  • 含义
    • 用于获取当前客户端在ZooKeeper中的身份标识。这个标识可以与身份验证和权限管理相关联,了解当前客户端在ZooKeeper中的身份状态。

相关文章:

Zookeeper基本命令解析

ZooKeeper -server host:port -client-configuration properties-file cmd args addWatch [-m mode] path # optional mode is one of [PERSISTENT, PERSISTENT_RECURSIVE] - default is PERSISTENT_RECURSIVE addauth scheme auth 一、整体命令格式 ZooKeeper -serve…...

RustDesk远程及自建服务器搭建教程

要开始使用RustDesk远程和自建服务器&#xff0c;你需要遵循以下步骤&#xff1a; 下载和安装RustDesk&#xff1a;RustDesk是一款开源的远程支持应用程序。你可以在其官方网站&#xff08;https://rustdesk.com/&#xff09;上下载适用于你的操作系统的安装程序。安装过程非常…...

广州大彩串口屏安卓/linux触摸屏四路CVBS输入实现同时显示!

一、适用范围 适合广州大彩A40系列产品 产品型号&#xff1a; 二、概述 CVBS只需要一条线缆即可完成视频信号的传输&#xff0c;具有兼容性强、使用简单、成本低廉等优点。典型分辨率为720x480&#xff08;NTSC制&#xff09;或720x576&#xff08;PAL制&#xff09;。 三、…...

Python:模拟(包含例题)

模拟题&#xff1a;直接按照题目含义模拟即可&#xff0c;一般不涉及算法 注意&#xff1a; 1.读懂题&#xff1a;理清楚题目流程 2.代码和步骤一一对应&#xff1a;变量名&#xff0c;函数名&#xff0c;函数功能 3.提取重复的部分&#xff0c;写成对应的函数&#xff08;…...

Python OCR 文字识别

一.引言 文字识别&#xff0c;也称为光学字符识别&#xff08;Optical Character Recognition, OCR&#xff09;&#xff0c;是一种将不同形式的文档&#xff08;如扫描的纸质文档、PDF文件或数字相机拍摄的图片&#xff09;中的文字转换成可编辑和可搜索的数据的技术。随着技…...

阿里巴巴2017实习生笔试题(二)

阿里巴巴2017实习生笔试题&#xff08;二&#xff09; 2024/12/25 1.下面哪一个不是动态链接库的优点&#xff1f; B A.共享 B.装载速度快 C.开发模式好 D.减少页面交换 解析 1 静态链接库的优点 (1) 代码装载速度快&#xff0c;执行速度略比动态链接库快&#xff1b;…...

Docker安装与使用

文章目录 0.关键词1.安装docker2.镜像和容器3.Docker基础1.常见命令2.数据卷&#xff08;volume&#xff09;要解决的问题&#xff1a;什么是数据卷&#xff1a;解决的办法&#xff1a; 3.数据卷的使用基本命令挂载数据卷&#xff08;nginx&#xff09;基于本地目录数据挂载&am…...

通过nginx设置一个图片服务器,并使用 Nginx 作为反向代理

通过nginx设置一个图片服务器&#xff0c;并使用 Nginx 作为反向代理 安装nginx 首先需要去官网下载一个nginx&#xff0c;我这里下载了最新的稳定版本&#xff1a;nginx-1.26.2&#xff0c;下载下来是一个压缩包&#xff0c;解压之后就可以直接用了。 修改nginx的配置文件 …...

MacOS M3源代码编译Qt6.8.1

编译时间过长&#xff0c;如果不想自己编译&#xff0c;可以通过如果网盘进行下载&#xff1a; 链接: https://pan.baidu.com/s/17lvF5jQ-vR6vE-KEchzrVA?pwdts26 提取码: ts26 在macOS上编译Qt 6需要一些前置步骤和工具。以下是编译Qt 6的基本步骤&#xff1a; 安装Xcode和…...

【Pytorch实用教程】PyTorch 自带的数据集全面解读

下面这篇博客文章将带你快速了解 PyTorch 自带(或官方维护)的各类常用数据集,并介绍它们的使用方法,包括图像、文本和音频数据集。希望能帮助你在项目中快速上手并提高效率。 一、为什么要使用 PyTorch 自带的数据集? 1. 方便、快捷 官方维护的数据集通常已经帮助我们做好…...

Flask使用的正例和反例

Flask使用的正例和反例 文章目录 Flask使用的正例和反例一 &#xff0c; 使用注册异常二 &#xff0c; 新增数据成功后要返回新增数据的id三&#xff0c; 模型查询语句抽取成函数四&#xff0c; 业务逻辑函数传递的参数不应该用字典类型&#xff0c;要传不同字段的参数&#xf…...

2024年河北省职业院校技能大赛云计算应用赛项赛题第2套(私有云)

#需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包…...

我的软件架构师——Java 职位面试经历。

最近,我参加了一家领先的服务型公司的软件架构师(Java)职位的面试。我在这里分享了一些面试官问我的问题。我只列出了与 Java 相关的问题,因为本文主要关注 Java。面试官问我有关 AWS、Docker、Kubernetes、Kafka、Elastic Search、SQL/NoSQL 和设计模式的问题。 ClassNotF…...

npm error code ETIMEDOUT

参考:https://blog.csdn.net/qq_38572963/article/details/142052986 二、解决办法 1、清空缓存 npm cache clean --force 2、查看当前的npm镜像设置 npm config get registry 3、切换新镜像源 npm config set registry https://registry.npmmirror.com 4、查看新源是否设置成功…...

(11)(3.2) ESC信号问题

文章目录 前言 1 信号电平不足 2 感应噪声 3 ESC过电压尖峰 4 ESC固件错误 前言 本页讨论了 ESC 信号的几个潜在问题&#xff0c;这些问题可能导致不可靠的操作&#xff0c;甚至在起飞时坠毁。这些主要发生在较大的四轮飞机上&#xff0c;这些飞机从动力和自动驾驶仪到 E…...

Postman最新接口自动化持续集成

学习地址&#xff1a;https://www.bilibili.com/video/BV1VDC5Y7EJA?spm_id_from333.788.videopod.episodes&vd_source336a0b0a2ff09832b3a55c3599ffb193&p9 1、旧版&#xff1a;PostmanNewmanAllureJenkins 缺点&#xff1a;需要安装较多软件&#xff0c;脚步需要手…...

windows nacos安装配置

GitHub下载压缩包 解压目录&#xff08;注意不要用中文路径&#xff09; 在mysql先创建数据库nacos&#xff0c;再执行sql脚本 配置数据库 #*************** Config Module Related Configurations ***************# ### If use MySQL as datasource: ### Deprecated conf…...

重温设计模式-外观模式和适配器模式的异同

文章目录 目的不同适配器模式&#xff1a;外观模式&#xff1a; 结构和实现方式不同适配器模式&#xff1a;外观模式&#xff1a; 对客户端的影响不同适配器模式&#xff1a;外观模式&#xff1a; 目的不同 适配器模式&#xff1a; 主要目的是解决两个接口不兼容的问题&#…...

数据中台从centos升级为国产操作系统后,资源增加字段时,提交报500错误

文章目录 背景一、步骤1.分析阶段2.查看nginx3.修改用户&#xff08;也可以修改所有者权限&#xff09; 背景 故障报错&#xff1a; nginx报错信息&#xff1a; 2024/12/19 15:25:31 [crit, 500299#0: *249 onen0 " /var/lib/nginx/tmp/cient body/0000000001" f…...

云原生后端开发(一)

云原生后端开发 云原生&#xff08;Cloud-Native&#xff09;是指一种构建和运行应用程序的方式&#xff0c;它充分利用了云计算的特点&#xff0c;比如弹性伸缩、自动化部署、容器化等。在云原生的架构下&#xff0c;后端应用通常具备高度可扩展、可维护、易于自动化管理的特…...

论文阅读(六)Open Set Video HOI detection from Action-centric Chain-of-Look Prompting

论文来源&#xff1a;ICCV&#xff08;2023&#xff09; 项目地址&#xff1a;https://github.com/southnx/ACoLP 1.研究背景与问题 开放集场景下的泛化性&#xff1a;传统 HOI 检测假设训练集包含所有测试类别&#xff0c;但现实中存在大量未见过的 HOI 类别&#xff08;如…...

机器人学基础——正运动学(理论推导及c++实现)

机器人正运动学 机器人正运动学一般是指从机器人的关节位置到基于参考坐标系下末端执行器的位置。 平移变换和旋转变换 平移变换 假设我们有两个坐标系A和B&#xff0c;坐标系A与B的方位相同&#xff0c;xyz轴的指向都是一致的&#xff0c;即没有旋转变换。有一点p&#xf…...

java CompletableFuture创建异步任务(Completable异步+ExecutorService线程池)

文章目录 前置自定义线程池使用 CompletableFuture 创建异步任务 前置 来自 import java.util.concurrent.CompletableFuture; 自定义线程池 推荐根据业务需求配置 ExecutorService pool new ThreadPoolExecutor(10, // 核心线程数20, // 最大线程数60L, TimeUnit.SECONDS…...

Compose原理 - 整体架构与主流程

一、整体架构 在官方文档中&#xff08;Jetpack Compose 架构层 | Android Developers&#xff09;&#xff0c;对Compose的分层有所阐述&#xff1a; 其中 Runtime&#xff1a;提供Compose的基础运行能力&#xff0c;包括State、Side-effects、CompositionLocal、Compositio…...

【C/C++】面试常考题目

面试中最常考的数据结构与算法题&#xff0c;适合作为刷题的第一阶段重点。 ✅ 分类 & 推荐题目列表&#xff08;精选 70 道核心题&#xff09; 一、数组 & 字符串&#xff08;共 15 题&#xff09; 题目类型LeetCode编号两数之和哈希表#1盛最多水的容器双指针#11三数…...

爬虫入门:从基础到实战全攻略

&#x1f9e0; 一、爬虫基础概念 1.1 爬虫定义 爬虫&#xff08;Web Crawler&#xff09;是模拟浏览器行为&#xff0c;自动向服务器发送请求并获取响应数据的一种程序。主要用于从网页中提取结构化数据&#xff0c;供后续分析、展示或存储使用。 1.2 爬虫特点 数据碎片化&…...

Flask项目进管理后台之后自动跳回登录页面,后台接口报错422,权限问题

今天准备部署一个python项目&#xff0c;先从代码仓down下来本地测了一下&#xff0c;发现登录成功后又自动跳回登录页了&#xff0c;然后后台接口报错422显示没权限&#xff0c;应该是token解析时出错&#xff0c;但是开发这个项目的同事是没问题的。 本来以为是浏览器或者配…...

回头看,FPGA+RK3576方案的功耗性能优势

作者&#xff1a;Hello,Panda 各位朋友&#xff0c;大家好&#xff0c;熊猫君这次开个倒车&#xff0c;在这个广泛使用Xilinx&#xff08;Altera&#xff09;高端SoC的时代&#xff0c;分享一个“FPGAARM”实现的低功耗高性能传统方案。 图1 瑞芯微RK3576电路 当前&#xff0c…...

华为OD机试真题—— 最少数量线段覆盖/多线段数据压缩(2025A卷:100分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 A卷 100分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C++、C语言、GO六种语言的最佳实现方式! 2025华为OD真题目录+全流程解析/备考攻略/经验分享 华为OD机试真题《最少数量线段覆盖/多线段数…...

React---day3

React 2.5 jsx的本质 jsx 仅仅只是 React.createElement(component, props, …children) 函数的语法糖。所有的jsx最终都会被转换成React.createElement的函数调用。 createElement需要传递三个参数&#xff1a; 参数一&#xff1a;type 当前ReactElement的类型&#xff1b;…...