zookeeper的节点类型按照是否持续存在,可分为持久节点和短暂节点,创建命令的区别在于create是否加参数-e
持久节点(Persistent):客户端和服务器端断开连接后,创建的节点依然存在,不会被不删除
短暂节点(Ephemeral):客户端和服务器端断开连接后,创建的节点不存在,会被删除,创建时需要加参数-e
[zk: hadoop102:2181(CONNECTED) 0] ls / [zookeeper] [zk: hadoop102:2181(CONNECTED) 17] create /wu "zhouyu" Created /wu [zk: hadoop102:2181(CONNECTED) 18] create -e /shu "liubei" Created /shu [zk: hadoop102:2181(CONNECTED) 19] ls / [shu, wu, zookeeper] [zk: hadoop102:2181(CONNECTED) 20] quit [root@hadoop102 bin]# ./zkCli.sh -server hadoop102:2181 [zk: hadoop102:2181(CONNECTED) 0] ls / [wu, zookeeper]
zookeeper的节点类型按照节点名称是否带编号,可分为不带编号的和顺序编号的节点,创建命令的区别在于create是否加参数-s
不带序号的节点:不可重复创建,节点名称唯一
顺序序号的节点:可重复创建,节点名称由父节点顺序编号
[zk: hadoop102:2181(CONNECTED) 15] create /wei "caocao" Created /wei [zk: hadoop102:2181(CONNECTED) 16] create /wei "caocao" Node already exists: /wei [zk: hadoop102:2181(CONNECTED) 17] create -s /wei "caocao" Created /wei0000000008 [zk: hadoop102:2181(CONNECTED) 18] create -s /wei "caocao" Created /wei0000000009 [zk: hadoop102:2181(CONNECTED) 19] ls / [wei, wei0000000008, wei0000000009, wu, zookeeper] [zk: hadoop102:2181(CONNECTED) 20] quit [root@hadoop102 bin]# ./zkCli.sh -server hadoop102:2181 [zk: hadoop102:2181(CONNECTED) 0] ls / [wei, wei0000000008, wei0000000009, wu, zookeeper]
总结:
创建持久+不带编号的节点:create nodename "nodevalue"
创建持久+带序号的节点:create -s nodename "nodevalue"
创建短暂+不带序号的节点:create -e nodename "nodevalue"
创建短暂+带序号的节点:create -e -s nodename "nodevalue"