zookeeper使用

下载

https://zookeeper.apache.org/

解压

tar xvzf apache-zookeeper-3.7.0-bin.tar.gz

介绍

bin conf docs lib LICENSE.txt NOTICE.txt README.md README_packaging.md

bin目录

zkCli.sh  客户端启动脚本

zkServer.sh  服务端启动脚本

配置

cp zoo_sample.cfg zoo.cfg  复制配置文件

# The number of milliseconds of each tick
tickTime=2000  #时间单位(2秒)
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10  #zk节点数据同步间隔时间(10 × 2000)= 20秒
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5   #leader与follower节点心跳检测间隔时间 (10秒)
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/tmp/zookeeper  #数据持久化目录位置
# the port at which the clients will connect
clientPort=2181   #客户端连接端口
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the 
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

## Metrics Providers
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true

启动命令

./bin/zkServer.sh start conf/zoo.cfg

停止命令

./bin/zkServer.sh stop conf/zoo.cfg 

连接命令

./bin/zkCli.sh -server 127.0.0.1:2181

创建持久化节点命令

ls / 查看节点

create /test  #创建持久化节点

create /test2 xxxx  #创建节点指定数据。

get /test2  #获取数据

set /test xxxx  #设置数据

delete /test2   #删除节点

deleteall /test #批量删除

创建持久化子节点

create /test/sun01 #创建子节点

ls -R /test  #查看节点和子节点

创建顺序节点

create -s /name  #创建带序号的节点

创建临时节点(临时节点不能有子节点)

create -e /test2  

get -s /test2 查看详情

null
cZxid = 0x16  #事务id
ctime = Mon Jun 21 10:19:56 CST 2021  #创建时间 
mZxid = 0x16  #修改事务id
mtime = Mon Jun 21 10:19:56 CST 2021  #修改时间 
pZxid = 0x16  #子节点事务id
cversion = 0  #子节点版本号
dataVersion = 0 #数据版本号
aclVersion = 0  #权限控制
ephemeralOwner = 0x100003baea00001  #sessionid 
dataLength = 0  #数据长度字节数
numChildren = 0 #子节点数量
 

容器节点

create -c /container #创建容器节点

create /container/sun1 #创建容器子节点

create /container/sun2 #创建容器子节点

create /container/sun3 #创建容器子节点

开启TTL节点

vi zkServer.sh

ZOOMAIN="-Dzookeeper.extendedTypesEnabled=true 

create -t 5000 /ttl-node ddd

事件监听

get -w /test  #数据变化时会收到消息

removewatches /test #移除监听器

权限控制

echo -n user1:pass1 | openssl dgst -binary -sha1 | openssl base64   #生成密码

+7K83PhyQ3ijGj0ADmljf0quVwQ=

create /zknode dddd digest:user1:+7K83PhyQ3ijGj0ADmljf0quVwQ=:rw  #设置权限

get /zknode #无效

addauth digest user1:pass1 #登陆权限

明文权限

addauth digest user1:pass1  #先登录

create /zknode2 xxxx auth:user1:pass1:rw  创建明文权限

create /zknode3 node3 ip:127.0.0.1:rw  #设置指定ip可以的权限

关闭权限

vi zkServer.sh  

getAcl /zknode  #查看权限

超级管理员模式

集群配置

zoo.cfg

dataDir=/home/sirui/zookeeper/data
logDir=/home/sirui/zookeeper/logs

server.1=192.168.158.129:2181:3881
server.2=192.168.158.130:2181:3881
server.3=192.168.158.131:2181:3881

 /home/sirui/zookeeper/data/

vi myid

对应1,2,3数字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值