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に、ダウングレード先の Kafka バージョンでサポートされるlog.message.format.versionとinter.broker.protocol.versionがある。
手順
必要に応じてエディターで Kafka クラスター設定を更新します。
oc edit kafka my-clusterKafka.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 # ...注記log.message.format.versionの値とinter.broker.protocol.versionの値は、浮動小数点数として解釈されないように、文字列にする必要があります。Kafka バージョンのイメージが Cluster Operator の
STRIMZI_KAFKA_IMAGESに定義されているイメージとは異なる場合は、Kafka.spec.kafka.imageを更新します。「Kafka バージョンおよびイメージマッピング」 を参照してください。
エディターを保存して終了し、ローリングアップデートの完了を待ちます。
更新をログで確認するか、または 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"oc get pod -w
Cluster Operator ログで
INFOレベルのメッセージを確認します。Reconciliation #NUM(watch) Kafka(NAMESPACE/NAME): Kafka version downgrade from FROM-VERSION to TO-VERSION, phase 1 of 1 completed
すべてのクライアントアプリケーション (コンシューマー) をダウングレードして、以前のバージョンのクライアントバイナリーを使用します。
これで、Kafka クラスターおよびクライアントは以前の Kafka バージョンを使用するようになります。