温馨提示×

如何在Ubuntu启动Kafka

小樊
44
2026-08-02 16:21:11
栏目: 智能运维

在 Ubuntu 上启动 Apache Kafka,一般流程如下(以 Kafka 3.x + 自带 Zookeeper 为例,也是最常见的方式)。


一、前置条件

1. 安装 Java

Kafka 依赖 Java(推荐 Java 8 / 11 / 17)。

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

验证:

java -version

二、下载并安装 Kafka

1. 下载 Kafka

去官网复制最新版本地址(示例为 3.6.1):

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

2. 解压

sudo tar -xzf kafka_2.13-3.6.1.tgz
sudo mv kafka_2.13-3.6.1 kafka

三、启动 Kafka(先 Zookeeper,再 Kafka)

1. 启动 Zookeeper

Kafka 自带 Zookeeper:

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

✅ 看到 binding to port 2181 表示成功。

建议开一个新终端继续操作。


2. 启动 Kafka Broker

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

✅ 看到类似:

[KafkaServer id=0] started

四、验证 Kafka 是否启动成功

1. 创建 Topic

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

2. 查看 Topic

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

3. 发送消息

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

输入内容后回车。

4. 消费消息

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

能看到消息即说明 Kafka 正常运行 ✅


五、后台运行(常用)

# Zookeeper
nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper.log 2>&1 &

# Kafka
nohup bin/kafka-server-start.sh config/server.properties > kafka.log 2>&1 &

六、停止 Kafka

bin/kafka-server-stop.sh
bin/zookeeper-server-stop.sh

七、常见问题

1. 端口被占用

  • Zookeeper:2181
  • Kafka:9092
sudo netstat -tulnp | grep 2181

2. Java 找不到

echo $JAVA_HOME

如为空,需配置:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

八、如果你用的是 Kafka 3.3+(可选:KRaft 模式)

如果你不想用 Zookeeper,也可以直接用 KRaft 模式,我可以单独给你一份 无 Zookeeper 的 Kafka 启动教程


需要我帮你写 systemd 服务文件KRaft 模式配置 吗?

0