一个 5 节点的 ZooKeeper 集群「看起来是否健康」,最少要看哪几项?这篇写一个只用四字命令的检查表,在健康、一个 follower 掉线、leader 被杀三种状态下各打印一次。
[健康] 节点 端口 角色 zxid 连接数 outstanding synced_followers avg延迟ms z33-1 7300 follower 0x100000065 1 0 - 0.0 z33-2 7301 follower 0x100000065 1 0 - 0.0 z33-3 7302 leader 0x100000065 1 0 4 0.0 z33-4 7303 follower 0x100000065 2 0 - 6.7426 z33-5 7304 follower 0x100000065 1 0 - 0.0
[1 个 follower 停止] 节点 端口 角色 zxid 连接数 outstanding synced_followers avg延迟ms z33-1 7300 已停止 z33-2 7301 follower 0x100000065 1 0 - 0.0 z33-3 7302 leader 0x100000065 1 0 3 0.0 z33-4 7303 follower 0x100000065 2 0 - 6.6863 z33-5 7304 follower 0x100000065 1 0 - 0.0
[leader 刚被杀] 节点 端口 角色 zxid 连接数 outstanding synced_followers avg延迟ms z33-1 7300 已停止 z33-2 7301 不服务 z33-3 7302 已停止 z33-4 7303 不服务 z33-5 7304 不服务 [选举完成后] 节点 端口 角色 zxid 连接数 outstanding synced_followers avg延迟ms z33-1 7300 已停止 z33-2 7301 follower 0x100000065 2 0 - 1.0 z33-3 7302 已停止 z33-4 7303 follower 0x100000065 1 0 - 0.0 z33-5 7304 leader 0x200000000 1 0 2 0.0
只起 1/3:ruok = imok | srvr 首行 = This ZooKeeper instance is not currently serving requests