第16章 AMQ Streams のアップグレード
AMQ Streams をバージョン 2.4 にアップグレードすると、新機能および改良された機能、パフォーマンスの向上、およびセキュリティーオプションを利用できます。
このアップグレード中に、Kafka をサポートされる最新バージョンにアップグレードします。各 Kafka リリースによって、AMQ Streams デプロイメントに新機能、改善点、およびバグ修正が導入されます。
新しいバージョンで問題が発生した場合は、AMQ Streams を以前のバージョンに ダウングレード できます。
リリースされた AMQ Streams バージョンは、AMQ Streams ソフトウェアダウンロードページ から入手できます。
アップグレードのダウンタイムと可用性
トピックが高可用性用に設定されている場合に、AMQ ストリームをアップグレードしても、それらのトピックからデータを公開して読み取るコンシューマーとプロデューサーにダウンタイムが発生することはありません。高可用性トピックのレプリケーション係数は 3 以上であり、パーティションはブローカー間で均等に分散されます。
AMQ Streams をアップグレードするとローリング更新がトリガーされ、プロセスのさまざまな段階ですべてのブローカーが順に再起動されます。ローリング更新中は、すべてのブローカーがオンラインであるとは限らないため、クラスター全体の可用性 が一時的に低下します。クラスターの可用性が低下すると、ブローカーで障害が発生した場合にメッセージが失われる可能性が高くなります。
16.1. AMQ Streams のアップグレードパス
利用できるアップグレードパスには、2 種類あります。
- 増分アップグレード
- AMQ Streams を以前のマイナーバージョンからバージョン 2.4 にアップグレードします。
- マルチバージョンのアップグレード
AMQ Streams を 1 回で古いバージョンからバージョン 2.4 にアップグレードします (1 つ以上の中間バージョンを飛ばします)。
たとえば、AMQ Streams 2.2 から AMQ Streams 2.4 に直接アップグレードします。
16.1.1. サポート対象の Kafka バージョン
AMQ Streams のアップグレードプロセスを開始する前に、アップグレードする Kafka バージョンを決定します。サポートされている Kafka のバージョンは Red Hat AMQ Streams Supported Configurations で確認できます。
- Kafka 3.4.0 は実稼働環境での使用がサポートされています。
- Kafka 3.3.1 は、AMQ Streams 2.4 にアップグレードする目的でのみサポートされます。
ご使用中の AMQ Streams バージョンでサポートされている Kafka バージョンのみを使用できます。AMQ Streams のバージョンでサポートされている限り、Kafka の上位バージョンにアップグレードできます。場合によっては、サポートされている以前の Kafka バージョンにダウングレードすることもできます。
16.1.2. 1.7 より前の AMQ Streams バージョンからのアップグレード
バージョン 1.7 より前のバージョンから最新バージョンの AMQ Streams にアップグレードする場合は、以下を実行します。
- 標準のシーケンス に従って AMQ Streams をバージョン 1.7 にアップグレードします。
-
AMQ Streams に付属の API 変換ツール を使用して、AMQ Streams カスタムリソースを
v1beta2
に変換します。 次のいずれかを行います。
-
AMQ Streams 1.8 にアップグレードします (
ControlPlaneListener
フィーチャーゲートはデフォルトで無効)。 -
ControlPlaneListener
フィーチャーゲートを無効にして、AMQ Streams 2.0 または 2.2 (ControlPlaneListener
フィーチャーゲートはデフォルトで有効) にアップグレードします。
-
AMQ Streams 1.8 にアップグレードします (
-
ControlPlaneListener
フィーチャーゲートを有効化します。 - 標準のシーケンス に従って AMQ Streams 2.4 にアップグレードします。
AMQ Streams カスタムリソースは、リリース 1.7 で v1beta2
API バージョンを使用するようになりました。AMQ Streams 1.8 以降にアップグレードする 前 に、CRD とカスタムリソースを変換する必要があります。API 変換ツールの使用方法については、AMQ Streams 1.7 アップグレードドキュメント を参照してください。
最初にバージョン 1.7 にアップグレードする代わりに、カスタムリソースをバージョン 1.7 からインストールしてから、リソースを変換することができます。
ControlPlaneListener
機能が AMQ Streams で永続的に有効になりました。無効になっている AMQ Streams のバージョンにアップグレードしてから、Cluster Operator 設定の STRIMZI_FEATURE_GATES
環境変数を使用して有効にする必要があります。
ControlPlaneListener
フィーチャーゲートの無効化
env: - name: STRIMZI_FEATURE_GATES value: -ControlPlaneListener
ControlPlaneListener
フィーチャーゲートの有効化
env: - name: STRIMZI_FEATURE_GATES value: +ControlPlaneListener