最近在配置zookeeper的时候踩了两个坑
###问题一:
启动zookeeper,控制台显示started,我以为成功了,但是启动java应用的时候,控制台一直在报错,Opening socket connection to server localhost/127.0.0.1:2181. Will not attem...,显然失败了。
###解决途径:
找到zookeeper的安装路径,log目录下有个输出日志,打开日志,里面就提示一行找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMainError contacting service.,这是因为zookeeper的安装包下载错了,下载安装包要找带有bin的,3.5.7下载地址如下:

###问题二:
解决上述问题后,重新启动zookeeper,控制台又提示started,又给我一种成功的错觉,然后我启动tomcat,打开dubbo的admin监控页面查看,还是没有东西,显然,又失败了。

###解决途径:
再次打开zookeeper的日志,有以下关键字java.net.BindException: Address already in use,应该是8080端口被占用了,我服务器中的tomcat占用了8080端口,而zookeeper最近的版本中有个内嵌的管理控制台是通过jetty启动,也会占用8080 端口。那么在zoo.cfg中增加admin.serverPort=没有被占用的端口号就能解决了,再次重启。完美解决!