7.2. メッセージの移行


7.2.1. メッセージの移行の概要

デプロイメントの失敗や意図的なスケールダウンによってクラスターデプロイメントのブローカーがシャットダウンする場合に、メッセージの移行はメッセージングデータの整合性を確保することです。Pod のドレイン(解放) というメソッドを使用するメッセージの移行は、メッセージングデータを保存するためにブローカーによって使用される永続ボリュームから「孤立した」メッセージの削除および再分配を指します。メッセージ移行を有効にすると、AMQ Broker Operator の一部であるスケールダウンコントローラーは、デプロイメント内のブローカー Pod のシャットダウンを検出します。スケールダウンコントローラーは、シャットダウンされた各ブローカー Pod の専用のドレイナー Pod を開始し、メッセージ移行の準備を行います。それぞれのドレイナー Pod はクラスター内の残りのライブブローカー Pod のいずれかに接続し、メッセージをそのライブブローカー Pod に移行します。移行が完了すると、それぞれのドレイナー Pod がシャットダウンします。稼働中のブローカーで使用されていた永続ボリュームは、「Released」の状態に戻ります。

注記

AMQ Broker Operator 内のスケールダウンコントローラーは、単一の OpenShift プロジェクト内でのみ動作します。コントローラーは、別のプロジェクトのブローカー間でメッセージを移行できません。

注記

ブローカーデプロイメントを 0 (ゼロ) にスケールダウンする場合、メッセージングデータを移行できる稼働中のブローカー Pod がないため、メッセージ移行は行われません。ただし、デプロイメントをゼロブローカーにスケールダウンし、元のデプロイメントに含まれていた一部のブローカーのみに戻っても、シャットダウンされたブローカーのドレイン Pod が起動します。

7.2.1.1. メッセージの移行の仕組み

AMQ Broker Operator を使用して作成されたブローカーデプロイメントでメッセージ移行を有効にすると、スケールダウンコントローラーはブローカー Pod と同じプロジェクト namespace 内の Operator によって開始されます。

スケールダウンコントローラーは、それ自体を登録し、プロジェクト namespace の永続ボリューム要求(PVC)に関連する Kubernetes イベントをリッスンします。

スケールダウンコントローラーは、ボリューム要求の ordinal を確認して、孤立した PVC を確認します。ボリューム要求の ordinal は、プロジェクト namespace の StatefulSet の一部である既存のブローカー Pod の ordinal と比較されます。

ボリューム要求の ordinal が既存のブローカー Pod の ordinal よりも大きい場合、そのordinal の Pod は終了され、データは別のブローカーに移行する必要があります。

これらの条件が満たされると、ドレイナー Pod が起動します。ドレイン Pod はブローカーを実行し、メッセージ移行を実行します。次に、ドレイナー Pod は、孤立した PVC メッセージの移行先となる代替ブローカー Pod を特定します。

注記

メッセージの移行を可能にするには、少なくとも 1 つ以上のブローカー Pod がデプロイメントで実行されている必要があります。

図7.2 スケールダウンコントローラーは、それ自体を登録し、PVC を削除して、永続ボリュームでメッセージを再配布します。

ahocp Pod ドレイン 3

メッセージを運用ブローカー Pod に正常に移行した後、ドレイナー Pod はシャットダウンし、スケールダウンコントローラーは孤立した PVC を削除します。永続ボリュームが「Released」の状態に戻ります。

関連情報

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る