下面给你一份在 Debian 上部署 Kafka(单机/伪集群)的常见配置步骤,以 Kafka 3.x + Java 17 为例,适合学习和测试环境。
sudo apt update
sudo apt upgrade -y
Kafka 依赖 JVM:
sudo apt install -y openjdk-17-jdk
java -version
cd /opt
sudo wget https://downloads.apache.org/kafka/3.7.0/kafka_2.13-3.7.0.tgz
sudo tar -xzf kafka_2.13-3.7.0.tgz
sudo mv kafka_2.13-3.7.0 kafka
Kafka 3.x 仍可用 Zookeeper(新版可用 KRaft,但 Zookeeper 更常见)
编辑:
sudo nano /opt/kafka/config/zookeeper.properties
常用配置:
dataDir=/opt/kafka/zookeeper-data
clientPort=2181
maxClientCnxns=0
创建数据目录:
sudo mkdir -p /opt/kafka/zookeeper-data
sudo nano /opt/kafka/config/server.properties
关键配置(单节点):
broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://localhost:9092
log.dirs=/opt/kafka/kafka-logs
zookeeper.connect=localhost:2181
num.partitions=1
创建日志目录:
sudo mkdir -p /opt/kafka/kafka-logs
cd /opt/kafka
bin/zookeeper-server-start.sh config/zookeeper.properties
新开终端:
cd /opt/kafka
bin/kafka-server-start.sh config/server.properties
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 \
--from-beginning \
--bootstrap-server localhost:9092
可创建 systemd 服务,防止终端关闭 Kafka 停止运行(需要我可以给你完整 service 文件)。
advertised.listenersKAFKA_HEAP_OPTS如果你需要:
告诉我你的使用场景,我可以直接给你定制配置。