大家好,今天小编来为大家解答为什么新版本Zookeeper v3.5启动后占用8080端口?如何修改端口?这个问题,很多人还不知道,现在让我们一起来看看吧!
要查看所有可用命令的列表,您可以访问URL /commands。
启动Zookeeper Server并查看输出信息:
zkServer.sh 启动前台
输出信息中有如下文字,可以看出AdminServer占用了8080端口。
.
2019-06-07 00:37:48,644 [myid:] – 信息[main:JettyAdminServer@112] – 在地址0.0.0.0、端口8080 和命令URL /commands 上启动AdminServer
.
如果不想占用8080端口,如果修改配置文件来实现修改端口呢?
以下来自Zookeeper官方文档,描述AdminServer的配置参数。
http://zookeeper.apache.org/doc/current/zookeeperAdmin.html
3.5.0: 中的新增功能以下选项用于配置AdminServer。
admin.enableServer :(Java 系统property: Zookeeper.admin.enableServer) 设置为“false”以禁用AdminServer。默认情况下,AdminServer 已启用。admin.serverAddress :(Java 系统属性: Zookeeper.admin.serverAddress)嵌入式Jetty 服务器侦听的地址。默认为0.0.0.0.admin.serverPort : (Java 系统property: Zookeeper.admin.serverPort) 嵌入式Jetty 服务器侦听的端口。默认为8080.admin.idleTimeout : (Java 系统属性: Zookeeper.admin.idleTimeout )设置连接在发送或接收数据之前可以等待的最大空闲时间(以毫秒为单位)。默认为30000 ms.admin.commandURL : (Java 系统属性: Zookeeper.admin.commandURL) 用于列出和发出相对于根URL 的命令的URL。默认为“/命令”。
通过查看Zookeeper的官方文档,发现有几种解决途径。
1.禁用AdminServer
在zoo.cfg中添加配置admin.enableServer=false
或者在启动脚本中添加-Dzookeeper.admin.enableServer=false
2.修改AdminServer端口号
修改方法有两种方式:
一是在启动脚本中添加-Dzookeeper.admin.serverPort=未占用的端口号;
另一种是在zoo.cfg中添加admin.serverPort=未占用的端口号,如8090端口号。
vim /opt/apache-zookeeper/conf/zoo.cfg
下面使用选项2将AdminServer端口号修改为8090。
再次启动Zookeeper Server,查看输出信息:
zkServer.sh 启动前台
检查Java进程信息和8090端口。
访问Zookeeper AdminServer
http://192.168.56.103:8090/命令
以下是Zookeeper AdminServer的配置参数说明:
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/134668.html
用户评论
服从
我之前遇到过这个问题,改动配置文件就能解决啦!其实很简单,就是找到zookeeper的配置目录,然后编辑 `zoo.cfg` 文件,里面有个地方可以设置监听端口号。记得重启服务后生效哦。
有18位网友表示赞同!
你与清晨阳光
最近升级到 v3.5 版本,确实发现占用 8080 端口了!虽然没太大影响,但我还是想改回来,这样更符合我的习惯。官方文档里有说明怎么修改的吗?
有17位网友表示赞同!
冷月花魂
新版本做了些改进吧,毕竟默认端口号变了。不过我还是习惯旧的配置方式,用 `zkServer.tickTime=2000` 和 `zkServer.initLimit=10` 这两个参数设置一下就好了。
有18位网友表示赞同!
杰克
8080 端口在很多应用中都有使用,万一冲突可就麻烦了!建议 Zookeeper 官方明确说明新版本为什么选择这个端口号,这样开发者也能更好的规划网络配置。
有18位网友表示赞同!
稳妥
修改端口确实很简单,没啥难度。只是不明白为什么官方默认端口会变成 8080 ,难道是兼容性的问题吗?
有8位网友表示赞同!
?亡梦爱人
我遇到过这样的情况,当时用 `-port`参数启动,就成功修改了端口号!官网文档上好像也有提到这个方法,可以参考下。
有20位网友表示赞同!
呆檬
感觉新版Zookeeper v3.5对配置的理解还是有区别的,需要重新学习一下才能够熟练使用。希望官方能提供更详细的文档或者教程。
有16位网友表示赞同!
枫无痕
更改端口号确实没啥难度,但如果在生产环境中修改,最好考虑一些安全问题和数据迁移的问题,不能马虎啊!
有10位网友表示赞同!
来自火星的我
我之前用 8080 端口搭建了其他的服务,现在遇到了类似情况。希望官方能提供修改端口号更便捷的方式,不要让开发者去修改配置文件。
有6位网友表示赞同!
鹿先森,教魔方
新版对旧版的兼容性怎么样?如果修改端口号就可能导致旧版本无法连接吗?
有15位网友表示赞同!
疲倦了
我觉得 ZooKeeper v3.5 对默认端口的选择还是值得商榷的,毕竟 8080 端口已经成为一些应用的常用端口了!希望官方能够考虑开发者在实际部署场景中的使用情况。
有9位网友表示赞同!
眉黛如画
配置修改步骤确实很清晰易懂,但为了避免在生产环境中出现问题,建议在修改前充分测试和验证。特别是对于使用 ZooKeeper 集群的环境,更需要注意安全性和数据一致性问题。
有10位网友表示赞同!
秒淘你心窝
我个人觉得,无论新旧版本,重要的是能够满足需求的稳定性。如果 v3.5 版本的功能确实能提升服务稳定性和效率,那么对端口号变更我也更容易接受和理解。
有16位网友表示赞同!
哭花了素颜
建议官方在发布新的版本时,能够先进行更周密的规划,提前告知开发者关于配置变化的信息,以便他们提前做好准备工作
有11位网友表示赞同!
颜洛殇
我是一个 Java 开发者,经常使用 ZooKeeper 做分布式锁或者配置中心。这次发现新版 v3.5 占用默认的 8080 端口,确实让我有点担忧,因为之前我的项目也用这个端口!
有8位网友表示赞同!
纯情小火鸡
这个问题困扰了我好久!终于找到了解决方案!感谢分享!
有7位网友表示赞同!
请在乎我1秒
我记得之前的版本是可以通过配置来修改端口号的,现在怎么改了?官方文档上说的比较模糊啊?!
有17位网友表示赞同!