CentOS 7上安裝Kafka
簡介
Kafka 是一種高吞吐的分布式發布訂閱訊息系統,能夠替代傳統的訊息佇列用於解耦合資料處理,緩衝未處理訊息等,同時具有更高的吞吐率,支援分區、多副本、冗餘,因此被廣泛用於大規模訊息資料處理應用。Kafka 支援Java及多種其它語言用戶端,可與Hadoop、Storm、Spark等其它大資料工具結合使用。
本教程主要介紹Kafka 在Centos 7上的安裝和使用,包括功能驗證和叢集的簡單配置。
安裝JDK
Kafka 使用Zookeeper 來儲存相關配置資訊,Kafka及Zookeeper 依賴Java 運行環境,從oracle網站下載JDK 安裝包,解壓安裝:
$tar zxvf jdk-8u65-linux-x64.tar.gz$mv jdk1.8.0_65 java
設定Java 環境變數:
JAVA_HOME=/opt/javaPATH=$PATH:$JAVA_HOME/binexport JAVA_HOME PATH
也可以選擇yum install安裝,相應設定環境變數。
安裝Kafka
從官網下載Kafka 安裝包,解壓安裝: 官網地址:http://kafka.apache.org/downloads.html
tar zxvf kafka_2.11-0.8.2.2.tgzmv kafka_2.11-0.8.2.2 kafkacd kafka
功能驗證
1.啟動Zookeeper 使用安裝包中的指令碼啟動單節點Zookeeper 執行個體:
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
2.啟動Kafka 服務 使用kafka-server-start.sh 啟動kafka 服務:
bin/kafka-server-start.sh config/server.properties
3.建立topic 使用kafka-topics.sh 建立單分區單副本的topic test:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
查看topic:
bin/kafka-topics.sh --list --zookeeper localhost:2181test
4.產生訊息 使用kafka-console-producer.sh 發送訊息:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test Hello world!
5.消費訊息 使用kafka-console-consumer.sh 接收訊息並在終端列印:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
producer產生的訊息和consumer消費的訊息是同步的。