`
fantaxy025025
  • 浏览: 1308497 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

【Apache ZooKeeper】命令行zkCli.sh使用指南

 
阅读更多

 

from:http://blog.sina.com.cn/s/blog_790c59140102w6ho.html

zookeeper的客户端连接可以使用命令行和Java代码进行连接。记录下命令行的操作命令
一、命令行
(1)使用zookeeper安装bin目录下的./zkCli.sh连接到zookeeper服务器上,基本语法如下:
./zkCli.sh -timeout 0 -r -server ip:port
其中,-timeout表示当前会话的超时时间,zookeper依靠与客户端的心跳来判断会话是否有效,单位是毫秒
-r代表只读模式,zookeeper的只读模式指一个服务器与集群中过半机器失去连接以后,这个服务器就不在不处理客户端的请求,但我们仍然希望该服务器可以提供读服务。
-server,指定服务器ip地址和端口号
(2)h:查看帮助
Zookeeper客户端的命令操作
(3)ls,列出某一节点下的子节点信息
(4)stat,查看节点的状态信息
Zookeeper客户端的命令操作
在zookeeper中,每一次对节点的写操作都认为是一次事务,每一个事务,系统都会分配一个唯一的事务ID,czxid代表该节点被创建的事务ID,ctime表示创建的时间,mzxid表示最后一次被更新的事务ID,mtime是修改时间,pzxid表示子节点列表最后一次被更新的事务ID,cversion子节点的版本号,dataversion数据版本号,aclversion权限版本号,ephemeralOwner用于临时节点,代表临时节点的事务ID,如果为持久节点则为0,dataLength代表节点存储的数据的长度,numChildren当前节点的子节点个数。
(5)get,获取当前节点存储的数据内容
(6)ls2,列出当前节点的子节点,同时列出节点状态
(6)create,创建节点
-s,顺序节点
-e,临时节点
Zookeeper客户端的命令操作
(7)set,修改节点数据,可携带版本号
Zookeeper客户端的命令操作
修改的时候要么不携带版本号,要么携带的版本号要跟dataVersion的版本号一致,否则就会报错(类似于乐观锁机制)。
(8)delete,删除节点,只能删除没有子节点的节点,要删除含有子节点的时候需使用rmr命令
(9)rmr,删除节点
Zookeeper客户端的命令操作
(10)setquota,配额,给节点限制值,比如限制子节点个数、节点数据的长度
-n,限制子节点个数
-b,限制值的长度
Zookeeper客户端的命令操作
当创建节点超出配额时,zookeeper不会抛出异常,会在zookeeper.out记录警告信息
(11)listquota,查看配额,以及节点的配额状态
Zookeeper客户端的命令操作
(12)delquota,删除配额
(13)close,关闭当前连接
(14)history,查看历史执行指令
(15)redo,重复执行指令

 

 

from:http://blog.csdn.net/hackerwin7/article/details/38046085/

.sh 服务启动成功后查看具体节点信息,是否为leader。

bin/zkServer.sh status

使用客户端连接

bin/zkCli.sh server IP地址:2181

连接成功后,系统会输出 ZooKeeper 的相关环境以及配置信息,并在屏幕输出“ Welcome to ZooKeeper ”等信息。
输入 help 之后,屏幕会输出可用的 ZooKeeper 命令

help ZooKeeper-server host:port cmd args connect host:port get路径[watch]//得到节点数据 ls 节点路径[watch]//查看节点信息 set节点路径数据[版本整型值]//设置节点数据 delquota [-n|-b] path quit printwatches on|off create [-s][-e]节点路径节点数据 acl //创建一个新的节点 stat path [watch] close ls2 节点路径[watch]//查看节点信息并能看到更新次数等数据 history listquota path setAcl path acl getAcl path sync path redo cmdno addauth scheme auth delete节点路径[版本整型值]//删除节点 setquota -n|-b val path

 

from:http://www.tuicool.com/articles/Y3eame

【Apache ZooKeeper】命令行zkCli.sh使用指南

ZooKeeper命令行 
ZooKeeper的命令在/usr/lib/zookeeper/bin文件夹下 
查看具体结点信息 
bash zkServer.sh status 
root@ubuntu:/usr/lib/zookeeper/bin# bash zkServer.sh status 
JMX enabled by default 
Using config: /usr/lib/zookeeper/bin/../conf/zoo.cfg 
Mode: standalone 

查看哪个结点被选作leader或者follower 
echo stat|nc 127.0.0.1 2181 
root@ubuntu:/usr/lib/zookeeper/bin# echo stat|nc 127.0.0.1 2181  
Zookeeper version: 3.4.5-cdh4.4.0--1, built on 09/04/2013 01:46 GMT 
Clients: 
 /127.0.0.1:57736[0](queued=0,recved=1,sent=0) 

Latency min/avg/max: 0/0/0 
Received: 1 
Sent: 0 
Connections: 1 
Outstanding: 0 
Zxid: 0x0 
Mode: standalone 
Node count: 4 

测试是否启动了该Server,若回复imok表示已经启动 
echo ruok|nc 127.0.0.1 2181 
root@ubuntu:/usr/lib/zookeeper/bin# echo ruok|nc 127.0.0.1 2181 
imok 

ZooKeeper命令行类似于shell。 
当启动 ZooKeeper 服务成功之后,输入下述命令,连接到 ZooKeeper 服务: 
bash zkCli.sh –server 192.168.255.133:2181 

root@ubuntu:/usr/lib/zookeeper/bin# bash zkCli.sh -server 192.168.255.133:2181 
Connecting to 192.168.255.133:2181 
2013-09-12 15:38:39,654 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.5-cdh4.4.0--1, built on 09/04/2013 01:46 GMT 
2013-09-12 15:38:39,657 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=ubuntu 
2013-09-12 15:38:39,659 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.6.0_43 
2013-09-12 15:38:39,660 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Sun Microsystems Inc. 
2013-09-12 15:38:39,662 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/usr/local/jdk1.6.0_43/jre 
2013-09-12 15:38:39,664 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/usr/lib/zookeeper/bin/../build/classes:/usr/lib/zookeeper/bin/../build/lib/*.jar:/usr/lib/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/usr/lib/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/usr/lib/zookeeper/bin/../lib/netty-3.2.2.Final.jar:/usr/lib/zookeeper/bin/../lib/log4j-1.2.15.jar:/usr/lib/zookeeper/bin/../lib/jline-0.9.94.jar:/usr/lib/zookeeper/bin/../zookeeper-3.4.5-cdh4.4.0.jar:/usr/lib/zookeeper/bin/../src/java/lib/*.jar:/usr/lib/zookeeper/bin/../conf: 
2013-09-12 15:38:39,665 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/local/jdk1.6.0_43/jre/lib/amd64/server:/usr/local/jdk1.6.0_43/jre/lib/amd64:/usr/local/jdk1.6.0_43/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib 
2013-09-12 15:38:39,667 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp 
2013-09-12 15:38:39,668 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA> 
2013-09-12 15:38:39,669 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux 
2013-09-12 15:38:39,670 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64 
2013-09-12 15:38:39,670 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=3.2.0-51-generic 
2013-09-12 15:38:39,672 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=root 
2013-09-12 15:38:39,672 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/root 
2013-09-12 15:38:39,673 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/usr/lib/zookeeper/bin 
2013-09-12 15:38:39,674 [myid:] - INFO  [main:ZooKeeper@438] - Initiating client connection, connectString=192.168.255.133:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@2666e815 
Welcome to ZooKeeper! 
JLine support is enabled 
2013-09-12 15:38:39,720 [myid:] - INFO  [main-SendThread(192.168.255.133:2181):ClientCnxn$SendThread@966] - Opening socket connection to server 192.168.255.133/192.168.255.133:2181. Will not attempt to authenticate using SASL (Unable to locate a login configuration) 
2013-09-12 15:38:39,729 [myid:] - INFO  [main-SendThread(192.168.255.133:2181):ClientCnxn$SendThread@849] - Socket connection established to 192.168.255.133/192.168.255.133:2181, initiating session 
[zk: 192.168.255.133:2181(CONNECTING) 0] 2013-09-12 15:38:39,748 [myid:] - INFO  [main-SendThread(192.168.255.133:2181):ClientCnxn$SendThread@1207] - Session establishment complete on server 192.168.255.133/192.168.255.133:2181, sessionid = 0x141102059a70001, negotiated timeout = 30000 

WATCHER:: 

WatchedEvent state:SyncConnected type:None path:null 

输入help显示帮助信息: 

help  
ZooKeeper -server host:port cmd args 
        connect host:port 
        get path [watch] 
        ls path [watch] 
        set path data [version] 
        rmr path 
        delquota [-n|-b] path 
        quit  
        printwatches on|off 
        create [-s] [-e] path data acl 
        stat path [watch] 
        close  
        ls2 path [watch] 
        history  
        listquota path 
        setAcl path acl 
        getAcl path 
        sync path 
        redo cmdno 
        addauth scheme auth 
        delete path [version] 
        setquota -n|-b val path 
[zk: 192.168.255.133:2181(CONNECTED) 1]  

连接成功后,系统会输出 ZooKeeper 的相关环境以及配置信息,并在屏幕输出“ Welcome to ZooKeeper ”等信息。

命令行工具的一些简单操作如下:

1 )使用 ls 命令来查看当前 ZooKeeper 中所包含的内容: 
[zk: 202.115.36.251:2181(CONNECTED) 1] ls / 
[zookeeper] 

2 )创建一个新的 znode ,使用 create /zk myData 。这个命令创建了一个新的 znode 节点“ zk ”以及与它关联的字符串: 
[zk: 202.115.36.251:2181(CONNECTED) 2] create /zk "myData" 
Created /zk  

3 )我们运行 get 命令来确认 znode 是否包含我们所创建的字符串: 
[zk: 202.115.36.251:2181(CONNECTED) 3] get /zk 
cZxid = 0x6 
ctime = Thu Sep 12 15:49:16 CST 2013 
mZxid = 0x7 
mtime = Thu Sep 12 15:49:38 CST 2013 
pZxid = 0x6 
cversion = 0 
dataVersion = 1 
aclVersion = 0 
ephemeralOwner = 0x0 
dataLength = 10 
numChildren = 0 

4 )下面我们通过 set 命令来对 zk 所关联的字符串进行设置: 
[zk: 202.115.36.251:2181(CONNECTED) 4] set /zk "zsl" 
"myData" 
cZxid = 0x4 
ctime = Thu Sep 12 15:46:37 CST 2013 
mZxid = 0x4 
mtime = Thu Sep 12 15:46:37 CST 2013 
pZxid = 0x4 
cversion = 0 
dataVersion = 0 
aclVersion = 0 
ephemeralOwner = 0x0 
dataLength = 8 
numChildren = 0 

5 )下面我们将刚才创建的 znode 删除: 
[zk: 202.115.36.251:2181(CONNECTED) 5] delete /zk 

当然,我们还可以创建有曾次的目录,比如使用create /zk/node1在zk目录下创建新的目录node1 
[zk: 192.168.255.133:2181(CONNECTED) 18] create /zk/node1 "node1" 
Created /zk/node1 
[zk: 192.168.255.133:2181(CONNECTED) 19] ls /zk 
[node1] 

使用ZooKeeper四字命令 

传递四个字母的字符串给ZooKeeper,ZooKeeper会返回一些有用的信息。

ZooKeeper 四字命令

功能描述

conf

输出相关服务配置的详细信息。

cons

列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。包括“接受 / 发送”的包数量、会话 id 、操作延迟、最后的操作执行等等信息。

dump

列出未经处理的会话和临时节点。

envi

输出关于服务环境的详细信息(区别于 conf 命令)。

reqs

列出未经处理的请求

ruok

测试服务是否处于正确状态。如果确实如此,那么服务返回“imok ”,否则不做任何相应。

stat

输出关于性能和连接的客户端的列表。

wchs

列出服务器 watch 的详细信息。

wchc

通过 session 列出服务器 watch 的详细信息,它的输出是一个与watch 相关的会话的列表。

wchp

通过路径列出服务器 watch 的详细信息。它输出一个与 session相关的路径。

 

 

例如:

root@ubuntu:/usr/lib/zookeeper/bin# echo conf |nc 192.168.255.133 2181     
clientPort=2181 
dataDir=/var/lib/zookeeper/version-2 
dataLogDir=/var/log/zookeeper/version-2 
tickTime=2000 
maxClientCnxns=50 
minSessionTimeout=4000 
maxSessionTimeout=40000 
serverId=0 

 

+

+

+

-

-

-

分享到:
评论

相关推荐

    1 zookeeper-3.4.7.tar.gz

    Zookeeper支持多种命令行工具,如`zkCli.sh`,用于交互式操作Zookeeper。通过这个客户端,你可以创建、删除、更新节点数据,以及查看Zookeeper的数据树。 总的来说,Zookeeper的安装和启动过程相对简单,但理解其...

    zookeeper-3.8.0安装包下载

    3. 命令行操作:掌握基本的 zkCli.sh 命令,如创建节点、读取数据、设置权限等。 4. 监控与调试:了解如何查看 Zookeeper 的运行状态,如使用 jmx 监控、日志分析等。 5. 客户端使用:学习如何编写 Java 或其他语言...

    zookeeper-3.3.6.tar.gz

    客户端可以通过`zkCli.sh`命令行工具与Zookeeper交互,或者使用提供的API在应用程序中直接调用。 总的来说,Zookeeper-3.3.6是分布式系统中不可或缺的组件,它的强大功能和稳定性使其在大数据、云计算等领域广泛...

    apache-zookeeper-3.5.10.7z下载

    1. **bin** 目录:这个目录包含了Zookeeper的可执行文件和服务脚本,如 `zkServer.sh` 用于启动和停止Zookeeper服务器,`zkCli.sh` 是客户端命令行工具,允许用户与Zookeeper服务器进行交互。 2. **conf** 目录:这...

    zookeeper-3.4.14.zip

    3. **docs** 目录:包含 ZooKeeper 的文档,包括用户手册、API 文档和开发者指南,对于理解 ZooKeeper 的工作原理和使用方法非常有用。 4. **src** 目录:包含了源代码,如果你需要深入了解 ZooKeeper 的内部实现...

    apache-zookeeper-3.6.1-bin.rar

    `zkServer.sh` 用于启动和管理Zookeeper服务器,而 `zkCli.sh` 是一个命令行客户端,用于与Zookeeper服务器进行交互。 2. **conf** 目录:包含默认配置文件 `zoo.cfg`,这是Zookeeper的主要配置文件。在这里,你...

    Apache ZooKeeper Essentials-Packt PublishingPDF

    - **Zookeeper命令行工具**(`zkCli.sh`):用于交互式操作ZooKeeper,进行数据查看、创建和修改。 5. **分布式应用中的应用**: - **配置管理**:集中存储和分发分布式系统的配置信息。 - **命名服务**:提供...

    apache-zookeeper-3.7.0-bin.zip

    1. **bin**:包含启动和管理 ZooKeeper 服务的脚本,如 `zkServer.sh` 和 `zkCli.sh`,分别用于启动服务器和客户端命令行界面。 2. **conf**:默认配置文件,如 `zoo.cfg`,这是 ZooKeeper 的主要配置文件,可以在...

    zookeeper-3.5.3-beta.tar.gz压缩包

    1. `bin`:包含用于启动和管理Zookeeper服务的脚本,如`zkServer.sh`(启动Zookeeper服务器)和`zkCli.sh`(客户端命令行工具)。 2. `conf`:存放配置文件,如`zoo.cfg`,这是Zookeeper的主要配置文件,可以在此...

    apache-zookeeper-3.6.2-bin.tar.zip

    启动 ZooKeeper 服务后,可以通过 `bin/zkCli.sh` 命令行工具与服务进行交互。 `java中间件.txt` 文件可能包含了关于如何在 Java 应用中集成和使用 ZooKeeper 的指南或者示例代码。Java 中间件是指在 Java 应用中...

    zookeeper-3.4.5-cdh5.9.3.tar.gz

    为了充分利用Zookeeper的功能,管理员需要了解其配置参数,如`dataDir`(存储快照和事务日志的目录)、`clientPort`(客户端连接的端口)等,以及如何通过`zkCli.sh`命令行工具进行操作。 总之,Zookeeper 3.4.5在...

    ZooKeeper3.4.6-注册中心安装步骤及安装包

    使用ZooKeeper的命令行工具`zkCli.sh`,测试与服务器的连接: ```bash $ZOOKEEPER_HOME/bin/zkCli.sh ``` 在命令行中,尝试创建一个节点: ```bash create /test "Hello, ZooKeeper!" ``` 然后读取这个节点: `...

    zookeeper安装步骤和文件.zip

    此外,了解ZooKeeper的命令行工具(如`zkCli.sh`)和ZooKeeper的数据模型(如ZNode、ACL、Watch机制)也是十分重要的。 总之,ZooKeeper作为一个关键的分布式协调服务,它的正确安装和配置对于分布式系统的稳定运行...

    zookeeper3.8.0 最新版 windows linux通用版 apache-zookeeper

    还有客户端工具,如`zkCli.sh`(命令行接口)和`zkEnv.sh`,用于配置环境变量。 2. **conf目录**:默认配置文件`zoo.cfg`位于此处,这是ZooKeeper服务器的核心配置,包括数据存储路径、端口号、集群配置等。 3. **...

    kafka_jdk_zookeeper集合.zip

    对于Zookeeper,可以使用`zkCli.sh`命令行客户端进行连接和操作。而Kafka,可以创建主题,启动生产者和消费者来测试消息传递。 在深入学习Kafka时,理解其核心概念如分区、副本、生产者、消费者和offset非常重要。...

    apache-zookeeper-3.7.0-bin

    1. **bin** 目录:包含各种可执行文件,如 `zkServer.sh`(启动 ZooKeeper 服务器)和 `zkCli.sh`(ZooKeeper 客户端命令行工具)。这些脚本帮助用户轻松地管理和操作 ZooKeeper 集群。 2. **conf** 目录:这里存放...

    zookeeper之分布式环境搭建的简单分线

    使用`zkCli.sh`命令行工具连接到ZooKeeper服务,执行一些基本的操作来验证服务是否正常运行。 #### 十、安全与维护 1. **配置ACLs:**增强安全性,可以配置ZooKeeper的访问控制列表(ACLs),限制特定用户的访问...

    zookeeper.zip

    文章可能详细介绍了如何配置Zookeeper的配置文件(如`zoo.cfg`),如何启动和停止Zookeeper服务,以及如何通过命令行工具`zkCli.sh`与Zookeeper交互。 此外,"帮助文档.txt"提供了Zookeeper的相关使用和操作指南,...

    zookeeper ui界面源码(github)

    这些API可能会封装ZooKeeper的命令行工具,如`zkCli.sh`,或者直接使用Java客户端库(zkclient或curator)与ZooKeeper服务器交互。 3. **数据可视化**:UI界面需要展示ZooKeeper集群的状态,如节点结构、节点数据、...

    zookeeper-3.5.2-alpha-版本安装包

    6. **监控状态**:使用zkCli.sh(Windows系统使用zkCli.cmd)工具连接到ZooKeeper服务,检查其运行状态。 标签"zookeeper zk"表明这是关于ZooKeeper的讨论,"zk"是ZooKeeper的常见缩写。 在实际应用中,ZooKeeper...

Global site tag (gtag.js) - Google Analytics