zookeeper使用之-简单命令

已经安装好了zookeeper我们开始使用zk的命令
假设我们已经启动了zk

//我使用启动一个客户端
./zkCli.sh -server 139.129.201.48:2181 start
//退出客户端的连接
quit

zk上的简单操作
ls /   //列出root下所有的znode节点
create /workers "" //创建一个workers节点
delete /workers //删除一个workers节点

create -e /master "hotel.jd.com:2233" //创建一个临时的master节点
get /master //获得临时节点的信息
stat /master true

临时节点master的信息
[img]http://dl2.iteye.com/upload/attachment/0122/5097/8056fb68-8625-3e2e-84c9-bd66facf3936.jpg[/img]

znode可能由主进程子啊分配任务前创建,也可能由一个引导程序开始创建,不管这些是如何创建的,一旦这些节点存在了,主节点就需要见识这些子节点的变化
ls /master true //在主节点上调用stat命令前,通过参数true调用ls命令


创建一个从节点
create /worker ""
create /worker/worker.jd.com "worker1.jd.com:2244"

从节点现在已经准备就绪接收任务的分配

客户端角色
//客户端向系统中添加任务,假设就是请求从系统来运行cmd命令
create -s /tasks/task- "cmd"
ls /tasks/task-0000000000 true //执行完成后会创建一个从节点来确定执行完成任务因此客户需要监视状态znode的创建事件
create /assign ""
[zk: 139.129.201.48:2181(CONNECTED) 23] create /assign/worker1.jd.com ""
[zk: 139.129.201.48:2181(CONNECTED) 24] create /assign/worker1.jd.com/task-0000000000 ""
//从节点便开始检查新任务,并确认是否分配给自己
[zk: 139.129.201.48:2181(CONNECTED) 25] ls /assign/worker1.jd.com
//一旦从节点完成任务的执行,就会在tasks中添加一个状态znode,客户端接收到通知并检查执行
[zk: 139.129.201.48:2181(CONNECTED) 26] create /tasks/task-0000000000/status "done"
[zk: 139.129.201.48:2181(CONNECTED) 28] get /tasks/task-0000000000/status

客户端检查状态znode的信息,并确认任务的执行结果
[zk: 139.129.201.48:2181(CONNECTED) 29] get /tasks/task-0000000000
"cmd"
cZxid = 0x11
ctime = Tue Jan 10 14:55:46 CST 2017
mZxid = 0x11
mtime = Tue Jan 10 14:55:46 CST 2017
pZxid = 0x16
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 5
numChildren = 1
[zk: 139.129.201.48:2181(CONNECTED) 30] get /tasks/task-0000000000/status
"done"
cZxid = 0x16
ctime = Tue Jan 10 15:29:59 CST 2017
mZxid = 0x16
mtime = Tue Jan 10 15:29:59 CST 2017
pZxid = 0x16
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 6
numChildren = 0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值