下面给你一份在 Ubuntu 上配置并连接 Kafka的简明实战指南,适用于单机(本地)和远程连接两种常见场景。
sudo apt update
sudo apt install -y default-jdk
java -version
wget https://downloads.apache.org/kafka/3.7.0/kafka_2.13-3.7.0.tgz
tar -xzf kafka_2.13-3.7.0.tgz
cd kafka_2.13-3.7.0
bin/zookeeper-server-start.sh config/zookeeper.properties
bin/kafka-server-start.sh config/server.properties
listeners=PLAINTEXT://localhost:9092
advertised.listeners=PLAINTEXT://localhost:9092
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://你的服务器IP:9092
⚠️
advertised.listeners必须是客户端能访问到的地址
修改后重启 Kafka:
bin/kafka-server-stop.sh
bin/kafka-server-start.sh config/server.properties
bin/kafka-topics.sh --create \
--topic test \
--bootstrap-server localhost:9092 \
--partitions 1 \
--replication-factor 1
bin/kafka-console-producer.sh \
--topic test \
--bootstrap-server localhost:9092
bin/kafka-console-consumer.sh \
--topic test \
--from-beginning \
--bootstrap-server localhost:9092
spring:
kafka:
bootstrap-servers: 192.168.1.100:9092
from kafka import KafkaProducer
producer = KafkaProducer(
bootstrap_servers='192.168.1.100:9092'
)
producer.send('test', b'hello kafka')
sudo ufw allow 9092
Connection to node failedadvertised.listeners 配置错误localhost 但连的是远程服务器如果你用的是 Kafka 3.3+,可以不用 Zookeeper,我可以单独给你 KRaft 配置教程。
如果你愿意,可以告诉我:
我可以给你完全对应的配置示例。