这些日子为这个错误苦恼很久了,网上找到的各种方法都试了一遍,还是没能解决。
安装好zookeeper后,运行zkServer.sh start 显示正常启动,但运行zkServer.sh status 则显示:Error contacting service. It is probably not running。查看日志,报错连接的其他三台节点都拒绝连接。后来无意中看到,有网友说需要将其他节点的zk服务都开启。当时很激动的试了下,在四台节点上都运行了zkServer.sh start,可是当运行zkServer.sh status并查看日志时还是报同样的错误。极度郁闷,当思考了一会还有什么办法可以解决的时候,在其中一台节点上运行了下zkServer.sh status,额。。。神奇的事情发生了,竟然正常启动了。其他节点也是。思考了下,应该是它启动也需要一个过程,不是运行完命令立马启动。
总结下,就是除了网上说的删掉/etc/hosts中的127.0.0.1或将主机对应的ip在配置文件中改为0.0.0.0或删掉.pid文件重启等等方式都试了无效的话,仔细查看是否每台节点的zk服务是否都开启。并且开启后稍等片刻,看着否状态显示正常。