第2章 客户端使用之zkcli.sh

源码:https://github.com/shawntime/shawn-zookeeper-utils
wiki地址:https://github.com/shawntime/shawn-zookeeper-utils/wiki

zkcli.sh连接Zookeeper集群

客户端连接命名

./zkcli.sh -timeout 0 -r -server host:port

  • timeout:连接超时时间,单位:ms
  • r:当超过半数服务器失去连接时,zk集群无法写入,但可以提供只读操作
  • server:服务器ip和端口
./zkcli.sh -timeout 5000 -server 192.168.1.102:2181

命令集合
    ZooKeeper -server host:port cmd args  

    stat path [watch]:查询节点状态
    set path data [version]:修改节点数据
    ls path [watch]:查询子节点列表
    delquota [-n|-b] path:删除额定设置,-n为子节点个数,-b为节点数据长度
    ls2 path [watch]:查询子节点列表+获取节点stat
    setAcl path acl:设置节点权限
    setquota -n|-b val path:节点额定设置,-n为子节点个数,-b为节点数据长度
    history:显示之前操作列表
    redo cmdno:配合history使用,重新执行某一步骤的cmdno
    printwatches on|off
    delete path [version]:删除节点
    sync path
    listquota path:显示节点额定列表
    rmr path:递归删除节点
    get path [watch]:获取节点数据
    create [-s] [-e] path data acl:创建节点
    addauth scheme auth
    quit:退出
    getAcl path:获取节点权限
    close:关闭当前会话
    connect host:port:连接另一台服务器
查询

ls path [watch]:查询出path的子节点列表
ls2 path [watch]:查询出path的子节点列表和当前节点stat信息

节点信息

stat path [watcher]:查询节点信息

[zk: localhost:2181(CONNECTED) 2] stat /node_2
// cZxid:创建节点事务id
cZxid = 0x100000002e
// ctime:创建时间
ctime = Tue Mar 20 23:37:02 CST 2018
// mZxid:最新修改节点事务id
mZxid = 0x100000002e
// mtime:修改时间
mtime = Tue Mar 20 23:37:02 CST 2018
// 子节点事务id
pZxid = 0x100000003a
// 
cversion = 4
// 更新数据版本号,update/delete命名根据该版本号进行乐观锁操作
dataVersion = 0
// 权限版本号
aclVersion = 0
ephemeralOwner = 0x0
// 节点上数据长度
dataLength = 3
// 子节点个数
numChildren = 2
创建节点

create [-s] [-e] path data acl
-s:顺序节点
-e:临时节点

[zk: localhost:2181(CONNECTED) 4] create -e -s /node_2/node_2_10 shawntime  
Created /node_2/node_2_100000000003
修改节点

set path data [version]
version:不设置默认为-1,设置了必须在与stat中dataVersion相等的时才会修改成功,乐观锁的实现

[zk: localhost:2181(CONNECTED) 9] set /node_2/node_2_100000000003 dfsfsdk 1
version No is not valid : /node_2/node_2_100000000003
[zk: localhost:2181(CONNECTED) 10] set /node_2/node_2_100000000003 dfsfsdk 0
cZxid = 0x1200000005
ctime = Fri Mar 23 22:20:42 CST 2018
mZxid = 0x1200000009
mtime = Fri Mar 23 22:23:49 CST 2018
pZxid = 0x1200000005
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x16253274de40001
dataLength = 7
numChildren = 0
删除节点

delete path [version]:如果删除节点有子节点则无法删除,version用法与update相同
rmr path:递归删除

[zk: localhost:2181(CONNECTED) 13] ls /node_2
[node_2_100000000003, node_2_1, node_2_2]
[zk: localhost:2181(CONNECTED) 14] delete /node_2
Node not empty: /node_2
[zk: localhost:2181(CONNECTED) 15] delete /node_2/node_2_100000000003 2
version No is not valid : /node_2/node_2_100000000003
[zk: localhost:2181(CONNECTED) 16] delete /node_2/node_2_100000000003 0
version No is not valid : /node_2/node_2_100000000003
[zk: localhost:2181(CONNECTED) 17] delete /node_2/node_2_100000000003 1
[zk: localhost:2181(CONNECTED) 18] rmr /node_2
获取节点数据

get path [watch]

[zk: localhost:2181(CONNECTED) 22] get /node_3
123
cZxid = 0x1000000035
ctime = Tue Mar 20 23:41:12 CST 2018
mZxid = 0x1000000035
mtime = Tue Mar 20 23:41:12 CST 2018
pZxid = 0x1000000035
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,598评论 18 139
  • 一、ZooKeeper的背景 1.1 认识ZooKeeper ZooKeeper---译名为“动物园管理员”。动物...
    algernoon阅读 9,051评论 1 106
  • 1 Zookeeper概述# ZooKeeper是一个为分布式应用所设计的分布的、开源的协调服务,它主要是用来解决...
    七寸知架构阅读 7,339评论 0 101
  • 黄豆:富含大豆卵磷脂,是女性逆生长的必备食品。 东西南北中,无人不爱它,一日可以无肉,不可无豆。 今天就用干粉做黄...
    徐董丽英阅读 725评论 0 0
  • 这样的距离刚好 我们可以看见拥抱 当黑暗扎进眼球 我开始写作 我的诗不像它们 它接触纸面 成为词 成为词与词间丑陋...
    金不搭阅读 221评论 0 4