zookeeper命令行(zkCli.sh&zkServer.sh)使用及四字命令

  • A+
所属分类:WEB安全

zookeeper提供了很多方便的功能,方便我们查看服务器的状态,增加,修改,删除数据(入口是zkServer.sh和zkCli.sh)。

还提供了一系列四字命令,方便我们跟服务器进行各种交互,来确认服务器当前的工作情况(这也是服务器监控告警的基础)。

本文所讲的zkCli.sh和zkServer.sh均位于以下目录中:

/usr/local/zookeeper-server1

目录分布情况请参考我的另一篇文章:

zookeeper集群搭建 -zookeeper命令行(zkCli.sh&zkServer.sh)使用及四字命令

zkServer.sh

提供的主要功能如下:

1、查看服务器状态

[root@rocket zookeeper-server1]# bin/zkServer.sh status

JMX enabled by default

Using config: /usr/local/zookeeper-server1/bin/../conf/zoo.cfg

Mode: leader

2、启停服务器

[root@rocket zookeeper-server1]# bin/zkServer.sh help

JMX enabled by default

Using config: /usr/local/zookeeper-server1/bin/../conf/zoo.cfg

Usage: bin/zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}

zkCli.sh

连接zookeeper

[root@rocket zookeeper-server1]# bin/zkCli.sh -server localhost:2181

Connecting to localhost:2181

以下省略1W字。。

WatchedEvent state:SyncConnected type:None path:null

[zk: localhost:2181(CONNECTED) 0]

键入help查看所有支持的命令

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

ZooKeeper -server host:port cmd args

    stat path [watch]

    set path data [version]

    ls path [watch]

    delquota [-n|-b] path

    ls2 path [watch]

    setAcl path acl

    setquota -n|-b val path

    history

    redo 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:port1234567891011121314151617181920212223242526272829303132333435363738394041

常用命令

1)查看当前节点列表

[zk: localhost:2181(CONNECTED) 1] ls /

[zookeeper]

2)创建节点

[zk: localhost:2181(CONNECTED) 2] create /test “test”

Created /test

[zk: localhost:2181(CONNECTED) 3] ls /

[zookeeper, test]

3)查看节点数据

[zk: localhost:2181(CONNECTED) 4] get /test

“test”

cZxid = 0x300000007

ctime = Thu Sep 24 05:54:51 PDT 2015

mZxid = 0x300000007

mtime = Thu Sep 24 05:54:51 PDT 2015

pZxid = 0x300000007

cversion = 0

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 6

numChildren = 0

4)设置节点数据

[zk: localhost:2181(CONNECTED) 7] set /test “111111”

cZxid = 0x300000007

ctime = Thu Sep 24 05:54:51 PDT 2015

mZxid = 0x300000008

mtime = Thu Sep 24 05:57:40 PDT 2015

pZxid = 0x300000007

cversion = 0

dataVersion = 1

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 8

numChildren = 0

[zk: localhost:2181(CONNECTED) 8] get /test

“111111”

cZxid = 0x300000007

ctime = Thu Sep 24 05:54:51 PDT 2015

mZxid = 0x300000008

mtime = Thu Sep 24 05:57:40 PDT 2015

pZxid = 0x300000007

cversion = 0

dataVersion = 1

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 8

numChildren = 0

5)删除节点

[zk: localhost:2181(CONNECTED) 9] delete /test

[zk: localhost:2181(CONNECTED) 10] ls /

[zookeeper]

zookeeper四字命令的使用

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

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

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

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

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

reqs

列出未经处理的请求

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

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

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

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

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

查看连接到结点上所有的client信息,被选作leader还是follower

[root@rocket zookeeper-server1]# echo stat|nc 127.0.0.1 2181

Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT

Clients:

/127.0.0.1:525470

/0:0:0:0:0:0:0:1:539131

Latency min/avg/max: 0/3/9

Received: 13

Sent: 12

Connections: 2

Outstanding: 0

Zxid: 0x300000005

Mode: leader

Node count: 4

测试是否启动了该Server,若回复imok表示已经启动

[root@rocket zookeeper-server1]# echo ruok|nc 127.0.0.1 2181

Imok

查看连接到服务器的所有客户端的会话信息

[root@rocket zookeeper-server1]# echo cons|nc 127.0.0.1 2181

/127.0.0.1:525520

/0:0:0:0:0:0:0:1:539131

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: