以下是在CentOS上配置Kafka的步骤:
安装Java环境
sudo yum install java-1.8.0-openjdk-devel
java -version # 验证安装
下载并解压Kafka
wget https://downloads.apache.org/kafka/3.6.1/kafka_2.12-3.6.1.tgz
tar -zxvf kafka_2.12-3.6.1.tgz
sudo mv kafka_2.12-3.6.1 /opt/kafka
配置环境变量
编辑/etc/profile,添加:
export KAFKA_HOME=/opt/kafka
export PATH=$PATH:$KAFKA_HOME/bin
使配置生效:
source /etc/profile
配置Kafka(单节点)
编辑/opt/kafka/config/server.properties:
broker.id=0 # 唯一标识
listeners=PLAINTEXT://localhost:9092 # 监听地址
log.dirs=/tmp/kafka-logs # 日志目录
zookeeper.connect=localhost:2181 # Zookeeper地址(若使用)
启动服务
/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties &
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &
验证配置
/opt/kafka/bin/kafka-topics.sh --create --topic test --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
# 生产者
/opt/kafka/bin/kafka-console-producer.sh --topic test --bootstrap-server localhost:9092
# 消费者
/opt/kafka/bin/kafka-console-consumer.sh --topic test --from-beginning --bootstrap-server localhost:9092
可选:配置防火墙与开机启动
sudo firewall-cmd --add-port=9092/tcp --permanent
sudo firewall-cmd --reload
说明:
broker.id唯一、zookeeper.connect指向集群所有节点。server.properties官方文档。