【kafka】zookeeper默认占用8080端口解决

因为boot项目启动的是8080端口,然后发现被zookeeper占用了
所以需要修改一下zookeeper的启动端口

首先kafka是使用brew安装的

brew install kafka

install的过程中会默认安装zookeeper

因为offsetId是Kafka标识某个Partion的每一条消息的递增整数,
客户端通常将它存储在ZooKeeper中

编辑zookeeper配置文件

vim  /usr/local/etc/zookeeper/zoo.cfg

然后加上

admin.serverPort=8001

将zookeeper再重启一遍

brew services restart zookeeper

然后再重启boot项目就可以了,8080端口不再被占用

### 修改 ZooKeeper 默认端口 2181 的方法 当遇到 ZooKeeper 端口占用的情况时,可以通过修改其配置文件 `zoo.cfg` 来更改默认的客户端连接端口。以下是具体操作方式: #### 修改客户端连接端口ZooKeeper 的配置文件 `zoo.cfg` 中找到或新增以下参数并设置为目标端口号: ```properties clientPort=2182 ``` 此参数定义了客户端与 ZooKeeper 实例之间的通信端口[^2]。 如果当前环境中存在多个 ZooKeeper 节点组成的集群,则还需要注意每台服务器上的 `server.x` 参数配置。例如,在单节点或多节点场景下,可能有如下形式的配置: ```properties server.1=localhost:2888:3888:participant;2182 ``` 其中最后一个分号后的数值即为客户端连接端口,需同步调整至新设定值(此处设为 2182),以保持一致性[^2]。 #### 处理 Kafka Manager 连接问题 对于提到的 kafka-manager 启动后仍尝试访问旧端口 (2181),即使已在 application.conf 文件里更新 zkhosts 字段指向新的地址和端口组合,这可能是由于缓存或其他未生效的原因引起。建议重启整个服务链路中的组件来确保变更得到应用,并确认无残留进程维持对原端口监听状态的存在[^1]。 另外值得注意的是,除了上述常规做法外还有其他途径可以改变 zookeeper 所使用的管理界面端口(并非业务交互所依赖的那个 clientPort) ,比如通过命令行选项指定不同的 server port 或者干脆禁用掉 web ui 功能从而释放相应资源占用情况下的冲突风险 。例如可以在启动脚本加入下面这样的环境变量声明实现目的 : ```bash export JAVA_OPTS="-Dzookeeper.admin.enableServer=false" ``` 或者如果你确实需要保留web监控能力的话也可以单独分配一个新的可用tcp层面上没有竞争关系的目标位置给它使用而不是沿袭传统的8080标准值那样简单粗暴的方式来进行规避处理即可完成全部必要改动步骤达到预期效果. ```python # 示例 Python 客户端代码片段展示如何动态适配不同版本间差异化的 API 行为模式适应性开发技巧分享部分省略... from kazoo.client import KazooClient zk = KazooClient(hosts='localhost:2182') try: zk.start() finally: zk.stop() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值