今天闲来无事,学习Zookeeper,下载了Zookeeper的最新版本3.5。启动以后显示:
ZooKeeper JMX enabled by default Using config: /opt/zookeeper-3.5.4-beta/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
以为启动成功,然后连接时报错,查看后台进程,没有Zookeeper进程。
查看zookeeper的日志文件:
2018-06-29 01:36:01,142 [myid:] - ERROR [main:ZooKeeperServerMain@79] - Unable to start AdminServer, exiting abnormally org.apache.zookeeper.server.admin.AdminServer$AdminServerException: Problem starting AdminServer on address 0.0.0.0, port 8080 and command URL /commands
发现8080端口被占用,通过查阅Zookeeper3.5的官方文档,发现这是Zookeeper3.5的新特性:
这是Zookeeper AdminServer,默认使用8080端口,它的配置属性如下:
![](https://upload-images.jianshu.io/upload_images/12540413-d5924f70213774e7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/700)
我们可以修改在zoo.cfg中修改AdminServer的端口:
admin.serverPort=8888
保存后,再次启动,Zookeeper启动成功。