Kafka错误2_ERROR Unexpected exception, exiting abnormally异常的一种原因

本文详细描述了在使用Zookeeper和Kafka时遇到的冲突问题,包括Zookeeper启动失败的原因分析和解决方案,以及如何正确操作Kafka避免相关错误。通过将Zookeeper关闭后再进行操作,最终成功解决了问题。

继续进行尝试,

在Slave1、Slave2、Slave3上启动zookeeper,并未关闭时,去Kafka下进行操作:

[root@Slave1 local]# cd kafka/bin
[root@Slave1 bin]# ls
kafka-console-consumer.sh            kafka-run-class.sh
kafka-console-producer.sh            kafka-server-start.sh
kafka-consumer-offset-checker.sh     kafka-server-stop.sh
kafka-consumer-perf-test.sh          kafka-simple-consumer-shell.sh
kafka-mirror-maker.sh                kafka-topics.sh
kafka-preferred-replica-election.sh  windows
kafka-producer-perf-test.sh          zookeeper-server-start.sh
kafka-reassign-partitions.sh         zookeeper-server-stop.sh
kafka-replay-log-producer.sh         zookeeper-shell.sh
kafka-replica-verification.sh
[root@Slave1 bin]# cd ..
[root@Slave1 kafka]# bin/zookeeper-server-start.sh config/zookeeper.properties

结果,发现报错:

[2015-10-10 00:02:34,464] ERROR Unexpected exception, exiting abnormally (org.apache.zookeeper.server.ZooKeeperServerMain)
java.net.BindException: Address already in use
	at sun.nio.ch.Net.bind0(Native Method)
	at sun.nio.ch.Net.bind(Net.java:444)
	at sun.nio.ch.Net.bind(Net.java:436)
	at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
	at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
	at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67)
	at org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:95)
	at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:111)
	at org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(ZooKeeperServerMain.java:86)
	at org.apache.zookeeper.server.ZooKeeperServerMain.main(ZooKeeperServerMain.java:52)
	at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:116)
	at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)

寻找错误原因,猜测可能是因为zookeeper已经启动,

故将zookeeper关闭后,再进行操作:

[root@Slave1 kafka]# cd ../zookeeper/bin
[root@Slave1 bin]# sh zkServer.sh stop
JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
[root@Slave1 bin]# cd ../../kafka
[root@Slave1 kafka]# bin/zookeeper-server-start.sh config/zookeeper.properties


此时,结果正确,不再出现上面的报错信息。

[2025-07-14 04:18:41,023] ERROR Exiting Kafka due to fatal exception during startup. (kafka.Kafka$) java.nio.file.AccessDeniedException: /kafka/kafka_data/recovery-point-offset-checkpoint 报错version: '3' services: kafka: image: bitnami/kafka:3.6.2 container_name: kafka privileged: true depends_on: - zookeeper ports: - "9092:9092" environment: # ------------------ 必须参数 ------------------ KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_BROKER_ID: "0" KAFKA_LISTENERS: "PLAINTEXT://0.0.0.0:9092" KAFKA_ADVERTISED_LISTENERS: "PLAINTEXT://kafka.external.svc.cluster.local:9092" # ------------------ Kafka 配置参数(推荐用 KAFKA_CFG_) ------------------ KAFKA_CFG_LOG_DIRS: "/kafka/kafka_data" ## 消息大小设置 KAFKA_CFG_MESSAGE_MAX_BYTES: "104857600" # 100MB KAFKA_CFG_SOCKET_REQUEST_MAX_BYTES: "104857600" KAFKA_CFG_REPLICA_FETCH_MAX_BYTES: "104857600" KAFKA_CFG_FETCH_MESSAGE_MAX_BYTES: "104857600" ## 分区、副本与消费组 KAFKA_CFG_NUM_PARTITIONS: "10" KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: "1" KAFKA_CFG_DEFAULT_REPLICATION_FACTOR: "1" KAFKA_CFG_GROUP_INITIAL_REBALANCE_DELAY_MS: "0" KAFKA_CFG_GROUP_MAX_SESSION_TIMEOUT_MS: "60000" ## 数据保留策略 KAFKA_CFG_LOG_RETENTION_HOURS: "168" # 保留 7 天 KAFKA_CFG_DELETE_RETENTION_MS: "1000" KAFKA_CFG_LOG_CLEANUP_POLICY: "delete" KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "true" # ------------------ JVM 参数 ------------------ KAFKA_HEAP_OPTS: "-Xms6G -Xmx6G" volumes: - /var/run/docker.sock:/var/run/docker.sock - ../../kafka_data:/kafka/kafka_data ulimits: memlock: soft: -1 hard: -1 nofile: soft: 65536 hard: 65536 networks: - overlay networks: overlay: external: true
最新发布
07-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值