问题导读
1.ZooKeeper包含哪些经常使用命令?
2.经过什么命令能够列出服务器 watch 的详细信息?
3.ZooKeeper包含哪些操做?
4.ZooKeeper如何建立zookeeper?

经常使用命令
php
ZooKeeper 支持某些特定的四字命令字母与其的交互。它们大可能是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在
客户端能够经过 telnet 或 nc 向 ZooKeeper 提交相应的命令。 ZooKeeper 经常使用四字命令见下表 1 所示:
表 1 : ZooKeeper 四字命令
ZooKeeper 四字命令
|
功能描述
|
conf
|
输出相关服务配置的详细信息。
|
cons
|
列出全部链接到服务器的客户端的彻底的链接 / 会话的详细信息。包括“接受 / 发送”的包数量、会话 id 、操做延迟、最后的操做执行等等信息。
|
dump
|
列出未经处理的会话和临时节点。
|
envi
|
输出关于服务环境的详细信息(区别于 conf 命令)。
|
reqs
|
列出未经处理的请求
|
ruok
|
测试服务是否处于正确状态。若是确实如此,那么服务返回“imok ”,不然不作任何相应。
|
stat
|
|
wchs
|
列出服务器 watch 的详细信息。
|
wchc
|
经过 session 列出服务器 watch 的详细信息,它的输出是一个与watch 相关的会话的列表。
|
wchp
|
经过路径列出
服务器 watch 的详细信息。它输出一个与 session相关的路径。
|
下图 1 是 ZooKeeper 四字命令的简单用例:
<ignore_js_op>
图 1 : ZooKeeper 四字命令用例
命令行工具:
当启动 ZooKeeper 服务成功以后,输入下述命令,链接到 ZooKeeper 服务:
- zkCli.sh –server 10.77.20.23:2181
复制代码
链接成功后,系统会输出 ZooKeeper 的相关环境以及配置
信息,并在屏幕输出“ Welcome to ZooKeeper”等信息。
输入 help 以后,屏幕会输出可用的 ZooKeeper 命令,以下图 1 所示:
<ignore_js_op>
图 1 : ZooKeeper 命令
ZooKeeper的简单操做
1 )使用 ls 命令来查看当前 ZooKeeper 中所包含的内容:
- [zk: 10.77.20.23:2181(CONNECTED) 1] ls /
- [zookeeper]
复制代码
2 )建立一个新的 znode ,使用 create /zk myData 。这个命令建立了一个新的 znode 节点“ zk ”以及与它关联的字符串:
- <div style="text-align: left;"><span style="line-height: 1.5;">[zk: 10.77.20.23:2181(CONNECTED) 2] create /zk myData</span></div><div style="text-align: left;"><span style="line-height: 1.5;">Created /zk</span></div>
复制代码
3 )再次使用 ls 命令来查看如今 zookeeper 中所包含的内容:
- [zk: 10.77.20.23:2181(CONNECTED) 3] ls /
- [zk, zookeeper]
复制代码
此时看到, zk 节点已经被建立。
4 )下面咱们运行 get 命令来确认第二步中所建立的 znode 是否包含咱们所建立的字符串:
- [zk: 10.77.20.23:2181(CONNECTED) 4] get /zk
- myData
- Zxid = 0x40000000c
- time = Tue Jan 18 18:48:39 CST 2011
- Zxid = 0x40000000c
- mtime = Tue Jan 18 18:48:39 CST 2011
- pZxid = 0x40000000c
- cversion = 0
- dataVersion = 0
- aclVersion = 0
- ephemeralOwner = 0x0
- dataLength = 6
- numChildren = 0
复制代码
5 )下面咱们经过 set 命令来对 zk 所关联的字符串进行设置:
- [zk: 10.77.20.23:2181(CONNECTED) 5] set /zk shenlan211314
- cZxid = 0x40000000c
- ctime = Tue Jan 18 18:48:39 CST 2011
- mZxid = 0x40000000d
- mtime = Tue Jan 18 18:52:11 CST 2011
- pZxid = 0x40000000c
- cversion = 0
- dataVersion = 1
- aclVersion = 0
- ephemeralOwner = 0x0
- dataLength = 13
- numChildren = 0
复制代码
6 )下面咱们将刚才建立的 znode 删除:
- [zk: 10.77.20.23:2181(CONNECTED) 6] delete /zk
复制代码
7 )最后再次使用 ls 命令查看 ZooKeeper 所包含的内容:
- [zk: 10.77.20.23:2181(CONNECTED) 7] ls /
- [zookeeper]
复制代码
通过验证, zk 节点已经被删除。
文章转自:http://www.aboutyun.com/thread-9310-1-1.html