确保Ubuntu Kafka配置正确可按以下步骤操作:
检查配置文件
/etc/kafka/config/server.properties关键参数: broker.id:唯一标识,需与集群中其他节点不重复。listeners:监听地址和端口(如PLAINTEXT://0.0.0.0:9092),确保与防火墙规则一致。advertised.listeners:客户端连接地址,需为公网可达IP或域名。zookeeper.connect:Zookeeper连接字符串(如localhost:2181),确保Zookeeper服务正常。log.dirs:日志存储路径,确保磁盘空间充足且权限正确。验证服务状态
sudo systemctl start kafka sudo systemctl start zookeeper # 若使用Zookeeper sudo systemctl status kafka sudo systemctl status zookeeper # 若使用Zookeeper tail -f /var/log/kafka/server.log tail -f /var/log/zookeeper/zookeeper.log # 若使用Zookeeper 测试网络连通性
sudo ufw allow 9092 sudo netstat -tuln | grep 9092 # 检查端口监听状态 telnet或nc测试客户端到服务端的连通性:telnet <kafka-ip> 9092 使用命令行工具验证
./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test # 生产者 ./kafka-console-producer.sh --broker-list localhost:9092 --topic test # 消费者 ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning 处理常见问题
server.properties中listeners端口并重启服务。log.dirs)可写,可通过chmod -R 755 <路径>设置权限。cat -A server.properties查看隐藏字符。参考官方文档
num.network.threads、log.retention.hours等参数对性能的影响。通过以上步骤可系统性验证Kafka配置的正确性,若仍无法解决,可结合日志错误信息进一步排查或向社区寻求帮助。