在 Debian 上“测试 Kafka”通常分为几个层次:服务能否启动 → 基本生产/消费测试 → 集群/性能/可靠性测试。下面按常见做法一步步说明(以 Kafka 3.x + Debian 11/12 为例,使用官方二进制包,不依赖 Docker)。
sudo apt update
sudo apt install -y default-jdk wget tar
java -version
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
cd /opt/kafka
bin/zookeeper-server-start.sh config/zookeeper.properties
另开一个终端:
cd /opt/kafka
bin/kafka-server-start.sh config/server.properties
看到 started (kafka.server.KafkaServer) 表示成功。
bin/kafka-topics.sh \
--create \
--topic test \
--bootstrap-server localhost:9092 \
--partitions 1 \
--replication-factor 1
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
bin/kafka-console-producer.sh \
--topic test \
--bootstrap-server localhost:9092
输入:
hello kafka
debian test
另开终端:
bin/kafka-console-consumer.sh \
--topic test \
--from-beginning \
--bootstrap-server localhost:9092
✅ 能看到消息说明 Kafka 基本功能正常。
bin/kafka-producer-perf-test.sh \
--topic test \
--num-records 100000 \
--record-size 1024 \
--throughput -1 \
--producer-props bootstrap.servers=localhost:9092
bin/kafka-consumer-perf-test.sh \
--topic test \
--bootstrap-server localhost:9092 \
--messages 100000
KAFKA_CLUSTER_ID=$(bin/kafka-storage.sh random-uuid)
bin/kafka-storage.sh format \
--cluster-id $KAFKA_CLUSTER_ID \
--config config/kraft/server.properties
bin/kafka-server-start.sh config/kraft/server.properties
后续 Topic / 生产 / 消费测试与上面完全一致。
ss -lntp | grep 9092
sudo ufw allow 9092
tail -f logs/server.log
| 测试目标 | 方法 |
|---|---|
| 能否启动 | server.log |
| 基本通信 | console-producer / consumer |
| Topic 管理 | kafka-topics.sh |
| 性能 | perf-test 脚本 |
| 新架构 | KRaft 模式 |
如果你愿意,我可以:
你打算用 Kafka 做什么?(开发 / 运维 / 学习)