若要部署 ZooKeeper 单机环境,请查看此篇:https://www.cnblogs.com/shoufeng/p/10591508.html

若要部署 ZooKeeper 集群环境,请查看此篇:https://www.cnblogs.com/shoufeng/p/10591526.html

1 - 服务端常用命令

直接执行 zkServer.sh,会给出如下提示:

ZooKeeper JMX enabled by default
Using config: /data/zookeeper-3.5.8/bin/../conf/zoo.cfg
Usage: ./zkServer.sh [--config <conf-dir>] {start|start-foreground|stop|restart|status|print-cmd}

根据上面的提示,可以知道此脚本可以通过指定参数来执行不同的功能:

# 启动服务:
sh zkServer.sh start # 查看服务状态:
sh zkServer.sh status # 停止服务:
sh zkServer.sh stop # 重启服务:
sh zkServer.sh restart

2 - 客户端常用命令

使用 zkCli.sh -server ip:2181 连接到 ZooKeeper 服务,控制台就会输出 ZooKeeper 的相关环境以及配置信息。

# 查看某个目录下的节点:
ls /zookeeper
# 查看当前节点数据并能看到更新次数等数据
ls -s /zookeeper # 创建新的 Znode,并设置数据:[-e] 是临时节点,[-s] 是顺序节点
create /test "test-znode"
# 获取节点中的数据
get /test
# 修改节点内容
set /test "test-update" # 删除节点,如果存在子节点删除失败
delete /test # 递归删除当前节点及其下的所有子节点
deleteall /test

3 - 常用四字命令

可通过 telnet 或 nc 提交四字命令与 ZooKeeper 交互,比如获取 ZooKeeper 服务的状态等。

先安装好 nc:yum -y install nc

# 查看哪个节点被选择作 leader 或 follower
echo stat | nc 127.0.0.1 2181
# 测试是否启动该Server,若回复 imok 表示已经启动
echo ruok | nc 127.0.0.1 2181
# 列出未经处理的会话和临时节点
echo dump | nc 127.0.0.1 2181 # 输出服务配置的详细信息
echo conf | nc 127.0.0.1 2181
# 列出所有连接到该 Server 的客户端的连接 / 会话的详细信息
echo cons | nc 127.0.0.1 2181 # 输出关于服务环境的详细信息(区别于 conf 命令)
echo envi | nc 127.0.0.1 2181 # 列出未经处理的请求
echo reqs | nc 127.0.0.1 2181 # 列出服务器 watch 的详细信息
echo wchs | nc 127.0.0.1 2181
# 通过 session 列出服务器 watch 的详细信息,结果是一个与 watch 相关的会话列表
echo wchc | nc 127.0.0.1 2181
# 通过路径列出服务器 watch 的详细信息,结果是一个与 session 相关的路径
echo wchp | nc 127.0.0.1 2181 # 关掉该 Server
echo kill | nc 127.0.0.1 2181

4 - ZooKeeper 日志的可视化

ZooKeeper 的配置文件中指定的 dataDir 目录,用来存放快照数据,dataLogDir 用来存放事务日志文件。

打开这两个目录下的文件,会发现它们都是乱码的,这个时候可以通过如下方法打开:

# 查看事务日志,指定 jar 包、启动类和日志文件的绝对路径:
java -cp /data/zookeeper-3.5.8/lib/zookeeper-3.5.8.jar:/data/zookeeper-3.5.8/lib/zookeeper-jute-3.5.8.jar:/data/zookeeper-3.5.8/lib/slf4j-api-1.7.25.jar \
org.apache.zookeeper.server.LogFormatter \
/data/zookeeper-3.5.8/data/log/version-2/log.d96 # 查看快照数据,指定 jar 包、启动类和数据文件的绝对路径:
java -cp /data/zookeeper-3.5.8/lib/zookeeper-3.5.8.jar:/data/zookeeper-3.5.8/lib/zookeeper-jute-3.5.8.jar:/data/zookeeper-3.5.8/lib/slf4j-api-1.7.25.jar \
org.apache.zookeeper.server.SnapshotFormatter \
/data/zookeeper-3.5.8/data/version-2/snapshot.d95

版权声明

作者:瘦风(https://healchow.com)

出处:博客园-瘦风的南墙(https://www.cnblogs.com/shoufeng)

感谢阅读,公众号 「瘦风的南墙」 ,手机端阅读更佳,还有其他福利和心得输出,欢迎扫码关注

本文版权归博主所有,欢迎转载,但 [必须在页面明显位置标明原文链接],否则博主保留追究相关人士法律责任的权利。

ZooKeeper 06 - ZooKeeper 的常用命令的更多相关文章

  1. Hadoop生态圈-zookeeper本地搭建以及常用命令介绍

    Hadoop生态圈-zookeeper本地搭建以及常用命令介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载zookeeper软件 下载地址:https://www.ap ...

  2. zookeeper在windows的常用命令

    首先简要讲下安装 安装jdk 安装Zookeeper. 在官网http://zookeeper.apache.org/下载zookeeper.我下载的是zookeeper-3.4.6版本. 解压zoo ...

  3. 06 Linux 的常用命令

    Linux 刚面世时并没有图形界面,所有的操作全靠命令完成,如 磁盘操作.文件存取.目录操作.进程管理.文件权限 设定等 在职场中,大量的 服务器维护工作 都是在 远程 通过 SSH 客户端 来完成的 ...

  4. Zookeeper命令行操作(常用命令;客户端连接;查看znode路径;创建节点;获取znode数据,查看节点内容,设置节点内容,删除节点;监听znode事件;telnet连接zookeeper)

    8.1.常用命令 启动ZK服务 bin/zkServer.sh start 查看ZK服务状态 bin/zkServer.sh status 停止ZK服务 bin/zkServer.sh stop 重启 ...

  5. Zookeeper常用命令行及API

    一.Zookeeper常用命令行 1.启动zookeeper客户端(在启动zookeeper集群后启动进行调试) zkCli.sh 2.查看帮助.操作历史 help.history 3.查看当前Zno ...

  6. Zookeeper常用命令 (转)

    原文链接:ZooKeeper系列之二:Zookeeper常用命令 ZooKeeper服务命令: 在准备好相应的配置之后,可以直接通过zkServer.sh 这个脚本进行服务的相关操作 1. 启动ZK服 ...

  7. ZooKeeper常用命令行操作

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

  8. zookeeper Cli的常用命令

    zookeeper Cli的常用命令 服务管理 启动ZK服务: zkServer.sh start 查看ZK状态: zkServer.sh status 停止ZK服务: zkServer.sh sto ...

  9. zookeeper客户端 zkCli使用及常用命令

    上篇(http://www.cnblogs.com/yangzhenlong/p/8270835.html)zk伪集群搭建好后,使用zkCli连接zk服务 切换到zk1/bin 目录,执行zkCli. ...

随机推荐

  1. 网页视频不能自动播放?HTML5 video报错Uncaught (in promise) DOMException解决方法

    话说发哥四年前写了一个网页,如上图效果,实际网址http://pano.z01.com ,话说做好时是正常的,突然某一天,客户说你这个网站动画不见了,这是什么原因? 结果检查脚本一切正常. 其实也不是 ...

  2. Python学习周总结(一)

    Python-FirstWeek知识汇总 学习了一周python,最大的感触就是要有自己的逻辑思维和发散性思维,考虑事物的广度,层层相扣即使数学逻辑不会,基本的程序功能还是可以实现的,共勉,加油~ 一 ...

  3. php多域名跳转nginx

    当web服务器nginx已经配置好了网站根目录时,需要增加另外的域名.但是由于限制必须在原来的网站根目录下面,nginx已经无法实现.只能通过php index页面进行调试.如下面: define(' ...

  4. 最大连续子数组和--dp

    最大连续子数组和 问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的子段和的最大值.当所给的整数均为负数时定义子段 ...

  5. [loj2863]组合动作

    先用两次猜出第一个字符,后面就不会出现这个字符了 (我们假设这个字符是c0,其余三种字符分别是c1.c2和c3) ,然后考虑已知s的前i个字符(不妨就s),来推出后面的字符 询问:s+c1和s+c2, ...

  6. final关键字、抽象类、抽象类和接口的区别

    1.final关键字 1.1.final修饰的类无法继承. 1.2.final修饰的方法无法覆盖. 1.3.final修饰的变量只能赋一次值. 1.4.final修饰的引用一旦指向某个对象,则不能再重 ...

  7. 职场工作方法论:目标管理SMART原则

    目标管理由管理学大师彼得·德鲁克在他的著作<管理实践>(The Practice of Management)一书中提出.SMART原则(Specific具体的, Measurable可衡 ...

  8. 【R】如何将重复行转化为多列(一对一转化一对多)?

    目录 需求 方法一 方法二 需求 一个数据框一列或多列中有重复行,如何将它的重复行转化为多列?即本来两列一对一的关系,如何转化为一对多的关系?普通的spread函数实现较为麻烦. 示例数据如下: It ...

  9. python-django-数据查询条件

    查询用户的状态是2或者是4的情况 空值和空字符串是不一样的东西!!! 需要注意的是: 项目setting.py里面的时区采用的是美国的时区,我们不要使用这个时区 使用这个时区的,我们输入的日期会进行转 ...

  10. Linux之crond定时任务

    1. 使用crontab工具配置的定时任务 2. 配置定时任务建议规范 3. 定时任务配置问题导致系统出现故障实例 1. 使用crontab工具配置的定时任务 名称 crontab - 维护单个用户的 ...