術語介紹
Broker : Kafka集羣包含一個或多個服務器,這種服務器被稱爲broker
Topic : 每條發佈到Kafka集羣的消息都有一個類別,這個類別被稱爲Topic。(物理上不同Topic的消息分開存儲,邏輯上一個Topic的消息雖然保存於一個或多個broker上但用戶只需指定消息的Topic即可生產或消費數據而不必關心數據存於何處)
Partition : Partition是物理上的概念,每個Topic包含一個或多個Partition.
Producer : 負責發佈消息到Kafka broker
Consumer : 消息消費者,向Kafka broker讀取消息的客戶端。
Consumer Group : 每個Consumer屬於一個特定的Consumer Group(可爲每個Consumer指定group name,若不指定group name則屬於默認的group)
下載
下載地址:http://kafka.apache.org/downloads
這裏我們下載到/usr/local
目錄下
集羣安裝配置
解壓 : cd /usr/local && tar -xzvf kafka_2.11-1.0.1.tgz
需要修改的配置/server.properties,不需要host.name
重要配置
# The id of the broker. This must be set to a unique integer for each broker.
# 集羣下設置成唯一的id
broker.id=0
#配置成你的內網ip
advertised.listeners=PLAINTEXT://192.168.15.169:9092
#zk集羣的ip和port,zookeeper集羣可以看我的另外一篇文章
zookeeper.connect=192.168.15.169:2181,192.168.15.169:2182,192.168.15.169:2183
#日誌路徑
log.dirs=/Users/hasegroup/Downloads/kafka_2.11-1.0.1/kafkaLogs
首先啓動zookeeper集羣環境,然後再啓動kafka
後臺啓動命令:
./kafka-server-start.sh -daemon ../config/server.properties
驗證zookeeper集羣是否啓動成功:
cd /zookeeper/bin dir
./zkCli.sh -server 127.0.0.1:2181
查看blocker:
ls /brokers/ids
查看某個blocker信息:
get /brokers/ids/0
創建topic:
./kafka-topics.sh --create --topic xizhen --replication-factor 1 --partitions 1 --zookeeper 192.168.15.169:2181
查看topic:
./kafka-topics.sh --list --zookeeper 192.168.15.169:2181
查看topic詳細:
./kafka-topics.sh --describe --zookeeper 192.168.15.169:2181
生產消息:
./kafka-console-producer.sh --broker-list 192.168.15.169:9092 --topic jason
消費消息:
./kafka-console-consumer.sh --zookeeper 192.168.15.169:2181 --topic jason --from-beginning
完!