1. 程式人生 > 其它 >Kafka安裝

Kafka安裝

技術標籤:kafka

下載編譯後的包

https://mirror.bit.edu.cn/apache/kafka/2.5.0/kafka_2.12-2.5.0.tgz

2.上傳並解壓

3.進入config目錄,配置server.properties

主要配置如下:


#一個broker在叢集中的唯一標示,要求是正數。在改變IP地址,不改變broker.id的話不會影響consumers
broker.id=1
 
#listeners=PLAINTEXT://:9092
 
#advertised.listeners=PLAINTEXT://your.host.name:9092
 
#listener.security.protocol.map=PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SS
 
# broker 處理訊息的最大執行緒數,一般情況下不需要去修改
num.network.threads=3
 
# broker處理磁碟IO 的執行緒數 ,數值應該大於你的硬碟數
num.io.threads=8
 
#  socket的傳送緩衝區(SO_SNDBUF)
socket.send.buffer.bytes=102400
 
# socket的接收緩衝區 (SO_RCVBUF)
socket.receive.buffer.bytes=102400
 
# socket請求的最大位元組數。為了防止記憶體溢位,message.max.bytes必然要小於
socket.request.max.bytes=104857600
 
#kafka資料的存放地址,多個地址的話用逗號分割 /tmp/kafka-logs-1,/tmp/kafka-logs-2
log.dirs=/opt/kafka/data/log
 
# 每個topic的分割槽個數,更多的partition會產生更多的segment file
num.partitions=1
 
num.recovery.threads.per.data.dir=1
 
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
 
# 當達到下面的訊息數量時,會將資料flush到日誌檔案中。預設10000
#log.flush.interval.messages=10000
 
# 當達到下面的時間(ms)時,執行一次強制的flush操作。interval.ms和interval.messages無論哪個達到,都會flush。預設3000ms
#log.flush.interval.ms=1000
 
# 日誌儲存時間 (hours|minutes),預設為7天(168小時)。超過這個時間會根據policy處理資料。bytes和minutes無論哪個先達到都會觸發。
log.retention.hours=168
 
#log.retention.bytes=1073741824
 
# 控制日誌segment檔案的大小,超出該大小則追加到一個新的日誌segment檔案中(-1表示沒有限制)
log.segment.bytes=1073741824
 
# 日誌片段檔案的檢查週期,檢視它們是否達到了刪除策略的設定(log.retention.hours或log.retention.bytes)
log.retention.check.interval.ms=300000
 
# Zookeeper quorum設定。如果有多個使用逗號分割 例如 ip:prot,ip:prot,ip:prot
zookeeper.connect=localhost:2181
 
# 連線zk的超時時間
zookeeper.connection.timeout.ms=6000
 
# ZooKeeper叢集中leader和follower之間的同步實際

4.啟動kafka服務。

命令需要切換到kafka的bin目錄下,

前臺執行: bin/kafka-server-start.sh config/server.properties
後臺執行: nohup bin/kafka-server-start.sh config/server.properties > kafka-run.log 2>&1 &

5.建立Kafka主題
Kafka提供了一個名為kafka-topics.sh的命令列實用程式,用於在伺服器上建立主題。 開啟新終端並建立一個主題一個名為testTopic

先進到bin目錄

./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

這條命令的意思是,建立一個Topic到ZK(指定ZK的地址),副本個數為1,分割槽數為1,Topic的名稱為test。