zk四字命令 Four Letter Words

四字命令简介

  • zk可以通过它自身提供的简写命令来和服务器进行交互
    zk通过简写的命令和服务器进行交互,进行交互之后可以提供一些服务器的状态信息、环境变量、包括一些临时会话(session)等等,四字命名非常适合运维去监控
  • 需要使用到nc命令,安装:yum install nc
  • echo [commond] | nc [ip] [port]

查看四字命令的官方文档方法

可以打开zookeeper官网或者下载到本地的文件目录中找到四字命令的使用文档看下,我这里使用的是下载到本地的使用文档,




英文差的可以翻译后看下

nc

nc简介
nc命令是netcat命令的简称,都是用来设置路由器,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小)、功能实用,被设计为一个简单、可靠的网络工具,可通过TCP或UDP协议传输读写数据。同时,它还是一个网络应用Debug分析器,因为它可以根据需要创建各种不同类型的网络连接。nc官方地址
nc安装

输入yum install nc 安装nc


如下安装完成

测试:在这个终端下输入:nc -l 9999,随便输入些字符,回车,然后再打开另外一个终端输入nc ip 端口号,可以查看到刚才输入的字符内容,证明nc安装成功

nc语法:nc/netcat(选项)(参数)
选项
-g<网关>:设置路由器跃程通信网关,最多设置8个;
-G<指向器数目>:设置来源路由指向器,其数值为4的倍数;
-h:在线帮助;
-i<延迟秒数>:设置时间间隔,以便传送信息及扫描通信端口;
-l:使用监听模式,监控传入的资料;
-n:直接使用ip地址,而不通过域名服务器;
-o<输出文件>:指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存;
-p<通信端口>:设置本地主机使用的通信端口;
-r:指定源端口和目的端口都进行随机的选择;
-s<来源位址>:设置本地主机送出数据包的IP地址;
-u:使用UDP传输协议;
-v:显示指令执行过程;
-w<超时秒数>:设置等待连线的时间;
-z:使用0输入/输出模式,只在扫描通信端口时使用。
nc在没有安装前,不可以使用
参数

  • 主机:指定主机的IP地址或主机名称;
  • 端口号:可以是单个整数或者是一个范围。

Zookeeper 四字命令

安装好nc后,就可以使用zk的四字命令了

  • [stat] 查看zk的状态信息,以及是否mode
    mode:1 集群的模式 2 单例的模式
    在终端输入echo stat | nc ip 端口号,提示不在stat is not executed because it is not in the whitelist.(未执行stat,因为它不在白名单中)

    打开zookeeper文档,搜索 whitelist

    根据文档,从3.4.10版本开始,他增加了4lw.commands.whitelist这个属性,如果我们没有做额外的配置,他的某些四字命令是没有放到白名单中,是禁止使用的,如果要使用需要在配置文件中配置,如果配置**4lw.commands.whitelist=* **,则是所有的四字命令都支持,如果只需要配置部分,则可以写在=后面,以逗号隔开
    根据zk使用文档,需要在安装目录下/conf/zoo.cfg配置文件中添加:4lw.commands.whitelist=

    将 *4lw.commands.whitelist= **复制到文件的最后一行

[ruok] 查看当前zkServer是否启动,返回imok

echo ruok | nc ip 端口号,如果zookeeper服务是启动状态,则会返回imok

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


再次打开一个终端,并使用zkCli.sh连接到zookeeper



[conf] 查看服务器配置

*echo conf | nc ip 端口号

[cons] 展示连接到服务器的客户端信息

echo cons | nc ip 端口号

[envi] 环境变量

echo envi | nc ip 端口号:查看zookeeper的环境变量,可以把环境变量的相关信息全部打印出来

[mntr] 监控zk健康信息

echo mntr | nc ip 端口号 :监控zk的健康信息

[root@localhost conf]# echo mntr | nc 192.168.1.11 2181
zk_version 3.5.4-beta-7f51e5b68cf2f80176ff944a9ebd2abbc65e7327, built on 05/11/2018 16:27 GMT --zk的版本号
zk_avg_latency 1
zk_max_latency 292
zk_min_latency 0
zk_packets_received 235
zk_packets_sent 234
zk_num_alive_connections 2
zk_outstanding_requests 0
zk_server_state standalone --zk状态,单机/ 集群
zk_znode_count 8 --znode的节点数量
zk_watch_count 0 --监听者的数量
zk_ephemerals_count 1 --临时节点的数量
zk_approximate_data_size 83
zk_open_file_descriptor_count 47
zk_max_file_descriptor_count 4096

[wchs] 展示watch的信息

echo wchs | nc ip 端口号通过该命令可以知道整个zookeeper中的有多少个watch

打开另外一个终端,设置一个watch

[wchc] 与 [wchp] session与watch及path与watch信息

wchc与wchp分别可以通过session及他的path和他对应监督者的信息一起列出来

根据慕课网的课程整理的笔记

4-5 zookeeper四字命令相关推荐

  1. zookeeper 四字命令的使用

    Linux中的命令NetCat有"瑞士军刀"的美誉.我们可以通过nc命令查看Zookeeper的一行属性数据.在Zookeeper中有很多四字命令,汇总如下: 序号 使用命令 输出 ...

  2. 开启 Zookeeper 四字命令(is not executed because it is not in the whitelist)

    有时候我们需要使用四字命令查看 ZK 的一些信息,如果没有配置开启,救会出现这样的异常: ➜ bin echo mntr | nc localhost 2181 mntr is not execute ...

  3. ZooKeeper - 四字命令解析

    四字命令 操作方式 echo "ruok" | nc 192.168.0.106 2181 cons 输出当前服务器的所有客户端的连接信息 NIOServerCnxn代码: pri ...

  4. zookeeper四字命令_java培训

    zookeeper支持某些特定的四字命令,他们大多是用来查询ZK服务的当前状态及相关信息的, 通过telnet或nc向zookeeper提交相应命令,如:echo ruok | nc 127.0.0. ...

  5. Zookeeper四字命令

    zookeeper 支持某些特定的四字命令与其交互,用户获取 zookeeper 服务的当前状态及相关信息,用户在客户端可以通过 telenet 或者 nc(netcat) 向 zookeeper 提 ...

  6. zookeeper命令行(zkCli.shzkServer.sh)使用及四字命令

    zookeeper提供了很多方便的功能,方便我们查看服务器的状态,增加,修改,删除数据(入口是zkServer.sh和zkCli.sh). 还提供了一系列四字命令,方便我们跟服务器进行各种交互,来确认 ...

  7. Zookeeper的四字命令

    一.Zookeeper的四字命令 Zookeeper支持某些特定的四字命令字母与其的交互.他们大多数是查询命令,用来获取Zookeeper服务的当前状态及相关信息.用户在客户端可以通过telnet或n ...

  8. zookeeper的acl权限控制_zookeeper权限acl与四字命令

    权限acl介绍,acl的构成与id acl是Access control lists 的缩写,也就是权限控制列表: 针对节点可以设置相关读写等权限,目的是为了保障数据安全性 权限permissions ...

  9. zookeeper四字监控命令

    文章目录 zookeeper四字监控命令 什么是四字监控命令 配置监控属性 安装nc conf命令 cons命令 crst命令 dump命令 envi命令 ruok命令 stat命令 srst命令 w ...

最新文章

  1. ImportError: No module named images
  2. 点云距离度量:完全解析EMD距离(Earth Mover's Distance)
  3. 法律应是站在加密和隐私这面的……
  4. Python语言学习:复杂函数(yield/@property)使用方法、案例应用之详细攻略
  5. Xml Document与 xml反序列化
  6. java 打包jar文件以在没有安装JDK或JRE的机子上运行
  7. UrlEncode编码算法
  8. windows下Apache虚拟主机配置
  9. linux log原理,linux系统日志管理工具logrotate之原理详述
  10. lisp 车位块自动编号_CAD如何生成自动编号
  11. centos安装python及导入cv2出现的问题及踩坑记录
  12. pcb布局设计_PCB设计布局的重要提示
  13. html中不写form的后果,html之form
  14. allegro制作通孔焊盘封装-flash热风焊盘-图文并茂的Allegro 通孔焊盘制作教程
  15. 输入两个整数n和m,从1-n中随意取几个数,使其和等于m
  16. 【论文分享】Effective Seed Scheduling for Fuzzing with Graph Centrality Analysis
  17. canon佳能ip1000/1200/1600 废弃墨水吸收器已满解决办法(有效)
  18. javax.el.PropertyNotFoundException: Property 'username' not found on type pers.wsf.multiBlog.pojo.Ar
  19. 百度ocr 图片转文字
  20. mysql 三主_LINUX下mysql 三主环线复制

热门文章

  1. android实时预览,实现预览  |  Android 开发者  |  Android Developers
  2. cookies的清空和保存
  3. JAVA--发送Google邮件
  4. 【c语言】求一个3行4列矩阵的外框的元素值之和
  5. tZERO母公司Overstock股票五个月暴涨37倍背后:已深耕区块链业务数年
  6. 请根据微信登录界面设计测试用例
  7. Android JNI之pthread_create的失败(1)
  8. Brat 标注工具 配置文件 详细说明
  9. cookie的domain属性
  10. 这里有五种身份证提取出生年月的格式