Kraft協議詳解

付同學發表於2024-05-08
在kafka3.0之後,kafka正式推出了kraft模式,透過節點之間kraft共識保證Quorum機制,Leader節點的選舉由具有投票權的Controller來決定。
叢集後設資料資訊都存在叢集本身的topic裡

Quorum

Quorum中一個節點可以處於一下四種狀態
(1)Candidate,可以主動發起投票
(2)Leader,唯一,也是Active Controller,在選舉中獲得多數票
(3)Follower,已經投票給Candidate,或者正在從Leader拉取日誌
(4)Observer,沒有投票權的Follower,Voter配置裡沒有配的

指令碼檢視叢集狀態 --status --replication
[root@iamdemo1 bin]# ./kafka-metadata-quorum.sh --bootstrap-server 172.29.145.157:9092,172.29.145.182:9092,172.29.145.183:9092 describe --status

image

[root@iamdemo1 bin]# ./kafka-metadata-quorum.sh --bootstrap-server 172.29.145.157:9092,172.29.145.182:9092,172.29.145.183:9092 describe --replication

image

Controller選舉配置

controller.quorum.voters=1@172.29.145.157:9093,2@172.29.145.182:9093,3@172.29.145.183:9093

沒有在這裡面的就不具有投票權,就是Observer

相關文章