zookeeper与客户端curator

zookeeper

zookeeper被广泛用于分布式服务中,如集群,kafka等。但基本的api却很简单。通过客户端调用简单的zookeeper的api实现数据更新、节点检测、权限控制、异步操作、事件监听等,最终实现分布式需要。

这里简单介绍一下客户端api。

首先,启动zookeeper

zkServer.sh start

开放2181端口,供外部调用

firewall-cmd --zone=public --add-port=2181/tcp --permanent

重启防火墙

systemctl restart firewalld.service

重载配置文件让它生效

firewall-cmd --reload

这样就可以根据IP和端口访问zookeeper服务器了。

启动客户端,就可以连接到服务器了

zkCli.sh -server 127.0.0.1:2181

zookeeper的数据结构其实就是一棵树,每个数据节点都是一个 ZNode。znode一共4种类型:持久的,临时的,持久有序的,临时有序的。
提供的操作也就是操作这棵树。输入 h 后回车,看下zkCli.sh提供的命令

使用客户端可以创建会话、创建节点、删除节点、获取子节点、获取节点内容等。

命令行客户端

 

命令行客户端一般用于调试、运维,实际服务不要用它。

执行 ls / 发现,/路径下已经有一个节点 /zookeeper 了

 

创建节点

create -e /master "hello"

这里 -e 是标明创建临时节点。还有-s,标明创建顺序节点(会在在节点名称后自动加上一串数字,每次创建时这串数字自增)
/master 为节点路径,"hello" 为节点的数据

注意,zookeeper根节点是 / 。因此所有节点路径都要带上 /

查看子节点列表

ls2 /master

获取节点

get /master

获取节点状态

stat /master

这里说下节点的一些属性:

属性

含义

cZxid

节点被创建时的事务id

ctime

当前节点的创建时间

mZxid

节点最后一次修被改时的事务id

mtime

节点数据的修改时间

pZxid

当前节点的子节点列表最后一次被修改时的事务id

cversion

子节点的版本号

dataVersion

节点数据的版本号

aclVersion

节点访问权限的版本号

ephemeralOwner

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值