温馨提示×

kafka脚本如何跑debian

小樊
43
2026-10-12 17:02:34
栏目: 智能运维

在 Debian 上“跑 Kafka 脚本”通常指两件事之一:

  1. 在 Debian 系统上安装并运行 Kafka(含自带脚本,如 kafka-server-start.sh、kafka-console-producer.sh 等)
  2. 在 Debian 上运行你自己写的 Kafka 客户端脚本(Python / Shell / Java 等)

下面分别说明。


一、在 Debian 上运行 Kafka 自带脚本

1. 安装依赖

Kafka 依赖 Java:

sudo apt update
sudo apt install -y openjdk-17-jdk
java -version

2. 下载 Kafka

以 Kafka 3.7 为例:

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

3. 启动 Zookeeper(老版本)或 KRaft(新版本)

方式 A:使用 Zookeeper(传统)

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

另开终端:

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

方式 B:KRaft 模式(推荐,新版本)

KAFKA_CLUSTER_ID=$(bin/kafka-storage.sh random-uuid)
bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties
bin/kafka-server-start.sh config/kraft/server.properties

4. 运行 Kafka 脚本示例

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 --bootstrap-server localhost:9092 --from-beginning

二、在 Debian 上运行自定义 Kafka 脚本

1. Shell 脚本调用 Kafka

#!/bin/bash
bin/kafka-console-producer.sh --topic test --bootstrap-server localhost:9092

赋予执行权限:

chmod +x kafka_test.sh
./kafka_test.sh

2. Python 脚本(Debian)

sudo apt install -y python3-pip
pip3 install kafka-python

producer.py:

from kafka import KafkaProducer

producer = KafkaProducer(bootstrap_servers='localhost:9092')
producer.send('test', b'hello debian')
producer.flush()

运行:

python3 producer.py

三、作为系统服务运行(Debian 推荐)

可创建 systemd 服务:

/etc/systemd/system/kafka.service

[Unit]
Description=Apache Kafka
After=network.target

[Service]
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/kraft/server.properties
Restart=on-failure

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start kafka
sudo systemctl enable kafka

如果你能具体说明:

  • 是 Kafka 自带脚本还是自己写的脚本
  • 使用 Shell / Python / Java
  • Debian 版本(11 / 12)

我可以给你更精确的示例。

0 踩