下面给你一份 Ubuntu 上 Kafka 基础配置与启动 的实用说明(以 Kafka 3.x + Kafka 自带 Zookeeper 为例,最常见、适合入门和测试)。
Kafka 需要 JDK 8 或以上:
sudo apt update
sudo apt install openjdk-11-jdk -y
java -version
cd /opt
sudo wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
sudo tar -xzf kafka_2.13-3.6.1.tgz
sudo mv kafka_2.13-3.6.1 kafka
/opt/kafka/config/zookeeper.properties
常用参数:
dataDir=/tmp/zookeeper
clientPort=2181
/opt/kafka/config/server.properties
最常用修改项:
# broker 唯一 ID
broker.id=0
# 监听地址(本机)
listeners=PLAINTEXT://:9092
# 对外暴露地址(很重要,否则远程连不上)
advertised.listeners=PLAINTEXT://你的IP:9092
# 日志存储目录
log.dirs=/tmp/kafka-logs
# Zookeeper 地址
zookeeper.connect=localhost:2181
✅ 远程访问必须配置 advertised.listeners
/opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.properties
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
查看进程:
jps
/opt/kafka/bin/kafka-topics.sh \
--create \
--topic test \
--bootstrap-server localhost:9092 \
--partitions 1 \
--replication-factor 1
/opt/kafka/bin/kafka-console-producer.sh \
--topic test \
--bootstrap-server localhost:9092
/opt/kafka/bin/kafka-console-consumer.sh \
--topic test \
--from-beginning \
--bootstrap-server localhost:9092
sudo vim /etc/systemd/system/kafka.service
[Unit]
Requires=zookeeper.service
After=zookeeper.service
[Service]
Type=simple
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
Restart=on-abnormal
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable kafka
advertised.listeners9092如果你是用 Docker / KRaft / 集群 / 云服务器,告诉我场景,我可以给你对应配置。