zookeeper常用命令

zkClient

简介

zkClient是简易的客户端程序

进入zkClient

在bin目录下输入zkCli.sh

节点命令

create 路径 数据

-s:顺序节点

-e:临时节点

默认情况下,不添加-s或者-e参数的,创建的是持久节点

set 路径 数据 版本

data就是要更新的新内容。注意,set命令后面还有一个version参数,在ZooKeeper 中,

节点的数据是有版本概念的,这个参数用于指定本次更新操作是基于ZNode的哪一个数据版本进行的

delete 路径 版本

如果节点包含子节点就报错

create /zk-book 123

create /zk-book/child 12345

delete /zk-book

查询【当前节点】

get 路径

查询【子节点】

ls 路径

查看节点状态信息

stat 路径

监听命令

注意

watch监听机制只能够使用一次,如果下次想要使用,必须重新监听

开启监听【当前节点】

get -w 路径

开启监听【子节点】

ls -w 路径

权限命令

相关命令

读取ACL权限:getAcl 路径

设置ACL权限:setAcl 路径

添加认证用户:addauth 路径

World 方案

语法:setAcl 路径 world:anyone:权限

create /node1 1

getAcl /node1

IP 方案

语法:setAcl 路径 ip:参数:权限

可以是具体IP也可以是IP/bit格式,即IP转换为二进制,匹配前bit位,如192.168.0.0/16匹配192.168..

create /node2 1

setAcl /node2 ip:192.168.66.103:cdrwa

使用IP非 192.168.66.101 的机器访问此节点时会提示权限不足

getAcl /node2

Auth 方案

语法:setAcl 路径 auth:用户:权限

添加认证用户:addauth digest 用户:密码

create /node3 1

addauth digest jkw:123456

setAcl /node3 auth:jkw:cdrwa

getAcl /node3

断开会话重连需要重新addauth添加认证用户

Digest 方案

语法:setAcl 路径 digest:用户:密码:权限

这里的密码是经过SHA1及BASE64处理的密文,在SHELL中可以通过以下命令计算

echo -n 用户:密码 | openssl dgst -binary -sha1 | openssl base64

先来获取一个密文

echo -n jkw:123456 | openssl dgst -binary -sha1 | openssl base64

客户端实例

create /node4 1

setAcl /node4 digest:jkw:密文

添加认证用户

addauth digest jkw:123456

获取节点数据没有权限,添加认证用户才可以成功读取数据

相关推荐
suuijbd1 小时前
SpringCloud+Netty集群即时通讯项目
spring boot·分布式·spring cloud·java-rabbitmq·java-zookeeper
奥尔特星云大使3 小时前
《系统规划与管理师教程(第2版)》方法篇 第10章 云原生系统规划 知识点总结
云原生·软考·高级·系规
一叶飘零_sweeeet4 小时前
幂等性 VS 分布式锁:分布式系统一致性的两大护法 —— 从原理到实战的深度剖析
分布式·分布式锁·接口幂等
更深兼春远4 小时前
Spark on Yarn安装部署
大数据·分布式·spark
熙客5 小时前
Kubernetes是如何保证有状态应用数据安全和快速恢复的
mysql·云原生·容器·kubernetes
Mxsoft6195 小时前
电力设备绝缘状态分布式光纤传感实时监测与多维度诊断技术
分布式
Java爱好狂.5 小时前
分布式ID|从源码角度深度解析美团Leaf双Buffer优化方案
java·数据库·分布式·分布式id·es·java面试·java程序员
Wang's Blog6 小时前
Nestjs框架: 微服务项目工程结构优化与构建方案
微服务·云原生·架构·nestjs
极造数字7 小时前
从EMS看分布式能源发展:挑战与机遇并存
人工智能·分布式·物联网·信息可视化·能源·制造
似水流年 光阴已逝7 小时前
Kubernetes Pod 基本原理:全面详解
云原生·容器·kubernetes·pod