暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Kafka 3.9.0发布,废除ZooKeeper前的最后一个版本

712

Apache Kafka 3.9.0 正式发布,这是 3.x 版本系列的最后一个重大版本,标志着 Kafka 逐步摆脱对 Apache ZooKeeper的依赖。

从Kafka 4.0 起,ZooKeeper 将彻底移除,所有版本将完全基于 KRaft 模式运行。

1:动态 KRaft 仲裁(KRaft Quorum)

在 KRaft 模式下,Kafka 依赖于一组控制器进程来存储其元数据日志,其中包括分区状态、主题信息等。这些控制器节点组成的集合称为“仲裁”或“Raft quorum”。在过去,仲裁成员的增减和变更都需要通过静态配置文件进行手动设置,并且通常需要重启进程,这导致集群会有一定的停机时间,管理起来相当繁琐。

Kafka 3.9 引入了通过 kafka-metadata-quorum.sh 工具或 AdminClient API 来动态调整控制器节点的功能。这不仅简化了管理操作,也有效减少了集群的停机时间。

2:改进的 ZooKeeper 迁移

对于当前使用 ZooKeeper 模式的 Kafka 用户,若希望升级到 KRaft 模式,则需要先完成 ZK 迁移,从Kafka 3.4 起,ZooKeeper 迁移功能便开始开发,让用户可以顺利完成从 ZooKeeper 模式到 KRaft 模式的过渡。

Kafka 4.0 以后将不再支持 ZooKeeper,所以这个版本可以看作是升级到4.0的“桥接版本”。

升级顺序如下:

  • • 升级到 Kafka 3.9

  • • 完成 ZK 迁移

  • • 升级到 Kafka 4.0

3:分层存储

从3.9版本开始,可以将数据存储在外部存储系统中,比如S3,也可以设置分层存储的上传和下载速率上限。

文章转载自虞大胆的叽叽喳喳,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论