本文章记录zk相关问题,以便后续查阅;
The current epoch, 6, is older than the last zxid, 42949725905
如下图所示:
一个节点重启之后,会出现如上错误,导致起不来。
解法把数据路径下面的version-2文件move一下,然后新建一个version-2文件。然后重启即可。
参考
[1]https://blog.51cto.com/u_10950710/2113493
如何查看zk各个节点是否与leader数据同步?
在leader节点上执行如下命令:1
for i in $(seq 2181 2183); do echo trying port: $i;echo mntr | nc localhost ${i} 2>/dev/null | grep "not currently serving";echo mntr | nc localhost ${i} 2>/dev/null| grep leader; echo mntr | $(which nc) localhost ${i} 2>/dev/null | grep follower ; done
补充:1
echo mntr | nc localhost 2181
如上命令,可以看到zk的一些配置和状态
2181 2183是zk的端口号.
注意,需要安装nc[1]才行。
参考文献:
- [1] https://nmap.org/ncat/
- [2] https://www.elastic.co/guide/en/cloud-enterprise/current/ece-zookeeper-sync.html
zk的四字命令
命令 | 描述 |
---|---|
conf | 输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等 |
cons | 列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操作延迟、最后的操作执行等信息 |
crst | 重置当前这台服务器所有连接/会话的统计信息 |
dump | 列出未经处理的会话和临时节点 |
envi | 输出关于服务器的环境详细信息 |
ruok | 测试服务是否处于正确运行状态。如果正常返回”imok”,否则返回空 |
stat | 输出服务器的详细信息:接收/发送包数量、连接数、模式(leader/follower)、节点总数、延迟。 所有客户端的列表 |
srst | 重置server状态 |
wchs | 列出服务器watches的简洁信息:连接总数、watching节点总数和watches总数 |
wchc | 通过session分组,列出watch的所有节点,它的输出是一个与 watch 相关的会话的节点列表 |
mntr | 列出集群的健康状态。包括“接受/发送”的包数量、操作延迟、当前服务模式(leader/follower)、节点总数、watch总数、临时节点总数 |
参考
[1] http://t.zoukankan.com/jdy1022-p-14830714.html