Kraft协议详解

在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

posted @ 2024-05-08 16:40  付同學  阅读(15)  评论(0编辑  收藏  举报