zookeeper的本质是一个文件系统,使用key-value键值对表示,进入文件系统的操作,路径必须从/开始。
[root@centos7-2 bin]# ./zkCli.sh -server localhost:2181 /usr/bin/java Connecting to localhost:2181 2020-02-23 22:49:53,274 [myid:] - INFO [main:Environment@109] - Client environment:zookeeper.version=3.5.5-390fe37ea45dee…… [zk: localhost:2181(CONNECTED) 0] ls / [zookeeper] # 以服务发现为例,假设服务名为elp,下属两个服务,分别为172.26.0.[1,2]:8080,即在zookeeper文件系统下创建两个目录表示elp服务下的IP及端口 # 分别创建/elp/172.26.0.1:8080与/elp/172.26.0.1:8080 [zk: localhost:2181(CONNECTED) 1] create /elp Created /elp [zk: localhost:2181(CONNECTED) 2] cd /elp [zk: localhost:2181(CONNECTED) 3] create /elp/172.26.0.1:8080 Created /elp/172.26.0.1:8080 [zk: localhost:2181(CONNECTED) 4] create /elp/172.26.0.2:8080 Created /elp/172.26.0.2:8080 # 查看 [zk: localhost:2181(CONNECTED) 5] ls /elp [172.26.0.1:8080, 172.26.0.2:8080] # zookeeper提供了“心跳检测”功能,它会定时向各个服务提供者发送一个请求,如果长期没有响应,服务中心就认为该服务提供者已经“挂了”,并将其剔除。 # 例如:zookeeper判断172.26.0.2:8080心跳失败 [zk: localhost:2181(CONNECTED) 6] delete /elp/172.26.0.2:8080 [zk: localhost:2181(CONNECTED) 6] ls /elp # 查看结果 [172.26.0.1:8080]
zookeeper本质是key-value的键值对
查看:ls 目录
创建:create (永久创建)
create -s 带序号的
create -e 临时创建
创建时赋值:create 目录 "value"
获取值:get -s 目录
修改值:set 目录 "value"