8.2.2. 降级 Kafka 代理和客户端应用程序


此流程描述了如何将 AMQ Streams Kafka 集群降级为 Kafka 的较低(以前的)版本,如从 2.6.0 降级到 2.5.0。

先决条件

对于要降级的 Kafka 资源,检查:

  • 重要:Kafka 版本兼容性
  • 支持两个 Kafka 版本的 Cluster Operator 已启动且正在运行。
  • Kafka.spec.kafka.config 不包含 Kafka 版本不支持的选项。
  • Kafka.spec.kafka.config 有一个 log.message.format.versioninter.broker.protocol.version,它被降级到的 Kafka 版本支持。

步骤

  1. 根据需要更新编辑器中的 Kafka 集群配置。

    oc edit kafka my-cluster
    Copy to Clipboard
  2. 更改 Kafka.spec.kafka.version 以指定上一版本。

    例如,如果从 Kafka 2.6.0 降级到 2.5.0:

    apiVersion: kafka.strimzi.io/v1beta1
    kind: Kafka
    spec:
      # ...
      kafka:
        version: 2.5.0 
    1
    
        config:
          log.message.format.version: "2.5" 
    2
    
          inter.broker.protocol.version: "2.5" 
    3
    
          # ...
    Copy to Clipboard
    1
    Kafka 版本已改为以前的版本。
    2
    消息格式版本保持不变。
    3
    代理协议版本没有改变。
    注意

    您必须将 log.message.format.versioninter.broker.protocol.version 的值格式化为字符串,以防止将其解释为浮动点数。

  3. 如果 Kafka 版本的镜像与 Cluster Operator 的 STRIMZI_KAFKA_IMAGES 中定义的镜像不同,请更新 Kafka.spec.kafka.image

    请查看 第 7.1.3.1 节 “Kafka 版本和镜像映射”

  4. 保存并退出编辑器,然后等待滚动更新完成。

    检查日志中的更新,或者查看 pod 状态转换:

    oc logs -f CLUSTER-OPERATOR-POD-NAME | grep -E "Kafka version downgrade from [0-9.]+ to [0-9.]+, phase ([0-9]+) of \1 completed"
    Copy to Clipboard
    oc get pod -w
    Copy to Clipboard

    检查 Cluster Operator 日志中的 INFO 级别信息:

    Reconciliation #NUM(watch) Kafka(NAMESPACE/NAME): Kafka version downgrade from FROM-VERSION to TO-VERSION, phase 1 of 1 completed
    Copy to Clipboard
  5. 降级所有客户端应用程序(使用者)以使用先前版本的客户端二进制文件。

    Kafka 集群和客户端现在使用以前的 Kafka 版本。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat