2.4. Debezium のバージョン 1.x から 2.3.7 へのアップグレード
現在のバージョンの Debezium には、2.14 以前のバージョンからアップグレードするときに特定の手順に従う必要がある変更が含まれています。
2.4.1. コネクターの Debezium 2.3.7 へのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Debezium 2.3.7 リリースに含まれる変更は、2.x 以前のバージョンと後方互換性がありません。そのため、Debezium 1.x バージョンから 2.3.7 にアップグレードするときにデータを保持し、継続的な操作を確保するには、アップグレードプロセス時にいくつかの手動の手順を完了する必要があります。
大きな変更の 1 つは、一部のコネクターパラメーターの名前が変更されたことです。これらの変更に対応するには、2023.Q2 リリースノートで 設定プロパティーの更新 を確認し、コネクター設定に存在するプロパティーに注意してください。アップグレードする前に、各 Debezium コネクターの設定を編集して、変更されたプロパティーの新しい名前を追加します。アップグレードする前に、古いプロパティー名と新しいプロパティー名の両方が存在するように 1.x コネクターインスタンスの設定を編集します。アップグレード後に、古い設定オプションを削除できます。
前提条件
- Debezium は、3.5.0 までの Kafka バージョンと互換性がある。
- Java 11 ランタイムが必要で、アップグレード前に利用可能にする必要がある。AMQ Streams 2.5 は Java 11 をサポートします。新しいアプリケーションを開発する場合は、Java 11 を使用してください。Java 11 では、新しい String API や述語サポートの変更など、最新の言語更新を利用できます。また、Java のパフォーマンスの向上にもメリットがあります。Java 8 は AMQ Streams 2.5 ではサポート対象外になりました。
- 現在の重大な変更のリスト および 2023.Q2 リリースノート で、後方互換性がない変更点について確認してください。
- 環境が Debezium 2.3.7 Supported Configurations に準拠していることを確認している。
手順
- OpenShift コンソールから、Kafka Connector YAML を確認し、Debezium 2.3.7 では有効ではなくなったコネクター設定を特定します。詳細は 2023.Q2 リリースノート を参照してください。
- 設定を編集して、手順 1 で特定したプロパティーに相当する 2.x を追加し、古いプロパティー名と新しいプロパティー名の両方が存在するようにします。新しいプロパティーの値は、古いプロパティーに対して以前に指定された値に設定します。
- OpenShift コンソールから、Kafka Connect を停止してコネクターを正常に停止します。
- OpenShift コンソールから、Kafka Connect イメージ YAML を編集して、コネクター zip ファイルの Debezium 2.3.7.Final バージョンを参照します。
- OpenShift コンソールから、Kafka コネクター YAML を編集して、コネクターで無効になっている設定オプションを削除します。
- コードのストレージモジュール実装の依存関係に応じて、必要に応じてアプリケーションのストレージ依存関係を調整します。詳細は、2023.Q2 リリースノートの Debezium ストレージへの変更 を参照してください。
- Kafka Connect を再起動して、コネクターを起動します。コネクターを再起動すると、アップグレード前に停止した時点からイベントの処理が続行されます。アップグレード前にコネクターが Kafka に書き込んだ変更イベントレコードは変更されません。