【消息隊列】y.kafka單機安裝

簡介

要配置kafka,首先要配置zookeeper保證集羣的高可用。所以本教程包含二者的配置。java

http://kafka.apache.org/apache

一、下載kafka:https://www.apache.org/dyn/closer.cgi?path=/kafka/2.1.0/kafka_2.11-2.1.0.tgzbootstrap

二、下載zookeoper:http://mirror.bit.edu.cn/apache/zookeeper/安全

百度雲盤也放的有一份哦。服務器

0、準備工做

一、目前配置是單機環境。ssh

二、配置好本機的SSH無祕鑰登陸(雖然不是必須,可是做爲集羣間更好的管理,這是必要的步驟)測試

三、關閉防火牆。固然,爲了安全起見,最好仍是不要偷懶,應該針對性的開啓須要開啓的端口。命令行

四、配置java jdk環境。線程

一、安裝zookeeper

一、解壓安裝包並複製zoo.cfg模板文件爲zoo.cfg日誌

# cd /opt/module/zookeeper-3.4.10/conf
# cp zoo_sample.cfg zoo.cfg

二、配置zoo.cfg

# vi zoo.cfg

zoo.cfg配置以下:

#心跳間隔
tickTime=2000
#其餘服務器鏈接到Leader時,最長能忍受的心跳間隔數:10*2000 = 20秒
initLimit=10
#發送消息時,多長忍受心跳間隔數:5*2000 = 10秒
syncLimit=5
#快照日誌
dataDir=/opt/module/zookeeper-3.4.10/zkdata
#事務日誌
dataLogDir=/opt/module/zookeeper-3.4.10/zkdatalog
#客戶端鏈接zookeeper服務器的端口
clientPort=2181

三、啓動服務

# ./bin/zkServer.sh start

四、查看狀態

[root@h24 bin]# sh zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: standalone

[root@h24 bin]# jps
1892 NameNode
2025 DataNode
7723 Jps
2207 SecondaryNameNode
7631 QuorumPeerMain(zookeeper線程)

X、其餘命令

*** 中止服務
# bin/zkServer.sh stop

二、配置kafka

一、解壓kafka。

二、直接啓動服務

bin/kafka-server-start.sh -daemon ./config/server.properties

若是正常的話,則應該不會有任何輸出信息;若是不正常,可查看詳細日誌文件:tail -fn 100 logs/server.log

三、查看服務

[root@h24 kafka_2.12-2.1.0]# jps
8097 Kafka(kafka服務進程)
8179 Jps
1892 NameNode
2025 DataNode
2207 SecondaryNameNode
7631 QuorumPeerMain

三、測試kafka

一、建立話題,例如建立一個名爲zhaoyi的話題(指定分區爲1):

[root@h24 kafka_2.12-2.1.0]# bin/kafka-topics.sh --create --zookeeper h24:2181 --replication-factor 1 --partitions 1 --topic zhaoyi
Created topic "zhaoyi".

二、查看全部分區

[root@h24 bin]# ./kafka-topics.sh --zookeeper h24 --list
zhaoyi

三、啓動一個生產者(經過控制檯),往topic隊列(zhaoyi)中寫入數據

[root@h24 bin]# ./kafka-console-producer.sh --broker-list h24:2181 --topic zhaoyi
>

四、(3)執行以後進入一個等待輸入命令行,即須要咱們輸入消息。這時候,咱們再開啓一個新的ssh通道,在該機器上啓動一個消費者(經過控制檯)。

[root@h24 bin]# ./kafka-console-consumer.sh --bootstrap-server h24:9092 --topic zhaoyi
(空行)

執行該命令以後,控制檯處於阻塞狀態,由於他已經進入了監聽模式,監聽zhaoyi話題的任何產出信息。

(5)回到建立生產者的機器上,往等待命令行輸入任何消息,敲擊回車

>I love you, deer!
>

(6)這時候咱們觀察進入阻塞模式的消費者控制檯,能夠看到接收到了信息:

I love you, deer!

至此,配置結束。

X、其餘命令

*** 中止服務
# bin/kafka-server-stop.sh

*** 查看某個topic的消息
# bin/kafka-topics.sh --zookeeper h24:2181 --describe --topic zhaoyi
相關文章
相關標籤/搜索