温馨提示×

debian如何测试kafka

小樊
45
2026-09-19 01:43:13
栏目: 智能运维

在 Debian 上“测试 Kafka”通常分为几个层次:服务能否启动 → 基本生产/消费测试 → 集群/性能/可靠性测试。下面按常见做法一步步说明(以 Kafka 3.x + Debian 11/12 为例,使用官方二进制包,不依赖 Docker)。


一、环境准备(Debian)

1. 安装依赖

sudo apt update
sudo apt install -y default-jdk wget tar
java -version

2. 下载 Kafka

cd /opt
sudo wget https://downloads.apache.org/kafka/3.7.1/kafka_2.13-3.7.1.tgz
sudo tar -xzf kafka_2.13-3.7.1.tgz
sudo mv kafka_2.13-3.7.1 kafka

二、启动 Kafka(单节点测试)

1. 启动 Zookeeper(Kafka 3.x 仍可用)

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

2. 启动 Kafka

另开一个终端:

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

看到 started (kafka.server.KafkaServer) 表示成功。


三、基础功能测试(最重要)

1. 创建 Topic

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

2. 查看 Topic

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

3. 生产消息(Producer 测试)

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

输入:

hello kafka
debian test

4. 消费消息(Consumer 测试)

另开终端:

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

✅ 能看到消息说明 Kafka 基本功能正常。


四、Kafka 自带性能测试(官方工具)

1. 生产者性能测试

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 100000 \
  --record-size 1024 \
  --throughput -1 \
  --producer-props bootstrap.servers=localhost:9092

2. 消费者性能测试

bin/kafka-consumer-perf-test.sh \
  --topic test \
  --bootstrap-server localhost:9092 \
  --messages 100000

五、使用 KRaft 模式测试(无 Zookeeper,推荐新项目)

1. 生成集群 ID

KAFKA_CLUSTER_ID=$(bin/kafka-storage.sh random-uuid)

2. 格式化存储

bin/kafka-storage.sh format \
  --cluster-id $KAFKA_CLUSTER_ID \
  --config config/kraft/server.properties

3. 启动 Kafka

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

后续 Topic / 生产 / 消费测试与上面完全一致。


六、常见问题排查(Debian)

1. 端口未监听

ss -lntp | grep 9092

2. 防火墙(如启用)

sudo ufw allow 9092

3. 日志位置

tail -f logs/server.log

七、简单总结

测试目标 方法
能否启动 server.log
基本通信 console-producer / consumer
Topic 管理 kafka-topics.sh
性能 perf-test 脚本
新架构 KRaft 模式

如果你愿意,我可以:

  • 给你一个 systemd 服务文件
  • 教你用 Docker 在 Debian 测试 Kafka
  • 或在 Python / Java 中写测试代码

你打算用 Kafka 做什么?(开发 / 运维 / 学习)

0