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