zookeeper客户端的使用

(1)   首先找到zookeeper自带客户端的位置

简单来说,zookeeper自带客户端位于zookeeper安装目录的bin目录下,以我的为例:

(2)   运行zkCli.sh,建立和zookeeper服务端的连接

1 # ./zkCli.sh –timeout 100 –r –server ip:port

1 -timeout 100     timeout指定当前client与zkserver的连接超时时间(毫秒),如果在给定时间内zkserver没有client端发来的心跳,则连接失效;
3 -r               只读模式,Client只读取zk数据;不指定则Client可以读和写
5 -server ip:port  要连接哪一台zkserver,port默认2181. Zk由多台机器组成,连接任意一台看到的zk上的数据都是相同的(统一视图)

正常连接zkserver后,Client上看到的提示信息,最后一行提示信息会表示,已经连接到指定的zkserver,  当前的session id=0(全局内唯一的session)

(3)   不记得能用哪些命令和zkserver交互,问问它吧

[zk: slave1:2181(CONNECTED) 0] help

Zookeeper提供给Client使用的命令和操作数据库的命令非常类似,可以简单归类为:增、删、改、查4个大类

查询命令

查询子节点列表   ls path

和linux命令类似, 将列出绝对路径path下的所有子节点信息(列出1级,并不递归)

查询节点状态  stat path

将列出绝对路径path对应的znode节点的状态信息,也就是znode元数据

[zk: slave1:2181(CONNECTED) 0] stat /zookeeper

注: pZxid表示该节点的子节点列表,最后一次被更新的时间(事务ID),新增子节点,删除子节点都会导致pZxid被刷新

增强版的ls path       ls2 path

ls2 path返回的信息包括2部分:子节点列表 + 当前节点的stat信息

查询节点保存的数据  get path

列出节点保存的数据,以及节点的元数据(相当于get path内部调用了stat path)

创建命令

create [-s] [-e] path data acl

path       要创建的znode绝对路径
data       znode保存的数据
acl        znode的访问权限
-s         要创建的znode是顺序节点
-e         要创建的znode是临时节点
-s  -e     临时的顺序节点(没有指定类型则是永久节点)

创建永久节点

[zk: slave1:2181(CONNECTED) 0] create /node_1 123     # 永久节点

在上一节点的基础上创建1个临时子节点

[zk: slave1:2181(CONNECTED) 0] create –e /node_1/node_1_1 456

临时子节点会在client端退出后,被zk自动删除

[zk: slave1:2181(CONNECTED) 0] quit
# ./zkCli.sh –timeout 5000 –server slave:2181
[zk: slave1:2181(CONNECTED) 0] ls /node_1        #空

创建1个顺序节点,写入数据123  白色是zk自动添加的序列号,10位数字

[zk: slave1:2181(CONNECTED) 0] create –s /node_1/node_1_1

再创建1个序列节点,相同path,  zk自动添加序列号

顺序节点会一直保留,client退出zk并不删除节点

创建1个临时顺序节点

[zk: slave1:2181(CONNECTED) 0] create –e–s /node_1/node_1_1

Client退出并重新连接zk, 临时顺序节点在Client退出后自动删除

修改命令

set path data [version]

version    手工指定znode的数据版本号(version), 默认zk对version自动从0开始累加

第一次修改znode数据,dataversion自动加1

第二次修改znode数据,dataversion自动加1

第三次修改znode数据,手动写入的版本号必须和当前版本号相同,否则报错

修改节点数据,并手动写入当前版本号后,zk还是自动递增数据版本号

总结:如果Client在手工指定版本为当前版本号的基础上,还是运行出错,说明期间已经有另外的client对该节点的数据进行了更新

 

删除命令

rmr path

特点:递归删除

delete  path [version]

特点:删除的节点不能有子节点

配额命令

setquota –n|-b value path

Zk允许我们设置znode的数据长度以及子节点个数
*-n  value       设置znode的子节点个数,number
*-b  value       设置znode的数据长度,byte

注意:超过配额的子节点可以创建成功,zk只是在log中记录一条警告信息(-b, -n都是只报警)

Zookeeper安装目录下的bin目录中的zookeeper.out中记录

listquota  path

查看指定znode的配额

Stat中的count=自己+子节点个数, bytes=自己+子节点数据长度

delquota –n|-b  path

删除path表示的znode上指定类型的配额

其他命令

[zk] connect host:port    # 连接另一个zkserver[zk] close                # 关闭connect方式的连接[zk] history              # 列出执行过的历史命令[zk] redo 编号             # 再次执行history中编号对应的命令

转载于:https://www.cnblogs.com/shay-zhangjin/p/7759263.html

04_zookeeper客户端使用及常用命令相关推荐

  1. ftp文件服务器客户端,ftp文件服务器客户端访问及常用命令

    FTP是一个C/S类型的软件,连接服务端需要FTP客户端才能完成,常见的FTP客户端有以下几种: 浏览器:可以通过浏览器中输入 ftp://ip或者ftp://域名的方式3分钟了解计算机发展历史-组团 ...

  2. Redis(2) redis-cli 客户端操作Redis - 常用命令大全

    使用redis-cli 客户端操作redis redis是一个key-value的Nosql,我们能操作就只有String类型key以及各种类型value.但是一定要注意我们添加的一般都是字符串,只是 ...

  3. Redis获取客户端 服务器信息常用命令

    AUTH password 通过设置配置文件中 requirepass 项的值(使用命令 CONFIG SET requirepass password ),可以使用密码来保护 Redis 服务器. ...

  4. 【Metasploit】MSF常用命令

    Meterpreter基本概念 Meterpreter是Metasploit框架中的一个扩展模块,在攻击成 功以后给我们返回一个控制通道,是metsploit后渗透必不可少的 ,它具有强大的功能,包括 ...

  5. Redis连接命令,Redis安全策略,Redis客户端(client)命令,Redis服务器命令

    目录 Redis连接命令详解 Redis连接命令 连接命令应用 Redis安全策略 命令配置密码 手动配置密码 指令安全 端口安全 SSH代理 Redis客户端(client)命令 Redis IO多 ...

  6. Docker客户端常用命令整理

    之前在 https://blog.csdn.net/fengbingchun/article/details/109584460 中介绍过在Windows10家庭版和Ubuntu16.04上安装Doc ...

  7. Influxdb安装、启动influxdb控制台、常用命令、Influx命令使用、Influx-sql使用举例、Influxdb的数据格式、Influxdb客户端工具

    目录: Influxdb安装 1 1.1. Influxdb下载 2 1.2. 解压tar包 2 1.3. 修改配置文件 2 1.4. 配置文件参数说明 3 1.5. 实际配置(主要是修改路径和端口) ...

  8. HDFS命令行客户端使用,命令行客户端支持的命令参数,常用命令参数介绍

    3.HDFS的shell(命令行客户端)操作 3.1 HDFS命令行客户端使用 HDFS提供shell命令行客户端,使用方法如下: [toto@hadoop hadoop-2.8.0]$ hdfs d ...

  9. PostgreSQL客户端psql常用命令

    使用psql客户端访问数据库, 列出了psql常用命令和参数. 常用命令 -- 使用指定用户和IP端口登陆 psql -h 10.43.159.11 -p 5432 -U postgres -W -- ...

  10. un7.28:redis客户端常用命令。

    安装完成Redis,我们就可以操作Redis,实现数据的CRUD(增删改查)了.这需要用到Redis客户端常用的一些命令,我给大家分享最常用的一些. 一.Redis命令行客户端 1.输入命令进入,命令 ...

最新文章

  1. 大话设计模式—观察者模式
  2. js调用.net后台事件,和后台调用前台等方法总结
  3. 无需代码,图文并茂详解EEGLAB中的ERPs数据分析方法
  4. Stimulsoft Reports.Web 2022.2.3 Crack
  5. 北京精雕现状_北京精雕科技有限公司怎么样?
  6. 玩转数据魔方之数据安全治理进阶指南
  7. 99个互联网常用词汇,建议收藏“食用”
  8. [论文解读 IJCAI 19] LogAnomaly Unsupervised Detection of Sequential and Quantitative Anomalies
  9. 上海家政圈已经这么卷了吗。。。
  10. 梯度,散度,旋度的具体物理意义
  11. 移动端多页面APP(MPA)开发体验
  12. Android 内存暴减的秘密?!
  13. 如何评估服务器基础性能 - CPU负载、使用率、内存磁盘使用率、网络带宽......
  14. 带你了解地址分配DHCP,IP地址管理方式及分配原则
  15. Clipboard.js 实现点击复制
  16. matlab 嵌套循环
  17. 机器学习:决策树-基础算法,剪枝,连续值缺失值处理,多变量决策树(附代码实现)
  18. kaggle竞赛 | 计算机视觉 | Doodle Recognition Challenge
  19. **华大单片机HC32使用Jlink下载程序(免币)**
  20. 冷原子量子计算机,量子计算新突破:在71个格点超冷原子量子模拟器中求解施温格方程...

热门文章

  1. hdu 3925 一道复杂的简单题
  2. 大屏样式(全屏禁止滚动)
  3. Jaspersoft 与springboot结合生成一维码,二维码
  4. Kafka配置3--Windows下配置Kafka集群
  5. 经典排序算法(十一)--堆排序Heap Sort
  6. 微型计算机三级项目,微机原理三级项目.doc
  7. linux查看日志内存,关于linux查询内存,CPU,存储空间和日志查询的的常用命令及参数-站长资讯中心...
  8. 创建区块计算次数_以太坊创建者Vitalik Buterin为飙升的ETH交易费用提供扩展解决方案...
  9. (day 28 - 哈希表 )剑指 Offer 50. 第一个只出现一次的字符
  10. 使用root登陆到mysql后执行_如何让mysql以root用户远程登陆mysql数据库