以下是Zookeeper常见错误及解决方案:
服务启动失败
netstat -tulnp | grep 2181,修改zoo.cfg中clientPort或终止占用进程。zoo.cfg中dataDir路径正确且权限充足:chown -R zookeeper:zookeeper /path/to/dataDir。java -version,设置JAVA_HOME并添加到PATH。dataDir/version-2目录后重启。客户端连接问题
ping服务器IP,telnet server-ip port。sudo firewall-cmd --add-port=2181/tcp --permanent。connectString和clientPort配置正确,客户端使用正确版本。会话过期(SessionExpired)
sessionTimeout参数(建议设置为集群tickTime的2-3倍)。keepAlive方法维持会话,或重新创建Zookeeper实例。数据不一致
sync()方法强制同步数据。节点相关错误(NodeExists/NoNode)
性能问题(高延迟、低吞吐量)
tickTime(如2000ms),启用autopurge自动清理日志。dataLogDir参数。权限与安全问题
sudo ufw allow 2181/tcp。排查工具:
zookeeper.out或logs目录下的日志文件。echo stat | nc localhost 2181(需安装nc工具)。参考来源: