首页 > 其他分享 >2、客户端访问ZooKeeper--命令行客户端和图形化客户端访问

2、客户端访问ZooKeeper--命令行客户端和图形化客户端访问

时间:2023-06-08 13:06:04浏览次数:49  
标签:bin ubuntu2004 zk zookeeper 访问 zooinspector root 图形化 客户端

客户端访问

命令行客户端访问 ZooKeeper
安装zookeeper的bin里面,有命令行工具
[root@ubuntu2004 ~]#ls /usr/local/zookeeper/bin/zkCli.sh 
/usr/local/zookeeper/bin/zkCli.sh
里面存的脚本是由java运行起来的
#可连接至zookeeper 集群中的任意一台zookeeper 节点进行以下操作,zkCli.sh 默认连接本机
连接本机
[root@ubuntu2004 ~]#zkCli.sh
[zk: localhost:2181(CONNECTED) 0]  #两个tab键可以列出支持的命令
addWatch  addauth  close config  connect create  delete                 
deleteall delquota  get  getAcl  getAllChildrenNumber   getEphemerals   history          listquota  ls printwatches  quit reconfig  redo  removewatches  set                 setAcl setquota  stat  sync    version   whoami  

创建节点
[zk: localhost:2181(CONNECTED) 3] create /app1
Created /app1


连接远程主机
zkCli.sh -server 10.0.0.103:2181
nc访问zookeeper

ZooKeeper支持某些特定的四字命令字母与其的交互.它们大多是查询命令,用来获取 ZooKeeper服务 的当前状态及相关信息.用户在客户端可以通过 netcat 或telnet向zookeeper发送下面命令

常见命令列表

conf #输出相关服务配置的详细信息 
cons #列出所有连接到服务器的客户端的完全的连接/会话的详细信息 
envi #输出关于服务环境的详细信息 
dump #列出未经处理的会话和临时节点 
stat #查看哪个节点被选择作为Follower或者Leader 
ruok #测试是否启动了该Server,若回复imok表示已经启动 
mntr #输出一些运行时信息 reqs #列出未经处理的请求 
wchs #列出服务器watch的简要信息 
wchc #通过session列出服务器watch的详细信息 
wchp #通过路径列出服务器watch的详细信息 
srvr #输出服务的所有信息 
srst #重置服务器统计信息 
kill #关掉Server 
isro #查看该服务的节点权限信息

命令的安全限制

#默认情况下,这些4字命令有可能会被拒绝,发送如下报错
xxx is not executed because it is not in the whitelist.

解决办法:在 zoo.cfg文件中添加如下配置,如果是集群需要在所有节点上添加下面配置
[root@ubuntu2004 ~]#vim /usr/local/zookeeper/conf/zoo.cfg
4lw.commands.whitelist=*
[root@ubuntu2004 ~]#systemctl restart zookeeper.service 
[root@ubuntu2004 ~]#echo stat |nc 127.0.0.1 2181
Zookeeper version: 3.8.0-5a02a05eddb59aee6ac762f7ea82e92a68eb9c0f, built on 2022-02-25 08:49 UTC
Clients:
 /127.0.0.1:36300[0](queued=0,recved=1,sent=0)

Latency min/avg/max: 0/0.0/0
Received: 1
Sent: 0
Connections: 1
Outstanding: 0
Zxid: 0x7
Mode: standalone
Node count: 6

#也支持telnet,但不能用 | telnet形式
图形化客户端zooinspector

githab链接

https://github.com/zzhang5/zooinspector 
https://gitee.com/lbtooth/zooinspector.git
#https://github.com/zzhang5/zooinspector 
Build 

$git clone https://github.com/zzhang5/zooinspector.git 
$cd zooinspector/ 
$mvn clean package -Dmaven.test.skip=true Run $chmod +x target/zooinspector-pkg/bin/zooinspector.sh 
$target/zooinspector-pkg/bin/zooinspector.sh

范例

# github 
[root@zookeeper-node1 ~]#git clone https://github.com/zzhang5/zooinspector.git
#国内镜像
[root@zookeeper-node1 ~]#git clone https://gitee.com/lbtooth/zooinspector.git

[root@ubuntu2004 ~]#cd zooinspector/
[root@ubuntu2004 zooinspector]#apt install maven -y

java编译安装zooinspector,ubuntu不能编译,可用rocky编译好,把编译好的包给ubuntu用
[root@ubuntu2004 opt]#ls
zooinspector-1.0-SNAPSHOT-pkg.tar
[root@ubuntu2004 opt]#tar xf zooinspector-1.0-SNAPSHOT-pkg.tar 
[root@ubuntu2004 opt]#ls
zooinspector-1.0-SNAPSHOT  zooinspector-1.0-SNAPSHOT-pkg.tar
[root@ubuntu2004 opt]#cd zooinspector-1.0-SNAPSHOT/
[root@ubuntu2004 zooinspector-1.0-SNAPSHOT]#ls
bin  conf  repo
[root@ubuntu2004 zooinspector-1.0-SNAPSHOT]#cd bin/
[root@ubuntu2004 bin]#chmod +x *
[root@ubuntu2004 bin]#ls
zooinspector.bat  zooinspector.sh
打开图形页面,左上角连接zookeeper
[root@ubuntu2004 bin]#./zooinspector.sh
Python访问zookeeper
apt -y install python3 python3-kazoo

cat zookeepe_test.py
#!/usr/bin/python3
from kazoo.client import KazooClient

zk = KazooClient(hosts='10.0.0.105:2181')
zk.start()
# 创建节点:makepath 设置为 True ,父节点不存在则创建,其他参数不填均为默认
zk.create('/zkapp/test',b'this is a test',makepath=True)

#查看指定数据
data=zk.get('/zkapp/test')
print(data)

#查看所有数据
all_data=zk.get_children('/')
print(all_data)

# 操作完后关闭zk连接
zk.stop()


[root@ubuntu2004 zooinspector-1.0-SNAPSHOT]#python3 zookeepe_test.py 
(b'this is a test', ZnodeStat(czxid=11, mzxid=11, ctime=1667572293170, mtime=1667572293170, version=0, cversion=0, aversion=0, ephemeralOwner=0, dataLength=14, numChildren=0, pzxid=11))
['zkapp', 'zookeeper', 'app1']


标签:bin,ubuntu2004,zk,zookeeper,访问,zooinspector,root,图形化,客户端
From: https://blog.51cto.com/mfc001/6439014

相关文章

  • 部署springboot项目到linux服务器,端口访问不了
    部署springboot项目到服务器,端口访问不了看一看之前有没有端口已经占用了ps-ef|grepjava 例如,8000,有项目已经在后台了(例如nohup设置springboot项目系统后台不挂断地运行命令)如果你的新项目的端口是8020或者8030也是不能使用的(这里是我遇到的问题)这时候关......
  • win11邮件客户端添加账户时提示「0x80190001」的替代解决方案
    在「添加账户」时选择「高级设置」:高级设置→Internet电子邮件填写信息账户名和用户名可填写邮箱名。如果是微软的邮箱,可参考:传入邮件服务器:POP3.live.com传出邮件服务器:smtp.live.com账户类型可尝试选:POP3......
  • Apache Pulsar 桌面端图形化管理工具
    ApachePulsar桌面端图形化管理工具ApachePulsar是Apache软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据......
  • apache2.4禁止IP访问
    如果在apache2.4想禁止使用ip访问,只能通过域名访问https是改这个配置文件conf/extra/httpd-ssl.confhttp是改这个conf/extra/httpd-vhosts.conf将下面这个配置的111.111.111.111修改为你对应的服务器IP复制到配置文件最尾部重启apache服务即可http的根据需要修改端口<Vir......
  • nginx访问日志
    访客日志处理日志模块的官网教程https://nginx.org/en/docs/http/ngx_http_log_module.html创建nginx访问日志日志对于程序员很重要,可用于问题排错,记录程序运行状态,一个好的日志能够给与精确的问题定位。Nginx日志功能需要在nginx.conf中打开相关指令log_format,设置日志格式,......
  • 7、hive shell客户端与属性配置、内置运算符、函数(内置运算符与自定义UDF运算符)
    ApacheHive系列文章1、apache-hive-3.1.2简介及部署(三种部署方式-内嵌模式、本地模式和远程模式)及验证详解2、hive相关概念详解--架构、读写文件机制、数据存储3、hive的使用示例详解-建表、数据类型详解、内部外部表、分区表、分桶表4、hive的使用示例详解-事务表、视图、物......
  • 关于大型客户端项目的思考
    大型客户端项目在使用过程中一般会面临几个问题:a.启动慢b.运行慢c.稳定性低基于以上问题进行一些思考,最终总结出该方案.解决方案当项目过大时,需要加载的程序集也越多,对应程序需要启动的时间也越长,如果在这个时候有一个启动的过渡页,从使用的角度看,能在启动后快速看......
  • Linux 安装Kafka及远程访问
    下载wget 官网tar-zxvfkafka_2.13-2.5.0.tgz启动kafka和zookeeper编写一个sh文件启动/opt/kafka_2.13-3.0.0/bin/zookeeper-server-start.sh/opt/kafka_2.13-3.0.0/config/zookeeper.properties&sleep5/opt/kafka_2.13-3.0.0/bin/kafka-server-start.sh/opt/kafka_......
  • EasyNTS上云网关现已支持Linux ARM架构客户端
    EasyNTS上云网关管理平台可集中管理所有接入的EasyNTS上云网关设备,实现接入与管控、动态组网、远程运维、文件传输、远程指令调用等功能,从终端到云端,形成了一整套的上云网关解决方案,极大地解决了现场无固定IP、端口不开放、系统权限不开放等问题。在之前的EasyNTS版本中,后台管理页......
  • Linux系统下如何保持进程在SSH客户端断开后仍继续运行?
    使用场景在Linux系统中,在执行一些运行时间比较长的任务时,必须等待执行完毕才能断开SSH连接或关闭客户端软件,否则可能会导致执行中断。本文介绍两种保障程序在您退出登录后持续运行的方法。方法1:使用nohup命令1.命令格式nohup,可以使运行的命令忽略SIGHUP信号。因此,即使退出登录......