Centos8安裝kafka【單機版】
kafka自2.8.0版本開始,不再將zookeeper作為必需組件,本文的實驗環境為kafka2.4.0,因此在安裝kafka之前,首先需要安裝zookeeper。
1. 下載kafka與zookeeper
kafka下載地址
需要下載與kafka版本對應的zookeeper版本,進入kafka安裝包的libs目錄,查看對應zookeeper依賴。
cd /usr/local/src/
wget https://archive.apache.org/dist/kafka/2.4.0/kafka_2.12-2.4.0.tgz
tar -zxvf kafka_2.12-2.4.0.tgz
# 查看版本:
cd kafka_2.12-2.4.0/libs
ls | grep zookeeper

可以看到,2.4.0版本的kafka依賴的zookeeper的版本為3.5.6。
zookeeper下載鏡像地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
2. 安裝zookeeper
2.1 解壓zookeeper
tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz
2.2 修改配置文件
cd /usr/local/src/apache-zookeeper-3.5.6-bin/conf
cp zoo_sample.cfg zoo.cfg
2.3 啟動測試
cd /usr/local/src/apache-zookeeper-3.5.6-bin/bin
# 啟動
./zkServer.sh start
# 停止
./zkServer.sh stop

2.4 將zookeeper啟動命令加入環境變量
vi /etc/profile
export PATH=$PATH:/usr/local/src/apache-zookeeper-3.5.6-bin/bin
source /etc/profile
3. 配置kafka
vi /usr/local/src/kafka_2.12-2.4.0/config/server.properties
//如果只允許本地訪問 則用localhost,如果需要外網可以訪問則用服務器地址,即安裝kafka的主機ip,我是在虛擬機上安裝,故填虛擬機IP:192.168.29.128
listeners=PLAINTEXT://192.168.29.128:9092
//dataDir是數據存放位置,默認是/tmp/kafka-logs
# dataDir=xxxx
//這個是刪除topic時才用得到的,如果不想刪除topic,可以不加
# delete.topic.enable=true
4. 啟動kafka
進入bin目錄
前臺啟動
kafka-server-start.sh ../config/server.properties
后臺啟動
nohup kafka-server-start.sh ../config/server.properties >> /dev/null &
5. 創建topic
進入bin目錄
./kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic test --zookeeper localhost:2181
--zookeeper后面的參數需要與server.properties配置中的一致,server.properties在config目錄下,見下圖
6. 發送接收消息
以下操作均在bin目錄下進行
6.1 創建生產者
kafka-console-producer.sh --broker-list localhost:9092 --topic test

6.2 創建消費者
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

6.3 為kafka配置系統環境變量
vi /etc/profile
export PATH=$PATH:/usr/local/src/kafka_2.12-2.4.0/bin
source /etc/profile
補充
kafka的一些操作
kafka主題
kafka-topics.sh
生產者
kafka-console-producer.sh
消費者
kafka-console-consumer.sh
topic的一些操作
查看列表
kafka-topics.sh --zookeeper 127.0.0.1:2181 --list
創建topic
kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic test --zookeeper localhost:2181
查看某個topic
kafka-topics.sh --zookeeper localhost:2181 --describe --topic test
刪除topic(分兩步)
(第一步)
kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
(第二步 找到top存放位置:server.properties中dataDir)
cd /tmp/kafka-logs
刪除 test-0(如果kafka配置文件中delete.topic.enable=true沒有設置的話,需要手動刪除目錄)
rm -rf test-0
參考文章:
https://blog.csdn.net/qq_34892981/article/details/110668529
推薦一個kafka的可視化工具,地址如下:
http://www.rzrgm.cn/miracle-luna/p/11299345.html
分類: Linux

浙公網安備 33010602011771號