Zookeeper运维秘籍:四字命令基础、详解及业务应用全解析

文章目录

  • 一、四字命令基础
  • 二、四字命令详解
  • 三、四字命令的开启与配置
  • 四、结合业务解读四字命令
    • conf
    • cons
    • envi命令
    • Stat命令
    • MNTR命令
    • ruok命令
    • dump命令
    • wchs
    • wchp

ZooKeeper,作为一款分布式协调服务,提供了丰富的四字命令(也称为四字短语)来与其进行交互。这些命令大多用于查询ZooKeeper服务的当前状态、环境变量以及临时会话等信息,是运维人员监控ZooKeeper集群状态的重要工具。在客户端,用户可以通过 nc(Netcat)命令向ZooKeeper提交相应的四字命令。

一、四字命令基础

要使用ZooKeeper的四字命令,首先需要确保系统中已安装Netcat工具。四字命令的基本格式如下:

echo [command] | nc [ip] [port]

其中,[command]为具体的四字命令,[ip]为ZooKeeper服务器的IP地址,[port]为ZooKeeper服务的端口号(默认为2181)。

二、四字命令详解

  1. conf:打印ZooKeeper的配置信息,包括端口号、数据目录、日志目录、心跳间隔、最大连接数、会话超时时间等。

  2. cons:列出所有连接到当前ZooKeeper服务器的客户端的详细信息,包括接收/发送的包数量、会话ID、操作延迟、最后操作时间等。

  3. crst:重置所有连接的连接和会话统计信息。

  4. dump:列出重要的会话和临时节点信息,该命令仅在Leader节点上有效。

  5. envi:打印ZooKeeper服务的环境配置信息,如版本、主机信息、Java版本、运行环境等。

  6. reqs:列出未经处理的请求。

  7. ruok:测试ZooKeeper服务是否处于正常状态,如果正常则返回“imok”。

  8. stat:输出ZooKeeper的性能信息和连接的客户端列表。

  9. srst:重置ZooKeeper服务器的统计信息。

  10. srvr:列出ZooKeeper服务器的详细信息。

  11. wchs:列出当前服务器管理的Watcher信息。

  12. wchc:通过会话列出Watcher信息,输出与Watcher相关的会话列表。

  13. wchp:通过路径列出Watcher信息,输出与会话相关的路径。

  14. mntr:输出可用于检测集群健康状态的变量列表,比stat命令更为详尽。

三、四字命令的开启与配置

$HOME/Zoo.cfg

在这里插入图片描述
以上*为开启所有四字命令,也可以指定四字命令,指定几个开启

四、结合业务解读四字命令

conf

打印出配置的详细信息。比如端口、zookeeper数据及日志配置路径、最大连接数,session超时时间、serverId等

在这里插入图片描述

属性含义
clientPort客户端端口号
dataDir数据快照文件目录 默认情况下100000次事务操作生成一次快照
dataLogDir事物日志文件目录,生产环境中放在独立的磁盘上
tickTime服务器之间或客户端与服务器之间维持心跳的时间间隔(以毫秒为单位)
maxClientCnxns最大连接数
minSessionTimeout最小session超时 minSessionTimeout=tickTime* 2
maxSessionTimeoutmaxSessionTimeout 最大session超时
maxSessionTimeout=tickTime * 20
serverId服务器编号
initLimit集群中的follower服务器(F)与leader服务器(L)之间
初始连接时能容忍的最多心跳数
syncLimit集群中的follower服务器(F)与leader服务器(L)之间 请求和应答之间能容忍的最多心跳数
electionAlg0:基于UDP的LeaderElection
1:基于UDP的 FastLeaderElection
2:基于UDP和认证的FastLeaderElection
electionPort选举端口
quorumPort数据通信端口
peerType是否为观察者 1为观察者

cons

echo cons|nc localhost 2181 输出当前服务器所有客户端连接的详细信息,

在这里插入图片描述
看下带业务情况:

在这里插入图片描述

属性说明

ip:ip地址
port:端口号
queued:等待被处理的请求数,请求缓存在队列中
received:收到的包数
sent:发送的包数
sid:会话id
lop:最后的操作 GETD-读取数据 DELE-删除数据 CREA-创建数据
est:连接时间戳
to:超时时间
lcxid:当前会话的操作id
lzxid:最大事务id
lresp:最后响应时间戳
llat:最后/最新 延时
minlat:最小延时
maxlat:最大延时
avglat:平均延时

envi命令

envi:输出关于服务器的环境配置信息

shell终端输入:echo envi| nc localhost 2181

在这里插入图片描述

说明:

属性含义
zookeeper.version版本
host.name host信息
java.version java版本
java.vendor供应商
java.home运行环境所在目录
java.class.pathclasspath
java.library.path第三方库指定非java类包的位置(如:dll,so)
java.io.tmpdir默认的临时文件路径
java.compilerJIT 编译器的名称
os.nameLinux
os.archamd64
os.version3.10.0-514.el7.x86_64
user.namezookeeper
user.home/root
user.dir/sys/fs/cgroup
Os.memory.free空间内存
Os.memory.max最大空间
Os.memory.total最大内存

Stat命令

stat:输出服务器的详细信息与srvr相似,但是多了每个连接的会话信息

shell终端输入:echo stat| nc localhost 2181

说明:
Zookeeper version 版本
Latency min/avg/max 延时
Received 收包
Sent 发包
Connections 连接数
Outstanding 堆积数
Zxid 最大事物id
Mode 服务器角色
Node count 节点数

SRVR:和stat功能一致,但不会输出客户端连接情况

MNTR命令

mntr:列出服务器的健康状态,比stat更为详尽的服务器信息,截取部分信息如下:在这里插入图片描述
zk_version 版本
zk_avg_latency 平均延时
zk_max_latency 最大延时
zk_min_latency 最小延时
zk_packets_received 收包数
zk_packets_sent 发包数
zk_num_alive_connections 连接数
zk_outstanding_requests 堆积请求数
zk_server_state leader/follower 状态
zk_znode_count znode数量
zk_watch_count watch数量
zk_ephemerals_count 临时节点(znode)
zk_approximate_data_size 数据大小
zk_open_file_descriptor_count 打开的文件描述符数量
zk_max_file_descriptor_count 最大文件描述符数量

ruok命令

ruok:测试服务是否处于正确运行状态

shell终端输入:echo ruok| nc localhost 2181
在这里插入图片描述

dump命令

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

shell终端输入:echo dump| nc localhost 2181
在这里插入图片描述

wchs

echo wchs|nc localhost 2181,输出当前服务器管理的Watcher信息

在这里插入图片描述

wchp

echo wchp|nc localhost 2181,与wchs类似,但以节点路径为单位对Watcher信息进行归组;

在这里插入图片描述

五、实战应用

在实际应用中,运维人员可以通过定期执行这些四字命令来监控ZooKeeper集群的状态和性能。例如,可以使用mntr命令定期获取集群的健康状态信息,并使用statsrvr命令来评估集群的性能。同时,在出现故障时,可以使用consenvidump等命令来排查问题。

总之,ZooKeeper的四字命令是运维人员监控和调优ZooKeeper集群的重要工具。通过熟练掌握这些命令,运维人员可以更好地了解ZooKeeper的运行状态和性能,及时发现并解决潜在问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/913750.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MinGW-w64_10.0.0 + GCC12_x86_64-12.2.0-release-posix-seh-msvcrt-rt_v10-rev2.zip

主题:mingw-w64安装 以及 matlab适配mingw-w64,g,gcc 无套路直接下载mingw-w64 for matlab 通过百度网盘分享的文件: MinGW-w64_10.0.0 GCC12_x86_64-12.2.0-release-posix-seh-msvcrt-rt_v10-rev2.zip 链接:https…

SpringCloudalibaba 集成 Knife4j 的时候出现多余的 前缀

这里是在网关 GateWay 中集成的 Knife4j,并且使用的是 Knife4j 服务发现模式 问题 用户服务 接口地址:/api/user/login GateWay 服务 现像 打开 Knife4j 文档中接口地址前缀多了一个 /api/user 解决 参考链接 2.1 Spring Cloud Gateway集成Knife4j …

信息安全工程师(79)网络安全测评概况

一、定义与目的 网络安全测评是指参照一定的标准规范要求,通过一系列的技术、管理方法,获取评估对象的网络安全状况信息,并对其给出相应的网络安全情况综合判定。其对象主要为信息系统的组成要素或信息系统自身。网络安全测评的目的是为了提高…

【Leecode】Leecode刷题之路第46天之全排列

题目出处 46-全排列-题目出处 题目描述 个人解法 思路: todo代码示例:(Java) todo复杂度分析 todo官方解法 46-全排列-官方解法 预备知识 回溯法:一种通过探索所有可能的候选解来找出所有的解的算法。如果候选解…

机器学习—选择激活函数

可以为神经网络中的不同神经元选择激活函数,我们将从如何为输出层选择它的一些指导开始,事实证明,取决于目标标签或地面真相标签y是什么,对于输出层的激活函数,将有一个相当自然的选择,然后看看激活函数的选…

97_api_intro_imagerecognition_pdf2word

通用 PDF OCR 到 Word API 数据接口 文件处理,OCR,PDF 高可用图像识别引擎,基于机器学习,超精准识别率。 1. 产品功能 通用识别接口;支持中英文等多语言字符混合识别;formdata 格式 PDF 文件流传参&#xf…

不适合的学习方法

文章目录 不适合的学习方法1. 纯粹死记硬背2. 过度依赖单一资料3. 线性学习4. 被动学习5. 一次性学习6. 忽视实践7. 缺乏目标导向8. 过度依赖技术9. 忽视个人学习风格10. 过于频繁的切换 结论 以下是关于不适合的学习方法的更详细描述,包括额外的内容和相关公式&…

刷题笔记——栈和队列互相冒充

刷题笔记——栈和队列互相冒充 5.3 用队列实现栈两队列实现栈一个队列实现栈 5.4 用栈实现队列两栈实现队列push栈和pop栈一个栈实现队列 5.3 用队列实现栈 原OJ题:225. 用队列实现栈 - 力扣(LeetCode) 两队列实现栈 入栈的实现 选非空的…

Mysql基础 01 数据与sql

文章目录 一、基本概念二、mysql的常用命令三、sql规范四、数据类型五、SQL语句 一、基本概念 数据库(database,DB):存储数据的仓库。 数据库管理系统软件(Database Management System,DBMS):是一种操作和管理数据库的大型软件。常见的DBMS有oracle、s…

5G NR:各物理信道的DMRS配置

DMRS简介 在5G中,DMRS(DeModulation Reference Signal)广泛存在于各个重要的物理信道当中,如下行的PBCH,PDCCH和PDSCH,以及上行的PUCCH和PUSCH。其最为重要的作用就是相干解调(Coherence Demodu…

从零开始:利用Portainer CE和cpolar搭建NextCloud私有云存储

文章目录 前言1. 在PortainerCE中创建NextCloud容器2. 公网远程访问本地NextCloud容器2.1 内网穿透工具安装3.2 创建远程连接公网地址 3. 固定NextCloud私有云盘公网地址 前言 本文将介绍如何在本地利用Portainer CE的可视化界面创建NextCloud私有云盘容器,并通过c…

第三十七章 Vue之编程式导航及跳转传参

目录 一、编程式导航跳转方式 1.1. path 路径跳转 1.1.1. 使用方式 1.1.2. 完整代码 1.1.2.1. main.js 1.1.2.2. App.vue 1.1.2.3. index.js 1.1.2.4. Home.vue 1.1.2.5. Search.vue 1.2. name 命名路由跳转 1.2.1. 使用方式 1.2.2. 完整代码 1.2.2.1. main.js 1…

人工智能(AI)和机器学习(ML)技术学习流程

目录 人工智能(AI)和机器学习(ML)技术 自然语言处理(NLP): Word2Vec: Seq2Seq(Sequence-to-Sequence): Transformer: 范式、架构和自注意力: 多头注意力: 预训练、微调、提示工程和模型压缩: 上下文学习、思维链、全量微调、量化、剪枝: 思维树、思维…

升级改进策略:鸡只图像分割

鸡只图像分割系统源码&数据集分享 [yolov8-seg-rtdetr&yolov8-seg-p2等50全套改进创新点发刊_一键训练教程_Web前端展示] 1.研究背景与意义 项目参考ILSVRC ImageNet Large Scale Visual Recognition Challenge 项目来源AAAI Global Al lnnovation C…

1.62亿元!812个项目立项!上海市2024年度“科技创新行动计划”自然科学基金项目立项

本期精选SCI&EI ●IEEE 1区TOP 计算机类(含CCF); ●EI快刊:最快1周录用! 知网(CNKI)、谷歌学术期刊 ●7天录用-检索(100%录用),1周上线; 免费稿件评估 免费匹配期…

软件设计师下午题UML15分

一、涉及到的图及对应关系 二、例题 1.用例图和类图的例题 解析及答案 2.状态图和类图的例题 3.通信图和类图例题 例题

如何找到养生生活视频素材?推荐几个优秀网站

今天,我们来聊一个实用的话题,那就是如何找到优质的养生视频素材。作为自媒体创作者,高质量的视频素材对内容制作至关重要。不论你是刚入行的新手,还是已经积累了一定粉丝的大V,找到合适的养生视频素材都能帮助你更好地…

书生大模型第四期闯关任务与笔记

书生大模型第四期闯关任务与笔记 入门岛第一关 Linux闯关任务:完成SSH连接与端口映射并运行hello_world.py笔记与过程SSH端口映射linux文件管理命令linux进程管理命令 第二关 Python闯关任务:Leetcode 383(笔记中提交代码与leetcode提交通过截图)闯关任务…

Zabbix 7 最新版本安装 Rocky Linux 8

前言 本实验主要在Rocky Linux 中安装Zabbix,其他centos8、Debian、Ubuntu、Alma Linux都可以安装,就是在中间件有点不同。Nginx就要配置一下,官网给的教程也算是很规范的,就是在MySQL上要自己安装,他没有告诉我们&am…

Odoo:免费开源的钢铁冶金行业ERP管理系统

文 / 开源智造 Odoo亚太金牌服务 简介 Odoo免费开源ERP集成计质量设备大宗原料采购,备件设材全生命周期,多业务模式货控销售,全要素追溯单品,无人值守计量物流,大宗贸易交易和精细化成本管理等方案;覆盖…