broker.id
重复、log.dirs
路径不存在)、Zookeeper未启动、端口冲突、权限不足。server.properties
中broker.id
唯一性、log.dirs
路径有效性(需提前创建目录并赋予权限)。systemctl status zookeeper
,未启动则执行systemctl start zookeeper
。netstat -tuln | grep 9092
,修改listeners
配置避免冲突。Connection refused
或TimeoutException
。advertised.listeners
配置错误、网络分区。sudo ufw allow 9092
(或对应Kafka端口)。advertised.listeners
是否为集群节点实际IP或域名(如PLAINTEXT://node1:9092
)。ping
或telnet
测试节点间网络连通性。num.partitions
(主题分区数)提升并行度。compression.type=gzip
)并增大batch.size
/linger.ms
参数。OutOfMemoryError
或磁盘写满。buffer.memory
配置不合理、日志保留策略不当。kafka-server-start.sh
中KAFKA_HEAP_OPTS
,建议设置为可用内存的50%-70%(如-Xms4G -Xmx4G
)。log.retention.hours
(如设置为168小时)和log.retention.bytes
控制日志保留量。log.dirs
所在磁盘有足够空间。ZooKeeper connection lost
或Session expired
。zookeeper.connect
配置错误、会话超时。systemctl status zookeeper
,确保正常运行。zookeeper.connect
参数为正确的Zookeeper地址(如localhost:2181
)。zookeeper.session.timeout.ms
参数(默认10秒,可根据网络延迟调整)。Permission denied
或NoSuchFileException
。log.dirs
、dataDir
等路径存在且为绝对路径,使用正斜杠(/
)或双反斜杠(\\
)。chmod -R 777 /path/to/kafka/logs
。inter.broker.protocol.version
参数。tail -f /path/to/kafka/logs/server.log
定位错误详情。Kafka Manager
或Prometheus+Grafana
监控集群状态、内存和磁盘使用情况。参考来源:[1,2,3,4,5,6,7,8,9,10,11]