from kazoo.client import KazooClient
# 连接zookeeper,有些需要登录的填写账号密码
zk = KazooClient(hosts="192.168.0.162:2181",auth_data=[("digest", "user:password")])
# 启动连接
zk.start()
## 创建节点
zk.ensure_path("/my/favorite")
## 节点添加数据,必须是byte
zk.create("/my/favorite/node", b"a value")
zk.create("/my/favorite/name1", b"111111")
zk.create("/my/favorite/name2", b"222222")
# 获取节点数据
data, stat = zk.get("/my/favorite/node")
print("Version: %s, data: %s" % (stat.version, data.decode("utf-8")))
# Version: 0, data: a value
# 列出节点数据
# children = zk.get_children("/my/favorite")
# print("There are %s children with names %s" % (len(children), children))
# There are 3 children with names ['node', 'name2', 'name1']
# 修改节点数据
# zk.set("/my/favorite/node", b"some data")
# 删除节点数据
zk.delete("/my/favorite/name2", recursive=True)
# 关闭连接
zk.stop()
我主要通过get方法获取zk上Dubbo服务的IP地址(get com.XX.service.XX/provider/**),实现dubbo接口调用,dubbo接口调用请查看另一篇文章