[IBM MQ Advanced][Linux]

キュー・マネージャーをマイグレーションして HA RDQM キュー・マネージャーにする

既存のキュー・マネージャーをマイグレーションして高可用性 (HA) 複製データ・キュー・マネージャー (RDQM) にするには、その永続データをバックアップしてから、新規に作成された同じ名前の RDQM キュー・マネージャーにデータをリストアします。

本タスクについて

HA 複製データ・キュー・マネージャーには、専用の論理ボリューム (ファイル・システム) と、ディスク複製および HA 制御の構成が必要です。 これらのコンポーネントは、新規キュー・マネージャーが作成されたときにのみ構成されます。 既存のキュー・マネージャーをマイグレーションして RDQM を使用するには、その永続データをバックアップしてから、新規に作成された同じ名前の RDQM キュー・マネージャーにデータをリストアします。 この手順では、バックアップの作成時にキュー・マネージャーの構成、状態、および持続メッセージを保存します。

注: キュー・マネージャーは、RDQM がインストールされているバージョンと同じかそれより前のバージョンの IBM® MQ からのみマイグレーションできます。 オペレーティング・システムとアーキテクチャーも同じでなければなりません。 そうでない場合は、ターゲット・プラットフォーム上に新しいキュー・マネージャを作成する必要があります
キュー・マネージャーをマイグレーションする前に、以下の条件を満たす必要があります。
  • 高可用性要件を評価し、RDQM 高可用性を参照してください。
  • キュー・マネージャーに接続するアプリケーションおよびキュー・マネージャーを確認します。 キュー・マネージャーが実行されている RDQM ノードに接続をルーティングするために必要な変更を検討します。 例えば、RDQM の高可用性を設定する場合、フローティング IP アドレスの使用を検討することができます
  • 選択した構成の RDQM ノードをプロビジョンするか、既存の RDQM ノードを識別します。 RDQM のシステム要件については、RDQM HA ソリューションの要件を参照してください。
  • 各ノードに、RDQM フィーチャーを含む IBM MQ Advanced をインストールします。
  • Pacemakerクラスタ(HAグループ)の定義を参照して、RDQM HAグループの設定を行います。
  • オプションで、テスト・キュー・マネージャーを使用して RDQM 構成を検証します。このキュー・マネージャーはあとで削除できます。 キュー・マネージャーをマイグレーションする前に問題を特定して解決するために、構成をテストすることをお勧めします。
  • キュー・マネージャーのセキュリティー構成を確認し、必要なローカル・ユーザーおよびグループを各 RDQM ノードに複製します。
  • キュー・マネージャーおよびチャネル構成を調べて、API 出口、チャネル出口、またはデータ変換出口が使用されているかどうかを判別します。 必要な出口を各 RDQM ノードにインストールします。
  • 定義されているキュー・マネージャー・サービスを確認し、必要なプロセスを各 RDQM ノードでインストールして構成します。

手順

  1. 既存のキュー・マネージャーをバックアップします。
    1. 待機シャットダウン・コマンド endmqm -w、または即時シャットダウン・コマンド endmqm -iを発行して、既存のキュー・マネージャーを停止します。 このステップは、バックアップ内のデータの整合性を確保するために重要です。
    2. IBM MQ 構成ファイル mqs.iniを表示して、キュー・マネージャーのデータ・ディレクトリーの場所を判別します。 Linux の場合、このファイルは /var/mqm ディレクトリーにあります。 詳細についてはmqs.ini、 見るIBMMQ設定ファイル、mqs.ini

      ファイル内でキュー・マネージャーの QueueManager スタンザを見つけます。 スタンザに DataPath という名前のキーが含まれている場合、その値はキュー・マネージャーのデータ・ディレクトリーです。 キーが存在しない場合、キュー・マネージャーのデータ・ディレクトリーは、Prefix キーと Directory キーの値を使用して判別できます。 キュー・マネージャーのデータ・ディレクトリーは、これらの値を prefix/qmgrs/directory の形式で連結したものです。 詳細については、QueueManagerスタンザ、参照QueueManagerのスタンザmqs.iniファイル

    3. キュー・マネージャーのデータ・ディレクトリーのバックアップを作成します。 Linuxでは、 tar コマンドを使用してこれを行うことができます。 例えば、キュー・マネージャーのデータ・ディレクトリーをバックアップするには、以下のコマンドを使用できます。 コマンドの最後のパラメーターである単一ピリオド (ドット) に注意してください。
      tar -cvzf qm-data.tar.gz -C queue_manager_data_dir .
    4. IBM MQ キュー・マネージャー構成ファイルを表示して、キュー・マネージャー・ログ・ディレクトリーの場所を判別します qm.ini。 このファイルは、キュー・マネージャーのデータ・ディレクトリーにあります。 ファイルの詳細については、キューマネージャー構成ファイル、qm.ini

      キュー・マネージャーのログ・ディレクトリーは、Log スタンザの LogPath キーの値として定義されます。 この節の詳細については、ログスタンザのqm.iniファイル

    5. キュー・マネージャーのログ・ディレクトリーのバックアップを作成します。 Linuxでは、tar コマンドを使用してこれを行うことができます。 例えば、キュー・マネージャーのログ・ディレクトリーをバックアップするには、以下のコマンドを使用できます。 コマンドの最後のパラメーターである単一ピリオド (ドット) に注意してください。
      tar -cvzf qm-log.tar.gz -C queue_manager_log_dir .
    6. キュー・マネージャーが使用する証明書リポジトリーがキュー・マネージャーのデータ・ディレクトリーにない場合は、そのバックアップを作成します。 鍵データベース・ファイルとパスワード・スタッシュ・ファイルの両方がバックアップされていることを確認してください。 キュー・マネージャーの鍵リポジトリーについては、 SSL/TLS 鍵リポジトリー および キュー・マネージャーの鍵リポジトリーの検索を参照してください。 AMS メッセージ・チャネル・エージェント (MCA) インターセプトを使用するようにキュー・マネージャーが構成されている場合に AMS 鍵ストアを見つける方法については、 メッセージ・チャネル・エージェント (MCA) インターセプトを参照してください。
    7. 既存のキュー・マネージャーは不要になったため、削除できます。 ただし、可能であれば、既存のキュー・マネージャーは、ターゲット・システムで正常にリストアされた後にのみ削除してください。 削除を保留しておくと、マイグレーション・プロセスが正常に完了しない場合にキュー・マネージャーを再始動できます。
      注: 既存のキュー・マネージャーの削除を延期する場合は、再始動しないでください。 構成または状態に追加で加えられる変更がマイグレーション中に失われるため、キュー・マネージャーは終了したままであることが重要です。
  2. 1 次 RDQM ノードを準備します。
    1. バックアップしたキュー・マネージャーと同じ名前の新規 RDQM キュー・マネージャーを作成します。 crtmqm によって RDQM キュー・マネージャーに割り振られたファイル・システムが、既存のキュー・マネージャーのデータ、1 次ログ、2 次ログ、および将来の拡張用の追加スペースを含めるのに十分な大きさであることを確認します。 RDQMキューマネージャーの作成方法については、以下を参照してください。 HA RDQM の作成
    2. キュー・マネージャーの 1 次 RDQM ノードを判別します。 1 次ノードを判別する方法については、 rdqmstatus (RDQM 状況の表示)を参照してください。
    3. 1 次 RDQM ノードで、RDQM キュー・マネージャーが開始されている場合は、 endmqm -w または endmqm -i コマンドを使用して停止します。
    4. 1 次 RDQM ノードで、RDQM キュー・マネージャーのデータ・ディレクトリーとログ・ディレクトリーの場所を判別します (ステップ 1b および 1d で説明されている方法を使用します)。
    5. 1 次 RDQM ノードで、RDQM キュー・マネージャーのデータ・ディレクトリーとログ・ディレクトリーの内容を削除します。ただし、ディレクトリー自体は削除しないでください。
  3. 1 次 RDQM ノードでキュー・マネージャーをリストアします。
    1. キュー・マネージャーのデータ・ディレクトリーとログ・ディレクトリーのバックアップを 1 次 RDQM ノードにコピーし、キュー・マネージャーが使用する証明書リポジトリーの別個のバックアップをコピーします。
    2. キュー・マネージャーのデータ・ディレクトリーのバックアップを新しい RDQM キュー・マネージャーの空のデータ・ディレクトリーにリストアし、ファイルの所有権と許可が保持されるようにします。 ステップ 1c のサンプル tar コマンドを使用してバックアップを作成した場合は、root ユーザーが以下のコマンドを使用してバックアップをリストアできます。
      tar -xvzpf qm-data.tar.gz -C queue_manager_data_dir
    3. キュー・マネージャーのログ・ディレクトリーのバックアップを新しい RDQM キュー・マネージャーの空のログ・ディレクトリーにリストアし、ファイルの所有権と許可が保持されるようにします。 ステップ 1e のサンプル tar コマンドを使用してバックアップを作成した場合は、root ユーザーが以下のコマンドを使用してバックアップをリストアできます。
      tar -xvzpf qm-log.tar.gz -C queue_manager_log_dir
    4. RDQM キュー・マネージャーのデータ・ディレクトリーにある、復元したキュー・マネージャー構成ファイル qm.iniを編集します。 Log スタンザの LogPath キーの値を更新して、RDQM キュー・マネージャーのログ・ディレクトリーを指定します。
      構成ファイルに定義されている他のファイル・パスを確認し、必要に応じて更新します。 例えば、以下のパスを更新しなければならない可能性があります。
      • 診断メッセージ・サービスによって生成されるエラー・ログ・ファイルのパス。
      • キュー・マネージャーで必要な出口のパス。
      • キュー・マネージャーが XA トランザクション・コーディネーターである場合のスイッチ・ロード・ファイルのパス。
    5. AMS メッセージ・チャネル・エージェント (MCA) インターセプトを使用するようにキュー・マネージャーが構成されている場合は、AMS 鍵ストアを新しい RDQM インストール済み環境にコピーしてから、構成を確認して更新します。 鍵ストアは各 RDQM ノードで使用可能でなければならないため、キュー・マネージャーの複製ファイル・システムにない場合は、代わりに各ノードにコピーする必要があります。 詳しくは、 メッセージ・チャネル・エージェント (MCA) インターセプトを参照してください。
    6. dspmq コマンドによってキュー・マネージャーが表示され、その状況が終了として報告されていることを確認します。 以下の例は、RDQM HA キュー・マネージャーの出力例を示しています。
      $ dspmq -o status -o ha 
      
      QMNAME(QM1) STATUS(Ended normally) HA(Replicated) 
    7. rdqmstatus コマンドを使用してキュー・マネージャーの状況を表示し、リストアされたキュー・マネージャー・データが 2 次 RDQM ノードに複製されたことを確認します。 HA 状況は、各ノードで Normal として報告される必要があります。 以下の例は、RDQM HA キュー・マネージャーの出力例を示しています。
      $ rdqmstatus -m QM1 
      Node:                           mqhavm10-adm 
      Queue manager status:           Ended normally 
      Queue manager file system:      50MB used, 0.2GB allocated [42%] 
      HA role:                        Primary 
      HA status:                      Normal 
      HA control:                     Disabled 
      HA current location:            This node 
      HA preferred location:          This node 
      HA floating IP interface:       None 
      HA floating IP address:         None 
      
      Node:                           mqhavm11-adm 
      HA status:                      Normal 
      
      Node:                           mqhavm12-adm 
      HA status:                      Normal
    8. 1 次 RDQM ノードでキュー・マネージャーを開始します。
    9. キュー・マネージャーに接続し、 SSLKEYR キュー・マネージャー属性の値を更新して、キュー・マネージャー証明書リポジトリーの新しい場所を指定します。 デフォルトで、この属性の値には queue_manager_data_directory/ssl/key が設定されます。 証明書リポジトリーは、各 RDQM ノード上の同じ場所に配置する必要があります。 リポジトリーがキュー・マネージャーの複製ファイル・システムにない場合は、代わりに各ノードにコピーする必要があります。
    10. キュー・マネージャーの IBM MQ オブジェクト定義を確認し、変更されたネットワーク設定、 IBM MQ インストール・ディレクトリー、またはキュー・マネージャー・データ・ディレクトリー (以下のオブジェクトを含む) を参照するオブジェクト属性の値を更新します。
      • リスナーが使用するローカル IP アドレス (IPADDR 属性)。
      • チャネルが使用するローカル IP アドレス (LOCLADDR 属性)。
      • クラスター受信側チャネル用に定義されたローカル IP アドレス (CONNAME 属性)。
      • コミュニケーション情報オブジェクト用に定義されたローカル IP アドレス (GRPADDR 属性)。
      • プロセスおよびサービス・オブジェクト定義用に定義されたシステム・パス。
    11. キュー・マネージャーをいったん停止したあとで再始動して、変更内容が有効になるようにします。
    12. マイグレーションされたキュー・マネージャーに接続するリモート・キュー・マネージャーと、それに相当するアプリケーションの設定 (以下を含む) について、ステップ 3j を繰り返します。
      • チャネル接続名 (CONNAME 属性)。
      • IP アドレスまたはホスト名に基づいてキュー・マネージャーからのインバウンド接続を制限するチャネル認証規則。
      • クライアント・チャネル定義テーブル (CCDT)、ドメイン・ネーム設定 (DNS)、ネットワーク・ルーティング、または同等の接続情報。
    13. 必要な構成が正常に確立されていることを確認するために、各RDQMノードへのキューマネージャーの管理されたフェイルオーバーを実行します。 RDQM の優先場所の設定