温馨提示×

ubuntu装kafka怎么设置

小樊
48
2026-09-05 16:43:15
栏目: 智能运维

下面给你一份 在 Ubuntu 上安装并配置 Kafka(以 Kafka 3.x + 自带 Zookeeper 为例) 的简明步骤,适合新手直接照着做。


一、环境准备

1. 安装 Java

Kafka 依赖 Java(推荐 JDK 8 或 11):

sudo apt update
sudo apt install -y openjdk-11-jdk

验证:

java -version

二、下载并安装 Kafka

2. 下载 Kafka

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. 配置 Zookeeper(默认即可)

Kafka 自带 Zookeeper 配置文件:

/opt/kafka/config/zookeeper.properties

默认端口:2181


4. 配置 Kafka

编辑:

sudo nano /opt/kafka/config/server.properties

关键配置(单机示例):

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

如果是服务器远程访问,把 localhost 改成服务器 IP


四、启动 Kafka

5. 启动 Zookeeper

/opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.properties

6. 启动 Kafka

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

查看进程:

jps

应看到:

  • QuorumPeerMain(Zookeeper)
  • Kafka

五、测试 Kafka

7. 创建 Topic

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

8. 生产消息

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

输入:

hello kafka

9. 消费消息

新开终端:

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

六、设置开机自启(可选)

systemd 示例(简化)

sudo nano /etc/systemd/system/kafka.service
[Unit]
Description=Apache Kafka
Requires=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

七、常见问题

❌ 端口被占用

netstat -tunlp | grep 9092

❌ 无法远程连接

  • advertised.listeners
  • 开放防火墙:
sudo ufw allow 9092

如果你告诉我:

  • ✅ Ubuntu 版本
  • ✅ 是否用 Docker
  • ✅ 单机 / 集群
  • ✅ 是否 Kafka + KRaft(不用 Zookeeper)

我可以给你 更精准的配置方案

0