下面按**「最快跑起来」→「常用配置说明」→「生产建议」**给你讲,Ubuntu 下 Kafka 的配置。
Kafka 依赖 Java 和 Zookeeper(Kafka 3.x 也可用 KRaft,但新手建议先 Zookeeper)。
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
Kafka 主要有 3 个配置:
| 文件 | 作用 |
|---|---|
config/server.properties |
Kafka 服务配置 |
config/zookeeper.properties |
Zookeeper 配置 |
config/producer.properties |
生产者 |
config/consumer.properties |
消费者 |
dataDir=/tmp/zookeeper
clientPort=2181
# broker 唯一 ID
broker.id=0
# 监听地址(非常重要)
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://localhost:9092
# 日志存储目录
log.dirs=/tmp/kafka-logs
# Zookeeper 地址
zookeeper.connect=localhost:2181
# 分区默认副本数(单机只能 1)
default.replication.factor=1
offsets.topic.replication.factor=1
✅ 单机环境到这里就够了。
cd /opt/kafka
bin/zookeeper-server-start.sh config/zookeeper.properties
bin/kafka-server-start.sh config/server.properties
# 创建 topic
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
advertised.listeners=PLAINTEXT://服务器IP:9092
可帮你写 kafka.service 和 zookeeper.service
log.dirs=/data/kafka/logs
num.partitions=3
default.replication.factor=3
min.insync.replicas=2
unclean.leader.election.enable=false
log.retention.hours=168
可以告诉我:
我可以直接给你对应完整配置 + systemd 脚本。