Kafka 的搭建、驗證Kafka是否安裝成功(Kafka基本操作)


Kafka 的搭建

Kafka : 去中心化架構

1、上傳、解壓、配置環境變量

上傳壓縮包到任意節點(這里選擇master)

cd /usr/local/module

tar -zxvf /usr/local/module/kafka_2.11-1.0.0.tgz -C /usr/local/soft/

//因為 Kafka : 去中心化架構 ,所以配置環境變量 - 所有節點都配置
vim /etc/profile

export KAFKA_HOME=/usr/local/soft/kafka_2.11-1.0.0

export PATH=$PATH:$KAFKA_HOME/bin

source /etc/profile

2、修改配置文件

vim /usr/local/soft/kafka_2.11-1.0.0/config/server.properties
# 需要修改幾個配置
    1、broker.id=0 //每一個節點broker.id 要不一樣 master--0,node1--1,node2--2
    2、zookeeper.connect=master:2181,node1:2181,node2:2181 //Zookeeper的地址,Kafka需要Zookeeper來管理元數據
    3、log.dirs=/usr/local/soft/kafka_2.11-1.0.0/data //消息(數據)存放的位置

3、同步到所有節點

偽分布式不需要同步

scp -r /usr/local/soft/kafka_2.11-1.0.0 node1:`pwd`
scp -r /usr/local/soft/kafka_2.11-1.0.0 node2:`pwd`

同步到 node1、node2 之后不要忘記修改 broker.id

4、將master的環境變量同步到node1,node2

若想 node1,node2 的環境變量手動去配置,這一步不需要做

scp -r /etc/profile node1:/etc/
scp -r /etc/profile node2:/etc/

同步過去之后不要忘記 source 一下

5、啟動\停止 Kafka

1、需要先啟動zookeeper,需要在所有節點啟動
zkServer.sh start
查看狀態
zkServer.sh status
關閉
zkServer.sh stop

2、啟動broker,需要在所有節點啟動 -- 命令在Kafka的bin目錄下
kafka-server-start.sh -daemon /usr/local/soft/kafka_2.11-1.0.0/config/server.properties
啟動kafka需要指定的參數:
-daemon : 后台啟動
/usr/local/soft/kafka_2.11-1.0.0/config/server.properties : Kafka配置文件所在的位置

3、退出(有的時候殺不掉,比較惡心)
kill -9

6、驗證Kafka是否安裝成功(Kafka基本操作)

通過 jps 查看啟動成功的 kafka 進程,並不能代表Kafka安裝成功

隨便選擇一台節點操作

1、創建topic
kafka-topics.sh --create --zookeeper master:2181,node1:2181,node2:2181 --replication-factor 3 --partitions 3 --topic test_topic2
需要指定的參數:
--zookeeper : 指定Zookeeper的地址
--replication-factor : 每一個分區的副本數量
--partition : 分區數,根據數據量設置
--topic : 指定topic的名稱

2、查看topic描述信息
kafka-topics.sh --describe  --zookeeper master:2181,node1:2181,node2:2181 --topic test_topic2

3、獲取所有topic
kafka-topics.sh --list  --zookeeper  master:2181,node1:2181,node2:2181

4、創建控制台生產者 -- Kafka提供的一個用於測試的工具,可以往topic中生產數據
kafka-console-producer.sh --broker-list master:9092,node1:9092,node2:9092 --topic test_topic2
需要指定的參數:
--broker-list : 指定Kafka節點的列表
--topic : 指定topic的名稱

5、創建控制台消費者 -- Kafka提供的一個用於測試的工具,可以消費topic中數據  
kafka-console-consumer.sh --bootstrap-server master:9092,node1:9092,node2:9092 --from-beginning --topic test_topic2
需要指定的參數:
--bootstrap-server : 指定Kafka節點的列表,和 --broker-list 類似
--from-beginning : 從頭消費

若沒有創建 topic ,直接使用kafka-console-producer.sh --broker-list master:9092,node1:9092,node2:9092 --topic test_topic2命令創建生產者也可以成功.
因為當這個 topic 不存在的時候,他會自動創建一個副本為1、分區為1的 topic

7、重置Kafka

假設安裝出了問題,可以重置

1、關閉kafka
kill -9 

2、刪除 zk 元數據
zkCli.sh
刪除與kafka有關的所有信息
查看根目錄下 : ls / 
刪除:rmr /config
刪除:rmr /brokers

3、刪除kafka的數據  所有節點都要刪除
rm -rf /usr/local/soft/kafka_2.11-1.0.0/data 

4 重啟
kafka-server-start.sh -daemon  /usr/local/soft/kafka_2.11-1.0.0/config/server.properties


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM