1.安裝kafka(單機版)
1.1上傳 kafka_2.11-2.0.0.tgz 到 /root/Downloads
1.2解壓 tar 包
tar -zxvf kafka_2.11-2.0.0.tgz
解壓后:kafka_2.11-2.0.0
1.3刪除 LICENSE、NOTICE 、site-docs
rm -rf LICENSE NOTICE site-docs
1.4
1.4.1啟動kafka單機版的命令(在啟動kafka之前先啟動zookeeper)
kafka的libs文件夾中內置了zookeeper
1.4.2 在kafka的bin目錄下啟動
./zookeeper-server-start.sh ../config/zookeeper.properties
在啟動該命令之后,可以在該虛擬機上查看進程
1.4.3接下來,在bin目錄下啟動kafka
./kafka-server-start.sh ../config/server.properties
再次查看進程
1.5 開始使用kafka
1.5.1 topic是用來放消息的,也可以做消息分類
創建topic,在bin目錄下
./kafka-topics.sh --create --zookeeper zhangqi:2181 --replication-factor 1 --partitions 1 --topic test
1.5.2 查看topic
./kafka-topics.sh --list --zookeeper zhangqi:2181
1.5.3 啟動生產者
./kafka-console-producer.sh --broker-list zhangqi:9092 --topic test
啟動消費者
./kafka-console-consumer.sh --bootstrap-server zhangqi:9092 --topic test
生產者的作用:往topic里生產數據。生產者可以是java客戶端、flume等
消費者的作用:消費topic里的數據。消費者可以是java客戶端、spark streaming等
什么叫broker(代理)?安裝了kafka服務的機器
1.5.4 消費者可以接收,生成者生成的數據
消費者可以接收,生成者生成的數據,如果不指定 --from-beginning 那么消費者消費的是最新的數據。指定了之后也可以消費以前的數據
1.5.5 消費者,可以消費之前產生的數據
./kafka-console-consumer.sh --bootstrap-server zhangqi:9092 --topic test --from-beginning
2.kafka集群部署
分別往192.168.115.11、192.168.115.12、192.168.115.13這三台虛擬機上安裝kafka
2.1 將安裝好的一台分別拷貝到其余2台
2.2 修改 /root/Downloads/kafka_2.11-2.0.0/config/server.properties文件里的broker.id
修改kafka運行日志存放的路徑
配置連接zookeeper集群地址
2.3集群配置成功