温馨提示×

Kafka配置步骤是什么

小樊
40
2026-08-06 18:40:30
栏目: 大数据

Kafka 的配置可以分为单机(Standalone)集群(Cluster)两种场景。下面我按从零开始、最常用的方式给你一个完整、清晰的 Kafka 配置步骤,适用于 Linux / macOS / Windows(WSL)


一、前置条件

1. 安装 JDK

Kafka 依赖 Java:

java -version

推荐:

  • JDK 8 / 11 / 17(Kafka 3.x 推荐 11+)

二、下载并解压 Kafka

1. 下载 Kafka

官网:https://kafka.apache.org/downloads

wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz

2. 解压

tar -xzf kafka_2.13-3.6.1.tgz
cd kafka_2.13-3.6.1

三、Kafka 核心配置(重点)

Kafka 主要有两个核心配置文件:

文件 作用
server.properties Kafka Broker 配置
zookeeper.properties Zookeeper 配置(Kafka 2.x / 3.x 仍常用)

四、Zookeeper 配置(Kafka 依赖)

1. 修改 Zookeeper 配置(可选)

vim config/zookeeper.properties

关键配置:

dataDir=/tmp/zookeeper
clientPort=2181

2. 启动 Zookeeper

bin/zookeeper-server-start.sh config/zookeeper.properties

✅ Zookeeper 默认端口:2181


五、Kafka Broker 配置

1. 修改 server.properties

vim config/server.properties

必须配置项:

broker.id=0
listeners=PLAINTEXT://localhost:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181

常见可选配置:

num.partitions=3
default.replication.factor=1
offsets.topic.replication.factor=1

六、启动 Kafka Broker

bin/kafka-server-start.sh config/server.properties

✅ Kafka 默认端口:9092


七、验证 Kafka 是否启动成功

1. 查看进程

jps

应看到:

QuorumPeerMain  # Zookeeper
Kafka           # Kafka

八、创建 Topic(核心操作)

bin/kafka-topics.sh \
--create \
--topic test-topic \
--bootstrap-server localhost:9092 \
--partitions 3 \
--replication-factor 1

查看 Topic:

bin/kafka-topics.sh --list --bootstrap-server localhost:9092

九、生产与消费消息测试

1. 启动生产者

bin/kafka-console-producer.sh \
--topic test-topic \
--bootstrap-server localhost:9092

输入消息:

hello kafka

2. 启动消费者

bin/kafka-console-consumer.sh \
--topic test-topic \
--from-beginning \
--bootstrap-server localhost:9092

✅ 能看到刚才发送的消息


十、Kafka 集群(简化版)

1. 复制配置文件

cp config/server.properties config/server-1.properties
cp config/server.properties config/server-2.properties

2. 分别修改

broker.id=1
listeners=PLAINTEXT://localhost:9093
log.dirs=/tmp/kafka-logs-1
broker.id=2
listeners=PLAINTEXT://localhost:9094
log.dirs=/tmp/kafka-logs-2

3. 启动多个 Broker

bin/kafka-server-start.sh config/server-1.properties
bin/kafka-server-start.sh config/server-2.properties

十一、Kafka 3.x(KRaft 模式,无 Zookeeper)

✅ 新版本推荐,但生产需谨慎

process.roles=broker,controller
node.id=1
controller.quorum.voters=1@localhost:9093

启动方式不同,需要 kafka-storage.sh 初始化。


十二、常见配置总结

配置项 说明
broker.id Broker 唯一 ID
listeners 客户端连接地址
log.dirs 消息存储目录
zookeeper.connect ZK 地址
num.partitions 默认分区数
replication.factor 副本数

十三、典型问题排查

  • Kafka 起不来 → 检查 端口占用
  • 连不上 → listeners 配置错误
  • Topic 创建失败 → Zookeeper 未启动

如果你愿意,我可以:

  • ✅ 画一张 Kafka 架构图
  • ✅ 给你一份 生产环境推荐配置
  • ✅ 讲 Kafka + Spring Boot 实战配置
  • ✅ 对比 Kafka vs RocketMQ vs RabbitMQ

你现在是 学习 / 面试 / 生产环境 哪种场景?

0