温馨提示×

ubuntu kafka怎么设配置

小樊
46
2026-10-08 11:31:38
栏目: 智能运维

下面按在 Ubuntu 上配置 Kafka的常见步骤和关键配置点来说明,适合单机/伪分布式起步,也包含生产环境常用项。


一、前置条件(Ubuntu)

# 安装 Java(Kafka 需要)
sudo apt update
sudo apt install openjdk-11-jdk -y

java -version

下载 Kafka(以 3.x 为例):

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

二、核心配置文件位置

Kafka 主要配置文件在:

config/
 ├── server.properties      # Broker 配置(最重要)
 ├── zookeeper.properties  # Zookeeper(老版本需要)
 └── producer.properties / consumer.properties

三、最基础配置(单机可用)

1️⃣ 修改 config/server.properties

# Broker 唯一 ID
broker.id=0

# 监听地址(本机)
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://localhost:9092

# 日志(消息存储)目录
log.dirs=/tmp/kafka-logs

# Zookeeper(Kafka 3.x 仍可用)
zookeeper.connect=localhost:2181

# 自动创建 topic(方便测试)
auto.create.topics.enable=true

四、启动 Kafka(Ubuntu)

启动 Zookeeper(老版本)

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

启动 Kafka

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

(后台运行加 -daemon)


五、常用配置说明(重点)

1️⃣ 监听外网 / 其他机器访问

listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://你的IP:9092

2️⃣ Topic 默认参数

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

3️⃣ 数据保留策略

log.retention.hours=168
log.segment.bytes=1073741824

4️⃣ 生产环境建议

num.network.threads=3
num.io.threads=8

六、KRaft 模式(Kafka 3.x 新方式,无 Zookeeper)

配置 config/kraft/server.properties

process.roles=broker,controller
node.id=1
controller.quorum.voters=1@localhost:9093
listeners=PLAINTEXT://:9092,CONTROLLER://:9093
advertised.listeners=PLAINTEXT://localhost:9092

初始化:

bin/kafka-storage.sh format -t <cluster-id> -c config/kraft/server.properties
bin/kafka-server-start.sh config/kraft/server.properties

七、常见问题

✅ 端口被占用

netstat -tunlp | grep 9092

✅ 无法连接

  • 检查 advertised.listeners
  • 防火墙:sudo ufw allow 9092

如果你愿意,我可以:

  • 帮你写 systemd 开机自启
  • 区分 开发 / 生产配置
  • 给你一份 完整 server.properties 模板

你现在是 学习 / 测试 / 生产环境?

0 踩