在Ubuntu上搭建Kafka配置步骤如下:
安装Java环境
sudo apt update
sudo apt install openjdk-11-jdk # 推荐JDK 11
java -version # 验证安装
下载并解压Kafka
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
sudo mv kafka_2.13-3.7.0 /opt/kafka
配置ZooKeeper(Kafka内置)
cd /opt/kafka/config
sudo cp zoo_sample.cfg zoo.cfg
sudo nano zoo.cfg
# 修改以下配置
dataDir=/tmp/zookeeper
clientPort=2181
启动ZooKeeper:
/opt/kafka/bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
配置Kafka
编辑server.properties:
sudo nano /opt/kafka/config/server.properties
# 关键配置
broker.id=0
listeners=PLAINTEXT://0.0.0.0:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181
delete.topic.enable=true
启动Kafka服务
/opt/kafka/bin/kafka-server-start.sh -daemon config/server.properties
验证配置
/opt/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --topic test --partitions 1 --replication-factor 1
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092
# 生产者
/opt/kafka/bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test
# 消费者
/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
说明:
broker.id唯一,zookeeper.connect指向集群ZooKeeper地址。