在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的官方文檔,或者在相關技術社區尋求幫助。