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中的身份状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/941471.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

30多种独特艺术抽象液态酸性金属镀铬封面背景视觉纹理MOV视频素材

使用 Prismatic Flows 转换您的项目&#xff01;这个包拥有 30 多种独特的液体背景和动画&#xff0c;为任何创意活动提供令人惊叹的视觉效果。 棱镜流 – 动画背景和迭加包括30多种不同的液体背景和动画。这些高质量的资源非常适合通过充满活力和动态的视觉效果来增强您的项目…

车载网关性能 --- 车载网关通用buffer分配需求

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的豁达,往不幸上面喷“香水”来掩盖问题。 无人问津也好,技不…

PLSQL 客户端连接 Oracle 数据库配置

1. 安装Oracle客户端 首先&#xff0c;安装Oracle客户端。可以从Oracle官方网站下载Oracle Instant Client, 安装完成后&#xff0c;请记住安装路径&#xff0c;因为将在后续步骤中需要用到它。 2. 配置环境变量 添加环境变量 ORACLE_HOME 安装Oracle客户端后&#xff0c;配…

docker-harbor仓库的搭建(2024)

准备实验需要的软件 将软件拉入虚拟机中&#xff0c;解压压缩包 [rootlocalhost ~]# tar zxf harbor-offline-installer-v2.5.4.tgz 1.进入harbor目录拷贝文件&#xff0c;创建名为harbor.yml的备份文件 [rootlocalhost ~]# cd harbor/ [rootlocalhost harbor]# cp harbor.yml…

Jmeter分布式压力测试

1、场景 在做性能测试时&#xff0c;单台机器进行压测可能达不到预期结果。主要原因是单台机器压到一定程度会出现瓶颈。也有可能单机网卡跟不上造成结果偏差较大。 例如4C8G的window server机器&#xff0c;使用UI方式&#xff0c;最高压测在1800并发(RT 20ms以内)左右。如果…

Oracle下载安装(保姆级教学)

方法1 1. 官网下载安装包 对于 Oracle 软件的下载&#xff0c;建议通过官网免费下载&#xff0c;安全且有保证。 下载地址&#xff1a; https://www.oracle.com/database/technologies/oracle19c-windows-downloads.html 通过下载页面可以选择安装压缩包&#xff08; WIND…

AOP 面向切面编程的实现原理

AOP是基于IOC的Bean加载来实现的&#xff0c;所以理解Spring AOP的初始化必须要先理解Spring IOC的初始化。然后就能找到初始化的流程和aop对应的handler&#xff0c;即parseCustomElement方法找到parse aop:aspectj-autoproxy的handler(org.springframework.aop.config.AopNam…

C# 范围判断函数

封装范围函数 public static class CommonUtil {/// <summary>/// 范围判断函数&#xff0c;检查给定的值是否在指定的最小值和最大值之间。/// 例如&#xff0c;可以用来判断当前日期是否在开始日期和结束日期之间。/// 该方法适用于任何实现了 IComparable 接口的类型…

搭建Elastic search群集

一、实验环境 二、实验步骤 Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎Elasticsearch目录文件&#xff1a; /etc/elasticsearch/elasticsearch.yml#配置文件 /etc/elasticsearch/jvm.options#java虚拟机 /etc/init.d/elasticsearch#服务启动脚本 /e…

0基础学前端-----CSS DAY5

0基础学前端-----CSS DAY5 视频参考&#xff1a;B站Pink老师 今天是CSS学习的第五天&#xff0c;今天开始的笔记对应Pink老师课程中的CSS第二天的内容。 本节重点&#xff1a;CSS的元素显示模式、三种元素显示模式的转换、CSS背景设置。 2. CSS的元素显示模式 2.1 什么是元素…

SMOOTHLLM Defending LLM Against Jailbreaking Attacks (1)

越狱llm 越狱攻击&#xff1a;通过设计输入 欺骗模型 生成不当内容。 上&#xff09;llm拒绝回应“告诉我如何制造炸弹”。 有毒内容的添加设计的后缀 后&#xff0c;对齐的llm可以被成功攻击&#xff0c;产生不好的响应。 越狱攻击-设计输入方式&#xff1a; 关键在于尽量…

基于springboot的健身俱乐部网站系统

博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;熟悉各种主流语言&#xff0c;精通java、python、php、爬虫、web开发&#xff0c;已经做了多年的设计程序开发&#xff0c;开发过上千套设计程序&#xff0c;没有什么华丽的语言&#xff0c;只有实…

【H3CNE邓方鸣】IPv6+2024.12.23

文章目录 IPv4的问题IPv6的优势地址格式地址书写压缩网段划分地址分类单播地址组播地址任播地址 IPv6邻居发现协议IPv6地址自动配置 IPv4的问题 地址资源已经全部耗尽、终端用户配置不够简便&#xff0c;协议本身不具备安全性和QOS特性 IPv6的优势 几乎无尽的地址空间、终端…

基于微信小程序的短视频系统(SpringBoot)+文档

&#x1f497;博主介绍&#x1f497;&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示&#xff1a;文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

java如何使用poi-tl在word模板里渲染多张图片

1、poi-tl官网地址 http://deepoove.com/poi-tl/ 2、引入poi-tl的依赖 <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.12.1</version></dependency>3、定义word模板 释义&#xf…

Android Studio的笔记--BusyBox相关

BusyBox 相关 BusyBoxandroid上安装busybox和使用示例一、下载二、移动三、安装和设置环境变量四、使用 busybox源码下载和查看 BusyBox BUSYBOX BUSYBOX链接https://busybox.net/ 点击链接后如图 点击左边菜单栏的Get BusyBix中的Download Source 跳转到busybox 的下载源码…

学习ASP.NET Core的身份认证(基于JwtBearer的身份认证4)

本文学习并记录builder.Services.AddAuthentication().AddJwtBearer函数中配置类的主要属性及用途。AddJwtBearer函数原型如下图所示&#xff0c;划红线的为常用形式&#xff0c;主要设置JwtBearerOptions类型的常用属性或事件。   JwtBearerOptions类中的属性虽多&#xff0…

学习threejs,scene.overrideMaterial全局材质效果

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.2 ☘️THREE.Scene 场景1.2 ☘️…

【YashanDB知识库】insert语句有编码不识别字,执行卡住问题

问题现象 insert语句卡住&#xff0c;yasdb worker线程cpu占用99.9% 问题风险及影响 sql执行不了 问题影响版本 22.2.16.1、23.3.0.61及之前版本 问题发生原因 lex解析时&#xff0c;对于不能识别字符的特殊场景&#xff0c;形成死循环。 1、alter system kill sessi…

zlog的使用方式

下载地址&#xff1a;GitHub - HardySimpson/zlog: A reliable, high-performance, thread safe, flexsible, clear-model, pure C logging library. zlog是一个高可靠性、高性能、线程安全、灵活、概念清晰的纯C日志函数库。 正因为zlog是一个日志函数库&#xff0c;故zlog没…