zookeeper命令 及 ACL控制

1命令

登录

zkCli.sh -server 192.168.58.81:2128 登录ip

zkCli.sh 登录本机

关闭会话 close

帮助文档 help

让zk数据发生变化都是一次事务

create创建

create /aaa 创建持久节点

create -e /aaa/bbb 创建临时节点

create /aaa/bbb/ccc 不能创建成功 因为bbb是临时节点

create -s /aaa/bbb 可以多次执行 create -s /aaa/bbb 创建有序节点

create -e -s /aaa/bbb

ls /aaa 查看

ls -R /aaa 递归查看

ls -s /aaa 查看节点详情 == get -s /aaa

quit 退出 zkCli.sh 在连接上查看节点发现临时节点没了

ls -s /aaa

mzxid 更新id mtime更新时间

dataVersion 版本修改次数

ephemeralOwner = 0x0都是持久化

创建临时节点再查看临时节点

ephemeralOwner = 0xasgagaar 有临时

ls -w /aaa 监控节点 另一个窗口create /aaa/bbb(只监控一次)如何长期监控?

第一个窗口

WATCHER::

WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/aaa

set /aaa hellow

get /aaa

get -s /aaa 查看节点详情=ls -s /aaa

get -s /aaa比ls -s /aaa 查出的结果就多一个节点值

zk-1 zk-2

get -w /aaa set /aaa hellow 只监控一次 (省资源 )

ls -w /aaa create /aaa/wowo 只监控一次(省资源 )

设置节点值

get -s /aaa 节点

set -v (dataVersion版本号) /aaa 节点值

验证版本号并删除节点

delete -v (dataVersion版本号) /aaa

不验证节点直接删除节点

delete /aaa/wowo

删除路径及所有子节点

deleteall /aaa

stat查看节点的状态

stat /aaa

2 zk权限控制

acl格式:

授权策略 对象 权限

world anyone r=read 可以查看

ip ip w=write 可以改变

auth 用户 c=create 可以创建子节点

digest d=delete 可以删除

a=admin 管理员 权限管理

/aaa 根目录下主节点

world 全部

getAcl /aaa 获取aaa权限信息

setAcl /aaa world:anyone:cdwra 设置aaa权限信息

c 创建节点 create /aaa/bbb

d 删除 delete /aaa/bbb

w 写 set /aaa niganma

r 读 查看节点 ls -s /aaa

a 管理员权限 这个一取消,啥也干不了了

不要那个权限就不加那个权限:

不要创建权限 setAcl /aaa world:anyone:cdwra

IP

设置ip才能对aaa操作 只有用这个ip且本机ip是这个ip登录,才能操作

setAcl /aaa ip:192.168.58.82:crdwa

auth 用户

用户:密码

addauth digest user:liu 添加用户密码

setAcl /aaa auth:user:cdwra 把aaa节点权限给用户

get /aaa 查不出

quit退出 再连接(登录)进去

addauth digest user:liu1 密码或者账号输错

get /aaa 查不出

addauth digest user:liu 认证密码账号正确

get /aaa 能查出


digest

1

create /bbb 66 world: anyone: crwa 创建节点并赋值,改权限

get /bbb 查值

getAcl /bbb 查权限

2

认证用户

addauth digest user:liu

create /ccc 66 auth:user1:crwad 创建节点并赋值并把这个节点权限给user用户

退出后还得认证addauth digest user:liu 才可以

3 控制zk中每个节点访问权限(每个权限控制只对当前节点有效)

setAcl /aaa worle:anyone:a 只有aaa是这个权限,子节点还是原来的权限

递归赋权

setAcl -R /aaa worle:anyone:a aaa下的节点都是这个权限

4 sertquota

三个配额

setquota -n 3 /aaa aaa节点下再创建两个(包含本身节点的话是三个)节点后会有警报,但是还能继续创建

listquota /aaa 查配额

另一个窗口

tail -f /usr/zookeeper/logs/zookeeper-root-server-cluster1.out

相关推荐
try2find1 分钟前
移动conda虚拟环境的安装目录
linux·运维·conda
码农101号25 分钟前
Linux中容器文件操作和数据卷使用以及目录挂载
linux·运维·服务器
PanZonghui42 分钟前
Centos项目部署之Nginx 的安装与卸载
linux·nginx
PanZonghui1 小时前
Centos项目部署之安装数据库MySQL8
linux·后端·mysql
PanZonghui1 小时前
Centos项目部署之运行SpringBoot打包后的jar文件
linux·spring boot
PanZonghui1 小时前
Centos项目部署之Java安装与配置
java·linux
程序员弘羽1 小时前
Linux进程管理:从基础到实战
linux·运维·服务器
PanZonghui1 小时前
Centos项目部署之常用操作命令
linux
JeffersonZU1 小时前
Linux/Unix进程概念及基本操作(PID、内存布局、虚拟内存、环境变量、fork、exit、wait、exec、system)
linux·c语言·unix·gnu
沉着的码农1 小时前
【设计模式】基于责任链模式的参数校验
java·spring boot·分布式