为什么根目录节点不存在,而zookeeper实例中存在根目录下的节点?

Why root directory node does not exist while nodes under root directory exist in zookeeper instance?

我是 运行 独立模式下的 zookeeper 实例又名 IA,试图升级到仲裁模式,然后我准备了另外 2 个带有空快照目录的 zookeeper 实例(IB 和 IC),首先修改 zoo.cfg在3个实例中正确,并分别创建了myid,先重启独立实例IA,然后再启动其他2个。

IB和IC的情况是,他们有数据,但是没有根目录:

IB 和 IC:

[zk: localhost:2181(CONNECTED) 14] ls /
Node does not exist: /
[zk: localhost:2181(CONNECTED) 15] ls /zookeeper
[quota]
[zk: localhost:2181(CONNECTED) 16]

此外,IB中有数据丢失:

[zk: localhost:2181(CONNECTED) 16] get /demo/version

cZxid = 0x30000006c
ctime = Thu Dec 22 17:49:13 CST 2016
mZxid = 0x30000006c
mtime = Thu Dec 22 17:49:13 CST 2016
pZxid = 0x6003792a0
cversion = 12764622
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 135794
[zk: localhost:2181(CONNECTED) 17]

IA 看起来像:

[zk: localhost:2181(CONNECTED) 10] get /demo/version

cZxid = 0x30000006c
ctime = Thu Dec 22 17:49:13 CST 2016
mZxid = 0x30000006c
mtime = Thu Dec 22 17:49:13 CST 2016
pZxid = 0x6003792a0
cversion = 12312921
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 587495
[zk: localhost:2181(CONNECTED) 11]

IC 看起来像:

[zk: localhost:2181(CONNECTED) 10] get /demo/version

cZxid = 0x30000006c
ctime = Thu Dec 22 17:49:13 CST 2016
mZxid = 0x30000006c
mtime = Thu Dec 22 17:49:13 CST 2016
pZxid = 0x6003792a0
cversion = 12312921
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 587495
[zk: localhost:2181(CONNECTED) 11]

顺便说一句,状态很好:

IA:

[shell@kernel /data/zookeeper/zookeeper-3.4.8/bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/zookeeper-3.4.8/bin/../conf/zoo.cfg
Mode: follower

IB:

[shell@kernel /data/zookeeper/zookeeper-3.4.8/bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/zookeeper-3.4.8/bin/../conf/zoo.cfg
Mode: follower

集成电路:

[shell@kernel /data/zookeeper/zookeeper-3.4.8/bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/zookeeper-3.4.8/bin/../conf/zoo.cfg
Mode: leader

如上图,版本为

3.4.8

提前致谢

我设法通过将 initLimitsyncLimit 分别更改为 10050 来解决此问题,tickTime 仍然是 2000],然后从standalone模式迁移到quorum模式,稍等片刻,一切正常。