目前,Kafka在使用的过程当中,会出现一些问题。
由于重度依赖Zookeeper集群,当Zookeeper集群性能发生抖动时,Kafka的性能也会收到很大的影响。
因此,在Kafka发展的过程当中,为了解决这个问题,提供KRaft模式,来取消Kafka对Zookeeper的依赖。
从Kafka2.8版本开始,可以不用Apache Zookeeper来作为Kafka的依赖组件了,官网把这种称之为KRaft模式。
目前,Kafka使用Zookeeper来存储有关分区和Broker的元数据,并选择一个Broker作为Kafka的Controller。
现在官网打算删除对Zookeeper的依赖,让Kafka能够以更具扩展性和更加强大的方式管理元数据,从而支持更多分区。
在KRaft模式下,只有一小部分特别选定的服务器可以充当Controller(与基于Zookeeper的模式不同,在这种模式下,任何服务器都可以成为Controller)。特别选定的Controller服务器将参与元数据的管理,每个Controller服务器要么是Active,要么是Standby。
我们通常会为此角色选择3台或者5台服务器,具体取决于成本和系统应承受的并发故障数等因素。就像Zookeeper一样,为了保持可用性,必须保持大多数Controller处理在线状态,如果你有3个Controller,可以容忍1次故障,使用5个Controller,可以容忍2次故障。
KAFKA DOWNLOAD
https://kafka.apache.org/downloads
Kafka 重磅特性,KIP-833将 KRaft 标记为生产就绪
https://mp.weixin.qq.com/s/OqAUGjxt5VMFto1kjdCykg
Kafka发布2.8版本,引入了KRaft模式
https://www.cnblogs.com/smartloli/p/14722529.html
Kafka KRaft模式探索
https://www.cnblogs.com/smartloli/p/16430041.html
Kafka Controller Quorum(KRaft)机制浅析
https://cloud.tencent.com/developer/article/1964426
Kafka 3.0新特性
https://www.cnblogs.com/smartloli/p/15334590.html
Kafka Eagle 3.0.1功能预览
https://www.cnblogs.com/smartloli/p/16728995.html
网友评论