在Debian系統上配置Kafka時,有幾個關鍵問題需要注意:
Java和Zookeeper的安裝:
sudo apt update
sudo apt install openjdk-8-jdk
java -version
docker run -d --name zookeeper -p 2181:2181 wurstmeister/zookeeper
或者手動安裝Zookeeper,參考其官方文檔。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
cd kafka_2.12-3.5.2
server.properties
,設置以下關鍵配置項:
broker.id
:指定每個Broker在集群中的唯一標識。listeners
:定義Kafka監聽的地址和端口。log.dirs
:指定消息日志的存儲路徑。advertised.listeners
:定義Kafka向外廣播的監聽地址和端口。zookeeper.connect
:定義Zookeeper的連接地址。broker.id 0
listeners PLAINTEXT://:9092
advertised.listeners PLAINTEXT://your_server_ip:9092
zookeeper.connect localhost:2181
網絡配置:
/etc/network/interfaces
文件中配置了正確的IP地址、子網掩碼和網關。auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
sudo ufw allow 9092/tcp
/etc/resolv.conf
文件。Kafka集群管理:
broker.id
是唯一的。消費者和生產者配置:
bootstrap.servers
指向正確的Kafka集群地址。group.id
配置正確,以避免消費者組之間的消息競爭。啟動和驗證:
./bin/zookeeper-server-start.sh config/zookeeper.properties
./bin/kafka-server-start.sh config/server.properties
./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
./kafka-console-producer.sh --broker-list localhost:9092 --topic test
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
通過以上步驟和注意事項,你應該能夠在Debian系統上成功配置Kafka。根據具體需求,可能還需要進行更多的配置和優化。