17.2. Kafka 版本


Kafka 的日志消息格式版本和 Inter-broker 协议版本分别指定,附加到消息的日志格式版本以及集群中使用的 Kafka 协议的版本。为确保使用了正确的版本,升级过程涉及对现有 Kafka 代理和客户端应用程序(使用者和生产者)进行配置更改。

下表显示了 Kafka 版本之间的区别:

Expand
表 17.1. Kafka 版本的不同
Kafka 版本代理协议版本日志消息格式版本zookeeper 版本

3.2.0

3.2

3.2

3.6.3

3.2.1

3.2

3.2

3.6.3

3.2.3

3.2

3.2

3.6.3

3.3.1

3.3

3.3

3.6.3

代理协议版本

在 Kafka 中,用于内部代理通信的网络协议被称为 broker 间的协议。Kafka 的每个版本都有了一个内部代理协议的兼容版本。协议的次要版本通常会增加,以匹配 Kafka 的次版本,如上表所示。

Kafka 资源中设置了 cluster-broker 协议版本。要改变它,您需要编辑 Kafka.spec.kafka.config 中的 inter.broker.protocol.version 属性。

日志消息格式版本

当制作者向 Kafka 代理发送消息时,该消息采用特定的格式进行编码。在 Kafka 发行版本之间可能会改变格式,因此信息会指定使用哪个消息格式进行编码。

用于设置特定消息格式版本的属性如下:

  • 主题的 message.format.version 属性
  • Kafka 代理的 log.message.format.version 属性

从 Kafka 3.0.0,消息格式版本值被假定为与 inter.broker.protocol.version 匹配,且不需要设置。值反映了使用的 Kafka 版本。

当升级到 Kafka 3.0.0 或更高版本时,您可以在更新 inter.broker.protocol.version 时删除这些设置。否则,根据您要升级到的 Kafka 版本设置消息格式版本。

由在 Kafka 代理中设置的 log.message.format.version 定义的 message.format.version 的默认值。您可以通过修改其主题配置来手动设置主题的 message.format.version

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat