【Kafka】ZooKeeper启动失败报错java.net.BindException: Address already in use: bind

问题描述

Kafka 2.8.1 ZooKeeper启动失败。

bash 复制代码
zookeeper-server-start.bat ../../config/zookeeper.properties
bash 复制代码
[2023-09-04 18:21:49,497] INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
[2023-09-04 18:21:49,498] ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain)
java.net.BindException: Address already in use: bind
        at java.base/sun.nio.ch.Net.bind0(Native Method)
        at java.base/sun.nio.ch.Net.bind(Net.java:555)
        at java.base/sun.nio.ch.ServerSocketChannelImpl.netBind(ServerSocketChannelImpl.java:337)
        at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:294)
        at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:89)
        at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:81)
        at org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:687)
        at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:144)
        at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:107)
        at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:65)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:128)
        at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:82)

原因分析

2181端口被占用。

打开cmd。

bash 复制代码
netstat -ano |findstr 2181

无结果返回,找不到占用2181端口的程序。


解决方案

修改config/zookeeper.properties

找到:

bash 复制代码
clientPort=2181

改为:

bash 复制代码
clientPort=21810

重新启动ZooKeeper,启动成功。

bash 复制代码
[2023-09-04 18:32:51,963] INFO binding to port 0.0.0.0/0.0.0.0:21810 (org.apache.zookeeper.server.NIOServerCnxnFactory)
[2023-09-04 18:32:51,979] INFO zookeeper.snapshotSizeFactor = 0.33 (org.apache.zookeeper.server.ZKDatabase)
[2023-09-04 18:32:51,981] INFO Reading snapshot \tmp\zookeeper\version-2\snapshot.0 (org.apache.zookeeper.server.persistence.FileSnap)
[2023-09-04 18:32:51,988] INFO Snapshotting: 0x0 to \tmp\zookeeper\version-2\snapshot.0 (org.apache.zookeeper.server.persistence.FileTxnSnapLog)
[2023-09-04 18:32:51,999] INFO PrepRequestProcessor (sid:0) started, reconfigEnabled=false (org.apache.zookeeper.server.PrepRequestProcessor)
[2023-09-04 18:32:52,004] INFO Using checkIntervalMs=60000 maxPerMinute=10000 (org.apache.zookeeper.server.ContainerManager)

记得修改config/server.properties,不然Kafka Server无法连接。

找到:

bash 复制代码
zookeeper.connect=localhost:2181

改为:

bash 复制代码
zookeeper.connect=localhost:2181
相关推荐
我不会起名字3222 小时前
Kafka 分区数到底设几个:吞吐量、顺序性与 rebalance 代价的取舍
kafka·消息队列·调优·分区
Msshu1236 小时前
PD快充诱骗取电芯片工作原理,XSP17诱骗取电5V9V12V15V20V功能测试
spring boot·spring cloud·sentinel·java-rocketmq·java-zookeeper·java-consul·java-activemq
starzy19909 小时前
深度拆解 Kafka 源码:Producer 构造器装配了哪些核心组件
分布式·kafka
我不会起名字3229 小时前
Go 写 Kafka 消费者:sarama 的 3 个坑与优雅退出写法
kafka·消息队列·go·sarama
逃逸线LOF1 天前
Cloud服务注册中心异同点对比Nacos|Eureka|zookeeper|consul
zookeeper·eureka·consul
RobinXYuan2 天前
【Kafka 源码手记】02 Kafka 的核心哲学:Everything Is A Log
kafka·源码阅读
Sayai2 天前
Kafka 2.8→3.9.1 跨大版本升级实战:ZooKeeper 同步升级、数据目录迁移与回滚预案全流程
大数据·运维·分布式·zookeeper·kafka
SparklingTheo3 天前
【Zookeeper】源码阅读
分布式·zookeeper·云原生
程序员梅雨4 天前
ZooKeeper面经总结
java·大数据·linux·分布式·后端·zookeeper·中间件
Devlive 开源社区4 天前
GrantForge 2026.1.0 正式发布:开源统一权限管理平台,新增 HDFS、ZooKeeper、MySQL 权限控制与数据脱敏!
hdfs·zookeeper·开源