LifeKeeper 使用時の WebSphere MQ の設定 セクションには、LifeKeeper でキューマネージャを保護するための手順が記載されています。一般的に、LifeKeeper とともに使用する WebSphere MQ キューマネージャを正しく設定するには、次の要件が満たされている必要があります。
- カーネルパラメータの設定 :Linux カーネルパラメータ(共有メモリやその他のカーネルリソースなど)の設定方法については、WebSphere MQ ドキュメンテーション を参照してください。
- MQUSER および MQGROUP :MQGROUP および MQUSERは、クラスタのすべてのサーバー上に存在する必要があります。Websphere MQ ソフトウェアでは、MQGROUP mqm が存在し、それが、プライマリグループメンバーシップがMQGROUP mqmに設定されていると定義されたMQUSER mqmを持っている必要があります。もし、Websphere MQソフトウェアがインストールされるときにmqm userとmqm groupが存在しない場合には、mqm userとmqm groupは自動的に生成されます。 WebSphere MQソフトウェアをインストールする時には、 ほとんどのファイルとディレクトリは、mqm userとmqm groupに対して設定されたユーザーおよびグループの所有権を持ちます。Queue Managerデータとログディレクトリの中のファイルとディレクトリのユーザーおよびグループの所有権は、mqm userとmqm groupに対しても設定されます。さらに、Queue Managerが開始される時には、それがmqm userとして動作します。 そのため、MQUSER ユーザーID (uid) とMQGROUPグループID (gid) は、すべてのクラスターのサーバー上で同一でなくてはなりません。MQ Recovery Kitはリソースを拡張しようとする際に、この点を検証します。もし、この二つのIDが一致しない場合には、リソースの拡張に失敗します。注:もしローカルパスワードやグループファイル以外にNIS、LDAPもしくは他の認証ツールを使用している場合には、Websphere MQとLifeKeeperソフトウェアのインストールの前にMQUSERとMQGROUPを設定しなくてはなりません。また、ホームディレクトリを作成する必要があるかもしれません。もし、今回が以前にリリースされたWebSphere MQ Recovery Kitからのアップグレードである場合、MQUSER PATH環境変数の設定の変更が必要な場合があります。このMQUSER PATH環境変数は、WebSphere MQ ソフトウェアのデフォルトインストールロケーション、 /opt/mqmを含めるために変更する必要があります。もし、この変更が以前のリリースで行われている場合、今回のRecovery Kitのバージョンが正しく動作するために解除する必要があります。
- 別のMQユーザーのサポート Websphere MQ ソフトウェアは常にmqm ユーザーとして動作しますが、別のユーザーがプライマリもしくはセカンダリメンバーシップをmqmグループの中に持つことを前提に、全てのMQコマンドを動作させるのに別のユーザー名を指定することが可能です。他のMQ Toolと統合する時には、WebSphere MQの開始に別のユーザー名が必要かもしれません。別のユーザーへの変更については、本文書の“LifeKeeper WebSphere MQ Recovery Kit のデフォルト設定の変更”の MQS_ALT_USER_NAME設定 を参照してください。
- コマンドサーバーの手動起動 :LifeKeeper によってコマンドサーバーを起動するには、プライマリサーバー上で、次のコマンドを使用してコマンドサーバーの自動起動を無効にします。この手順を行わない場合、キューマネージャの起動時にコマンドサーバーが自動的に起動されます。
runmqsc QUEUE.MANAGER.NAME
ALTER QMGR SCMDSERV(MANUAL)
- 別のMQユーザーのサポート が共有ストレージ上にあること 。キューマネージャディレクトリ QMDIR およびキューマネージャログディレクトリ QMLOGDIR は、LifeKeeper でサポートされた共有ストレージ上にある必要があります。これにより、バックアップサーバー上の WebSphere MQ がデータにアクセスできます。詳細については、サポートされるファイルシステムレイアウト を参照してください。
- QMDIR および QMLOGDIR の権限 :QMDIR および QMLOGDIR ディレクトリは、MQUSER と MQGROUP グループに所有されている必要があります。ARK は、ディレクトリの所有者を参照して MQUSER を自動的に決定します。また、シンボリックリンクを検出し、最終ターゲットに到達します。必要な場合、システムコマンド chown を使用して、これらのディレクトリの所有者を変更してください。
- キューマネージャの自動起動を無効化 :LifeKeeper で保護するキューマネージャでは自動起動を無効化する必要があります。 systemctl コマンドを使って無効化してください。
- サーバー接続チャネルの認証 :WebSphere MQ バージョン 7.1 以降では、チャネルの認証方法が変更されました。デフォルトでは、MQADMIN ユーザー (mqm) は匿名認証 (パスワードなし) を行うことはできないため、リソース階層の作成に失敗します (WebSphere MQ 7.1 以前のリリースで作成されたキューマネージャの認証は引き続き有効)。WebSphere MQ 7.1 以降、MQADMIN ユーザーによる認証を許可するには、チャネルの認証を無効にする方法があります。WebSphere MQ 8.0 では、追加の変更が (現在の設定を取得する「display authinfo(system.default.authinfo.idpwos)」をrunmqsc コマンドで実行して) system.default.authinfo.idpwosのauthinfoに対して必要となります。「reqdamd」のchckclnt 設定は、「optional」に変更する必要があります。MQADMIN ユーザーによる匿名認証の許可に失敗すると、リソースの作成時に「 MQCONNX ended with reason code 2035 」エラーが発生します。チャネルの認証については、WebSphere MQ ドキュメンテーション を参照してください。
- MQSeriesSamples、MQSeriesSDK、およびMQSeriesClient パッケージ :LifeKeeper は、WebSphere MQ へのクライアント接続を使用して、リスナーとチャネルイニシエータが完全に機能していることを確認します。これは、リモートのキューマネージャおよびクライアントがキューマネージャに接続するための要件です。そのため、MQSeriesClient パッケージが、WebSphere MQ を実行するすべての LifeKeeper クラスタノード上にインストールされている必要があります。また、MQSeriesSDK および MQSeriesSamples パッケージは、クライアント接続テストと PUT/GET テストを実行するためにインストールされている必要があります。
- オプションの C コンパイラ :オプションの PUT/GET テストを実行するためには、C コンパイラがマシン上にインストールされている必要があります。C コンパイラがない場合、インストール中に警告が発生します。
- LifeKeeper のテストキュー :WebSphere MQ Recovery Kit は、オプションで PUT/GET テストを実行してキューマネージャの動作を確認します。リカバリキットはすべてのメッセージをこのキューから取得して破棄するため、専用のテストキューが作成されている必要があります。このキューでは、デフォルトのパーシスタンス設定が 「yes」 (DEFPSIST=yes) に設定されている必要があります。キューマネージャを LifeKeeper で保護している場合、「LIFEKEEPER.TESTQUEUE」という名前のテストキューが自動的に作成されます。また、次のコマンドを使用して、キューマネージャを保護する前に手作業でテストキューを作成することもできます。
su – MQUSER
runmqsc QUEUE.MANAGER.NAME
define qlocal(LIFEKEEPER.TESTQUEUE) DEFPSIST(YES) DESCR(‘LifeKeeper test queue’)
注記 : デフォルトの「LIFEKEEPER.TESTQUEUE」以外の名前をテストキューに付けるには、このテストキューの名前を設定する必要があります。詳細については、リソースプロパティ設定の編集 を参照してください。
- リスナーオブジェクト用の TCP ポート :リスナーオブジェクトを runmqsc を介して変更して使用中の TCP ポートを反映します。次のコマンドを使用して、デフォルトリスナーの TCP ポートを変更します。
su – MQUSER
runmqsc QUEUE.MANAGER.NAME
alter LISTENER(SYSTEM.DEFAULT.LISTENER.TCP) TRPTYPE(TCP) PORT(1414) IPADDR(192.168.1.100)
注記: リスナーオブジェクトは、デフォルトの MQ リスナー TCP ポート 1414 を使用する場合も変更が必要ですが、特定の IP アドレス (IPADDR) を指定する必要はありません。IPADDR を設定しない場合、リスナーはサーバー上のすべてのインターフェースにバインドされます。IPADDR を設定した場合は、IPADDR で定義されたアドレスを使用して LifeKeeper で仮想 IP リソースを作成することを強く推奨します。そうすることによって、MQ リスナーの起動時に確実に IP アドレスを使用できます。
- TCP ポート番号 。各 WebSphere MQ リスナーは、異なるポート (デフォルトで 1414) を使用するか、すべてのインターフェースにバインドされたリスナーがない状態で異なる仮想 IP にバインドする必要があります。これには、クラスタ内の保護されたキューマネージャと保護されていないキューマネージャが含まれます。
- mqs.ini で設定されたキューマネージャ :アクティブ / アクティブ設定では、各サーバーは、グローバルキューマネージャー設定ファイル mqs.ini のコピーをそれぞれ保持しています。保護されたキューマネージャをクラスタ内のすべてのサーバー上で実行するには、キューマネージャがクラスタ内のすべてのサーバー上の mqs.ini 設定ファイルに設定されている必要があります。適切な QueueManager: スタンザをプライマリサーバーからコピーして、すべてのバックアップサーバー上の mqs.ini 設定ファイルに追加します。
このトピックへフィードバック