在Debian上搭建Kafka集群需要以下几个步骤:
首先,确保你的Debian系统上已经安装了Java运行环境。
sudo apt update
sudo apt install openjdk-8-jdk
java -version
验证Java安装:
java -version
Kafka 2.8.0版本以后引入了Kraft模式,可以不依赖外部Zookeeper运行。如果需要使用Zookeeper,可以按照以下步骤安装:
wget https://downloads.apache.org/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz
tar -xzf apache-zookeeper-3.8.0-bin.tar.gz
mv apache-zookeeper-3.8.0 /opt/zookeeper
配置Zookeeper:
编辑 /opt/zookeeper/conf/zoo.cfg
文件,配置Zookeeper集群的相关信息。
dataDir=/tmp/zookeeper
clientPort=2181
启动Zookeeper:
/opt/zookeeper/bin/zookeeper-server-start.sh config/zoo.cfg
从Apache Kafka官网下载最新版本的Kafka,并解压到服务器上。
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzf kafka_2.12-3.5.2.tgz
mv kafka_2.12-3.5.2 /opt/kafka
为每个Kafka broker创建配置文件 server.properties
,并修改以下内容:
broker.id
: 每个broker的唯一标识。listeners
: 监听地址和端口。advertised.listeners
: 对外暴露的地址和端口。zookeeper.connect
: Zookeeper连接字符串。例如:
broker.id=1
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://192.168.1.100:9092
zookeeper.connect=localhost:2181
在每个Kafka broker上启动Kafka服务:
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
使用Kafka提供的命令行工具来验证集群是否正常运行。
/opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 3 --topic my_topic
生产者:
/opt/kafka/bin/kafka-console-producer.sh --broker-list 192.168.1.100:9092 --topic my_topic
消费者:
/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.100:9092 --topic my_topic --from-beginning
/etc/hosts
文件中配置了正确的IP地址和主机名映射。以上步骤应该可以帮助你在Debian上成功搭建一个Kafka集群。