1. 程式人生 > 實用技巧 >Ubuntu安裝部署Kafka

Ubuntu安裝部署Kafka

Ubuntu安裝部署Kafka

環境: Ubuntu 18.04.4 LTS ,JDK1.8,kafka_2.12-2.3.1

確保已經安裝了JDK,JDK安裝過程不再贅述。可參考文章xxxx

一、下載二進位制安裝包

1.1 官網地址:https://kafka.apache.org/downloads

1.2 國內映象地址:https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.3.1/

二、安裝

2.1 上傳二進位制安裝包到伺服器/usr/local目錄下並解壓

##進入/usr/local目錄
# cd /usr/local
##解壓
# tar xvf kafka_2.12-2.3.1.tgz
##建立軟連結
# ln -sv kafka_2.12-2.3.1 kafka

2.2 建立kafka的日誌目錄

# cd /usr/local/kafka
# mkdir logs

2.3 修改配置檔案 server.properties

# vim /usr/local/kafka/config/server.properties

修改broker.id的值為1,因為kafka一般線上均為叢集部署,所以每個單機有自己的id,本次測試只是單機所以隨意設定為1

指定kafka的日誌檔案目錄為2.2所建立的目錄

2.4 啟動zookeeper

zookeeper可以自己搭建,參考文章xxx。這裡我使用kafka自帶的zk

# cd /usr/loacl/kafka/
# ./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
# jps

檢查一下是否啟動成功,QuorumPeerMain表示啟動成功

2.5 啟動kafka

# cd /usr/loacl/kafka/
# ./bin/kafka-server-start.sh -daemon  config/server.properties

檢查一下啟動是否成功,kafka佔用埠為9092,zookeeper佔用埠2181

三、驗證

3.1 建立topic

指定zookeeper的地址、埠,副本個數為1(因為我只是單機一個broker) 分割槽數1 和topic名稱test

# cd /usr/local/kafka
# bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

3.2 檢視top列表

# cd /usr/local/kafka
# bin/kafka-topics.sh --list --zookeeper localhost:2181

3.3 啟動生產者

--broker-list 指定broker叢集的埠 多個重甲你用都好隔開 ,--topic指定具體的topic

# cd /usr/local/kafka
# bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

3.4 啟動消費者

另開一個終端,啟動消費者。指定broker叢集的埠 和具體的topic --from-beginning代表從頭開始讀取訊息

# cd /usr/local/kafka
# bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

最終效果

四、命令總結

#啟動zookeeper
# bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
#啟動kafka伺服器
# bin/kafka-server-start.sh config/server.properties
#建立topic  
# bin/kafka-topics.sh --create --zookeeper localhost:2181 --repication-factor 1 --partitions 1 --topic test  
#檢視topic列表
bin/kafka-topics.sh --list --zookeeper localhost:2181  
啟動生產者
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test  
啟動消費者
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">