kafaka叢集環境搭建
伺服器環境準備
使用vm虛擬三個linux主機:192.168.128.139,192.168.128.140,192.168.128.141
Zookeeper叢集環境搭建
1.每臺伺服器節點上安裝jdk1.8環境
使用java version命令測試
2.每臺伺服器節點上安裝Zookeeper
參考https://blog.csdn.net/qq_38270106/article/details/83715563
3.每臺虛擬機器均進行以下操作:
解壓下載好的kafka壓縮包並重命名
cd /usr/local
wget http://mirror.bit.edu.cn/apache/kafka/1.0.0/kafka_2.11-1.0.0.tgz
tar -zxvf kafka_2.11-1.0.0.tgz
mv kafka_2.11-1.0.0 kafka
修改配置檔案
vi /usr/local/kafka/config/server.properties
192.168.128.139需要修改的內容如下
broker.id=0
listeners=PLAINTEXT://192.168.128.139:9092
zookeeper.connect=192.168.128.139:2181,192.168.128.140:2181,192.168.128.141:2181
192.168.128.140需要修改的內容如下
broker.id=1
listeners=PLAINTEXT://192.168.128.140:9092
zookeeper.connect=192.168.128.139:2181,192.168.128.140:2181,192.168.128.141:2181
192.168.128.141需要修改的內容如下
broker.id=2
listeners=PLAINTEXT://192.168.128.141:9092
zookeeper.connect=192.168.128.139:2181,192.168.128.140:2181,192.168.128.141:2181
在系統環境中配置kafka的路徑
vi /etc/profile
export KAFKA_HOME=/usr/local/kafka
# 多路徑PATH寫法為PATH=${ZOOKEEPER_HOME}/bin:${KAFKA_HOME}/bin:$PATH
PATH=${KAFKA_HOME}/bin:$PATH
export PATH
使修改完的環境變數生效
source /etc/profile
Kafka叢集環境測試
1、開啟3臺虛擬機器的zookeeper程式
/usr/local/zookeeper/bin/zkServer.sh start
開啟成功後檢視zookeeper叢集的狀態
/usr/local/zookeeper/bin/zkServer.sh status
出現Mode:follower或是Mode:leader則代表成功
2、在後臺開啟3臺虛擬機器的kafka程式
cd /usr/local/kafka
./bin/kafka-server-start.sh -daemon config/server.properties
3、在其中一臺虛擬機器(192.168.128.139)建立名為“test”的topic,它有一個分割槽和一個副本
/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.128.139:2181 --replication-factor 1 --partitions 1 --topic test
建立三個分割槽
/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.128.139:2181 --replication-factor 1 --partitions 3 --topic test-all
檢視topic列表
/usr/local/kafka/bin/kafka-topics.sh --list --zookeeper 192.168.128.139:2181
4、Kafka自帶一個命令列客戶端,它從檔案或標準輸入中獲取輸入,並將其作為message(訊息)傳送到Kafka叢集。預設情況下,每行將作為單獨的message傳送。
執行 producer,然後在控制檯輸入一些訊息以傳送到伺服器。
cd /usr/local/kafka/
bin/kafka-console-producer.sh --broker-list 192.168.128.139:9092 --topic test
5、 啟動Consumer
cd /usr/local/kafka/
bin/kafka-console-consumer.sh --bootstrap-server 192.168.128.140:9092 --topic test --from-beginning