在Debian上搭建Kafka集群需要以下几个步骤:
首先,确保你的Debian系统上已经安装了Java和Zookeeper。
sudo apt update
sudo apt install openjdk-8-jdk
验证Java安装:
java -version
下载并解压Zookeeper:
wget http://archive.apache.org/dist/zookeeper/stable/zookeeper-3.6.1.tar.gz
tar -zxvf zookeeper-3.6.1.tar.gz
cd zookeeper-3.6.1
修改配置文件zoo.cfg
以启用集群模式:
cp conf/zoo_sample.cfg conf/zoo.cfg
在zoo.cfg
文件末尾添加:
server.1=zookeeper1:2888:3888
server.2=zookeeper2:2888:3888
server.3=zookeeper3:2888:3888
启动Zookeeper:
bin/zookeeper-server-start.sh config/zoo.cfg
下载并解压Kafka:
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -zxvf kafka_2.12-3.5.2.tgz
cd kafka_2.12-3.5.2
为每个Kafka broker创建配置文件server.properties
,并修改以下内容:
broker.id
:每个broker的ID,例如:broker.id=1
listeners
:监听地址和端口,例如:listeners=PLAINTEXT://:9092
advertised.listeners
:对外暴露的地址和端口,例如:advertised.listeners=PLAINTEXT://192.168.1.100:9092
zookeeper.connect
:Zookeeper连接字符串,例如:zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
在每个Kafka broker上启动Kafka服务:
bin/kafka-server-start.sh config/server.properties
使用Kafka提供的命令行工具来验证集群是否正常运行:
创建主题:
bin/kafka-topics.sh --zookeeper 192.168.1.100:2181 --create --topic test --partitions 3 --replication-factor 1
生产者和消费者测试:
# 生产者
bin/kafka-console-producer.sh --broker-list 192.168.1.100:9092 --topic test
# 消费者
bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.100:9092 --topic test --from-beginning
/etc/hosts
文件中配置了正确的IP地址和主机名映射。以上步骤应该可以帮助你在Debian上成功搭建一个Kafka集群。如果在搭建过程中遇到问题,可以参考Kafka和Zookeeper的官方文档,或者在相关技术社区寻求帮助。