$ZOOKEEPER_HOME/bin下的zkCli.sh进入命令行界面,使用help可查看支持的所有命令:

一、节点相关操作

create [-s] [-e] path data acl

create用于创建新的节点:

create [-s] [-e] path data acl

使用create创建一个节点:

创建节点时的一些选项详解:

-s和-e都是可选的,用来指定节点的类型,节点的类型有四种:

临时节点
临时顺序节点
永久节点
永久顺序节点

-s用于指定创建的节点是否是顺序的,顺序节点就是每次创建子节点的时候都会在已经指定的路径后追加一个从父节点得到的自增id,父节点维护的自增id每次创建子节点时都会加1

-e用于指定节点是否是临时节点还是持久节点,-e表示ephemeral,表示创建的是临时节点,默认创建的是永久节点。

临时节点只能是叶子节点,即不能在临时节点下再创建节点:

path:指定要创建的节点的路径,比如/foo/bar

data:要在此节点上存储的数据

acl:访问控制相关

get path [watch]

get获取指定节点的数据和属性信息。

get path [watch]

查看根节点的属性信息:

第一行为节点的数据信息,这里因为没有数据所以第一行为空。

cZxid:节点创建时的Zxid

ctime:节点的创建时间

mZxid:节点最近一次更新时的Zxid

mtime:节点最近一次更新的时间

pZxid:添加删除子节点

cversion:子节点数据更新次数

dataVersion:此节点的数据更新次数

aclVersion:节点的acl授权信息更新次数

ephemeralOwner:仅在节点为临时节点时有效,否则为0。如果此节点是临时节点,值为创建此节点的会话的session id

dataLength:此节点存放的数据的长度

numChildren:有多少子节点

stat path [watch]

get和stat的区别是get比stat多返回了节点数据:

ls path [watch]

列出指定节点下的所有节点

ls path [watch]

返回结果的数据类型是数组。

ls2 path [watch]

与ls不同的是,ls2除了能够查看此节点下包含的所有节点,还能够查看此节点的相关元信息。

set path data [version]

set用于更新节点数据

set path data [version]

path:要更新的节点路径,比如/foo/bar

data:要为节点设置的新数据

version:指定操作的是节点的哪一个版本,不指定的话默认是更新最新版本,每次操作版本增加1

delete path [version]

delete用于删除节点

delete path [version]

path:要删除的节点的路径,比如/foo/bar

version:要删除的节点版本

delete命令的version作用和set中的version一致,也是用于指定是针对节点的哪个版本进行操作。

需要注意的是被删除的节点需要是叶子节点,其下不能再有其它节点:

rmr path

用来删除节点,与delete的区别是delete只能用来删除叶子节点,如果节点下有子节点的话则不能删除,则rmr可以删除非叶子节点,即节点下有子节点时仍可以删除节点,zk中的delete类似于Linux下的rmdir,只能用来删除空目录,而rmr则类似于rm -rf,不管目录下面有什么都递归删除:

使用delete删除/foo时报错删除失败,使用rmr删除/foo时没有消息打印,Unix哲学没有消息就是好消息,说明删除成功。

printwatches on|off

sync path

二、ACL相关

setAcl path acl

getAcl path

addauth scheme auth

三、配额相关

setquota -n|-b val path

-n 指定path能够存储的节点数,包括这个节点本身

-b 指定节点下能够存储的数据数据的大小

listquota path

查看某个节点已经设置的配额:

delquota [-n|-b] path

删除某个路径上对应类型的配额设置,需要注意的是删除节点时并不会自动删除绑定在特定路径上的quota,需要手动删除:

关于配额相关更详细的知识,请查看:Zookeeper笔记之quota

四、连接管理相关

connect host:port

用于连接到zk服务器

close

用于关闭当前已经打开的连接

五、命令历史相关

history

查看命令历史:

第一列是命令的编号,第二列是实际执行的命令,与Linux下的history的默认样式差不多,这个命令编号在执行redo时会使用到。

redo cmdno

从history的图看到每个命令都有一个命令编号,当前命令的编号在prompt中显示:

每执行完一条命令此命令编号就会加1.

使用命令编号可以重新执行命令,根据上面history的记录来看第33条命令是get /foo,使用redo来重新执行一下试试:

六、其它

quit

退出命令行界面

help

查看支持的所有命令

.

Zookeeper笔记之命令行操作的更多相关文章

  1. Zookeeper 安装及命令行操作

    [参考文章]:[分布式]Zookeeper使用--命令行 [参考文章]:zookeeper的数据模型 [参考文章]:zookeeper ACL使用 1. 安装包下载 官方下载地址 选择一个具体的版本进 ...

  2. Zookeeper(一)CentOS7.5搭建Zookeeper3.4.12集群与命令行操作

    一. 分布式安装部署 1.0 下载地址 官网首页: https://zookeeper.apache.org/ 下载地址: http://mirror.bit.edu.cn/apache/zookee ...

  3. Zookeeper的命令行操作(三)

    Zookeeper的命令行操作 1. ZooKeeper服务命令 在准备好相应的配置之后,可以直接通过zkServer.sh 这个脚本进行服务的相关操作 1. 启动ZK服务: sh bin/zkSer ...

  4. ZooKeeper常用命令行操作

    ZooKeeper常用命令行操作 通过./zkCli.sh 打开zk的客户端进入命令行后台 ls/ls2 列出当前节点下的子节点 ls2还会列出当前节点的状态 [zk: localhost:2181( ...

  5. git 命令行操作(之前整理在有道的笔记)

    1. 常用命令 切换分支 git checkout [branch_name] 检出分支 git clone [git_URL] 更新分支 git pull origin [branch_name] ...

  6. kafka工作流程| 命令行操作

    1.  概述 数据层:结构化数据+非结构化数据+日志信息(大部分为结构化) 传输层:flume(采集日志--->存储性框架(如HDFS.kafka.Hive.Hbase))+sqoop(关系型数 ...

  7. Kafka命令行操作及常用API

    一.Kafka命令行操作 1.查看当前集群已存在的主题 bin/kafka-topic.sh --zookeeper hd09-01:2181 --list 2.创建主题 bin/kafka-topi ...

  8. 4、Kafka命令行操作

    Kafka命令行操作 1)查看当前服务器中的所有topic [test@ip101 kafka]$ bin/kafka-topics.sh --zookeeper ip101:2181 --list ...

  9. Kafka命令行操作

    Kafka命令行操作 1)查看当前服务器中的所有topic [bingo@hadoop101 kafka]$ bin/kafka-topics.sh --list --zookeeper hadoop ...

随机推荐

  1. python 爬虫学习之路

    2016-6-18 --今天实现了第一个用urllib2实现的爬虫程序. --过程中发现 req = urllib2.Request(url,headers = headers) 总是报错: 主要原因 ...

  2. 通俗易懂的word2Vec负采样理解

    理解:http://www.shuang0420.com/2017/03/21/NLP%20%E7%AC%94%E8%AE%B0%20-%20%E5%86%8D%E8%B0%88%E8%AF%8D%E ...

  3. [转帖]ESXi 网卡绑定 增加吞吐量的方法

    VMware ESX 5.0 网卡负载均衡配置3种方法 http://blog.chinaunix.net/uid-186064-id-3984942.html (1) 基于端口的负载均衡 (Rout ...

  4. laravel DB 执行 mysql函数或者字段

    使用laravel框架中的DB查询mysql数据库的时候,综合遇到执行mysql函数或者,自定义字段,一般情况下DB会把传入的函数当做字段处理 方法如下: DB:raw('函数或者字段'); DB:w ...

  5. Delphi中Form的position属性与代码自定义窗体位置

    通过Form的Position属性可设置窗体的初始位置,如选择DesktopCenter为桌面中心,ScreenCenter为屏幕中心,等等. 这个属性在很多时候简化了程序代码. 但是,如果设置了po ...

  6. 【刷题】LOJ 6009 「网络流 24 题」软件补丁

    题目描述 某公司发现其研制的一个软件中有 \(n\) 个错误,随即为该软件发放了一批共 \(m\) 个补丁程序.每一个补丁程序都有其特定的适用环境,某个补丁只有在软件中包含某些错误而同时又不包含另一些 ...

  7. alpine编译安装tengine,并使用supervisor启动

    Alpine是一个小型的linux系统,官方docker镜像只有不到5MB,非常适合作为容器镜像. Alpine Linux is a security-oriented, lightweight L ...

  8. JAVA实现概率计算(数字不同范围按照不同几率产生随机数)

    程序中经常遇到随机送红包之类的情景,这个随机还得指定概率,比如10%的机率可以得到红包.那么java怎么实现一个简单的概率计算了,见如下例子: int randomInt = RandomUtils. ...

  9. Oracle表字段类型更改的一个经验

    先前表中ID字段类型是用序列,由于安全问题,需要处理水平权限的漏洞,虽然使用加密也可以处理,为了更方便,需要将字段类型改为Guid,如果表中已经有数据,更改起来不是很方便,对于基础数据表,这里提供一个 ...

  10. word 大纲-目录