Sun Cluster 3.1 データサービス (WebSphere MQ 編)

Sun Cluster HA for WebSphere MQ のインストールと構成

Sun Cluster HA for WebSphere MQ のインストールと構成

表 1–1 に、 Sun Cluster HA for WebSphere MQ のインストールと構成に必要な作業を示します。指定された順番どおりに、各作業を行ってください。

表 1–1 作業マップ : Sun Cluster HA for WebSphere MQ のインストールと構成

タスク 

参照箇所 

インストールを計画する 

Sun Cluster HA for WebSphere MQ の概要

Sun Cluster HA for WebSphere MQ のインストールと構成の計画

WebSphere MQ をインストールして構成する 

WebSphere MQ のインストールおよび構成方法

インストールと構成を確認する 

WebSphere MQ のインストールおよび構成の確認方法

Sun Cluster HA for WebSphere MQ パッケージをインストールする 

Sun Cluster HA for WebSphere MQ パッケージのインストール方法

Sun Cluster HA for WebSphere MQ を登録して構成する 

Sun Cluster HA for WebSphere MQ の登録および構成方法

Sun Cluster HA for WebSphere MQ のインストールと構成を確認する 

Sun Cluster HA for WebSphere MQ のインストールおよび構成の確認方法

Sun Cluster HA for WebSphere MQ の障害モニターを理解する 

Sun Cluster HA for WebSphere MQ 障害モニターの概要

Sun Cluster HA for WebSphere MQ をデバッグする 

Sun Cluster HA for WebSphere MQ のデバッグを有効にする方法

Sun Cluster HA for WebSphere MQ の概要

WebSphere MQ メッセージングソフトウェアを使用すると、プログラマが容易に実装できる方法で、異なるオペレーティングプラットフォーム上のビジネスアプリケーション間で情報交換が可能になります。プログラムは、1 回限りの配信と時間に依存しない通信が約束される WebSphere MQ API を使用して通信を行ないます。

Sun Cluster HA for WebSphere MQ データサービスのメカニズムによって、WebSphere MQ サービスの順序正しい起動、停止、障害モニター、自動フェイルオーバーを実行できます。次の WebSphere MQ コンポーネントは、Sun Cluster HA for WebSphere MQ データサービスによって保護されます。

表 1–2 コンポーネントの保護

コンポーネント 

WebSphere MQ コンポーネントを保護するデータサービス 

Queue Manager 

Sun Cluster HA for WebSphere MQ 

Channel Initiator 

Sun Cluster HA for WebSphere MQ 

Command Server 

Sun Cluster HA for WebSphere MQ 

Listener  

Sun Cluster HA for WebSphere MQ 

Trigger Monitor 

Sun Cluster HA for WebSphere MQ 

Sun Cluster HA for WebSphere MQ のインストールと構成の計画

ここでは、Sun Cluster HA for WebSphere MQ のインストールと構成の計画について説明します。

構成に関する制限事項


注意 – 注意 –

次の制限事項を守らないと、データサービスの構成がサポートされない場合があります。


ここで示す制限事項を考慮して、Sun Cluster HA for WebSphere MQ のインストールと構成の計画を行ってください。ここでは、Sun Cluster HA for WebSphere MQ にのみ適用されるソフトウェアとハードウェア構成の制限事項を示します。

すべてのデータサービスに適用される制限事項については、『Sun Cluster 3.1 ご使用にあたって』を参照してください。

構成に関する要件


注意 – 注意 –

次の要件を満たさないと、データサービスの構成がサポートされない場合があります。


ここで示す要件に従って、Sun Cluster HA for WebSphere MQ のインストールと構成の計画を行ってください。これらの要件は、Sun Cluster HA for WebSphere MQ にのみ適用されます。 Sun Cluster HA for WebSphere MQ のインストールと構成を始める前に、次の要件を満たしておく必要があります。

WebSphere MQ のインストールと構成

ここでは WebSphere MQ をインストールして構成する手順について説明します。

WebSphere MQ のインストールおよび構成方法

次の手順で、WebSphere MQ をインストールし、構成します。

  1. Sun Cluster における WebSphere MQ の配備方法を決定 – WebSphere MQ をどのように配備するかを決定する必要があります。

    • 配備する WebSphere MQ インスタンス数を決定します。

    • 各 WebSphere MQ インスタンスに使用させるクラスタファイルシステムを決定します。

  2. WebSphere MQ クラスタファイルシステムのマウント – Sun Cluster における WebSphere MQ の配備方法を決定してから、クラスタファイルシステムがマウントされていることを確認する必要があります。


    注 –

    WebSphere MQ インスタンスにフェイルオーバーファイルシステムを使用させる場合は、手動でファイルシステムをマウントする必要があります。


  3. Sun Cluster 内の全ノードへの WebSphere MQ のインストール – ローカルディスクに WebSphere MQ をインストールすることをお勧めします。ローカルファイルシステムにソフトウェアをインストールした場合とクラスタファイルシステムにインストールした場合のメリットとデメリットについては、『Sun Cluster 3.1 データサービスのインストールと構成』 の 3 ページ、「アプリケーションバイナリの格納先の決定」を参照してください。

    • アプリケーションバイナリの保管場所に関係なく、Sun Cluaster 内の WebSphere MQ が稼働するすべてのノードに WebSphere MQ, をインストールします。そうしなければならないのは、WebSphere MQ の pkgadd がホスト上で複数のシンボリックリンクを追加設定するからです。


      注 –

      WebSphere MQ は、IBM's WebSphere MQ for Sun Solaris — Quick Beginnings マニュアルに従ってインストールしてください。


  4. WebSphere MQ Manager (複数可) の作成 – Sun Cluster 内の WebSphere MQ を稼働させるすべてのノードに WebSphere MQ をインストールしてから、WebSphere MQ Manager (複数可) を作成する必要があります。

    WebSphere MQ V5.3 にはバグがあり、crtmqm を実行して WebSphere MQ Manager を作成するときに、デフォルトの設定である LogDefaultPath=/var/mqm/log を使用すると問題が起きます。問題の例として、 crtmqm コマンドのエラーを示します。 AMQ7064: Log path not valid or inaccessible です。

    この問題を回避するには、WebSphere MQ Manager を作成するときに、-ld パラメタを指定しなければなりません。すなわち crtmqm -ld /global/mqm/log/<qmgr> <qmgr> と指定します。

    こうすると、別の <qmgr> ディレクトリ (/global/mqm/log/<qmgr>/<qmgr>) になりますが、バグは回避できます。


    例 1–6 -ld パラメタを指定して WebSphere MQ V5.3 Manager を作成


    # crtmqm qmgr1
    AMQ7064: Log path not valid or inaccessible.
    #
    # crtmqm -ld /global/mqm/log/qmgr1  qmgr1
    WebSphere MQ queue manager created.
    Creating or replacing default objects for qmgr1 .
    Default objects statistics : 31 created. 0 replaced. 0 failed.
    Completing setup.
    Setup completed.
    #
    # cd /global/mqm/log/qmgr1 
    #
    # ls -l
    total 2
    drwxrwx---   3 mqm      mqm          512 Jan 10 11:44 qmgr1 
    #
    # cd qmgr1 
    #
    # ls -l
    total 12
    drwxrwx---   2 mqm      mqm          512 Jan 10 11:44 active
    -rw-rw----   1 mqm      mqm         4460 Jan 10 11:44 amqhlctl.lfh
    #
    # pwd
    /global/mqm/log/qmgr1/qmgr1 
    #
    # cd /global/mqm/qmgrs/qmgr1
    #
    # more qm.ini
    #*******************************************************************#
    #* Module Name: qm.ini                                             *#
    #* Type       : MQSeries queue manager configuration file          *#
    #  Function   : Define the configuration of a single queue manager *#
    #*                                                                 *#
    #*******************************************************************#
    #* Notes      :                                                    *#
    #* 1) This file defines the configuration of the queue manager     *#
    #*                                                                 *#
    #*******************************************************************#
    ExitPath:
       ExitsDefaultPath=/var/mqm/exits/
    #*                                                                 *#
    #*                                                                 *#
    Log:
       LogPrimaryFiles=3
       LogSecondaryFiles=2
       LogFilePages=1024
       LogType=CIRCULAR
       LogBufferPages=0
       LogPath=/global/mqm/log/qmgr1/qmgr1/
       LogWriteIntegrity=TripleWrite
    Service:
       Name=AuthorizationService
       EntryPoints=10
    ServiceComponent:
       Service=AuthorizationService
       Name=MQSeries.UNIX.auth.service
       Module=/opt/mqm/lib/amqzfu
       ComponentDataSize=0
     # 


    注 –

    LogDefaultPath=/var/mqm/log を使用するときに -ld パラメタを指定しなければならないというこのバグは IBM に報告済みであり、現在、修正作業中です。


WebSphere MQ のインストールと構成の確認

ここでは、 インストールと構成を確認する手順について説明します。

WebSphere MQ のインストールおよび構成の確認方法

次の手順でインストールと構成を確認します。データサービスをまだインストールしていないため、この手順でアプリケーションの可用性が高いかどうかを確認することはできません。

  1. WebSphere MQ Manager を起動し、インストールを確認します。


    # su - mqm
    Sun Microsystems Inc.   SunOS 5.8       Generic February 2000
    $ strmqm qmgr1
    WebSphere MQ queue manager 'qmgr1' started.
    $ 
    $ runmqsc qmgr1
    5724-B41 (C) Copyright IBM Corp. 1994, 2002.  ALL RIGHTS RESERVED.
    Starting WebSphere MQ script Commands.
    
    
    def ql(test) defpsist(yes)
         1 : def ql(test) defpsist(yes)
    AMQ8006: WebSphere MQ queue created.
    end
         2 : end
    One MQSC command read.
    No commands have a syntax error.
    All valid MQSC commands were processed.
    $ 
    $ /opt/mqm/samp/bin/amqsput TEST qmgr1
    Sample AMQSPUT0 start
    target queue is TEST
    test test test test test test test
    
    Sample AMQSPUT0 end
    $ 
    $ /opt/mqm/samp/bin/amqsget TEST qmgr1
    Sample AMQSGET0 start
    message <test test test test test test test>
    ^C$ 
    $
    $ runmqsc qmgr1
    5724-B41 (C) Copyright IBM Corp. 1994, 2002.  ALL RIGHTS RESERVED.
    Starting WebSphere MQ script Commands.
    
    
    delete ql(test)
         1 : delete ql(test)
    AMQ8007: WebSphere MQ queue deleted.
    end
         2 : end
    One MQSC command read.
    No commands have a syntax error.
    All valid MQSC commands were processed.
    $ 
  2. WebSphere MQ Manager を停止します。


    # su - mqm
    Sun Microsystems Inc.   SunOS 5.8       Generic February 2000
    $ 
    $ endmqm -i qmgr1
    WebSphere MQ queue manager 'qmgr1' ending.
    WebSphere MQ queue manager 'qmgr1' ended.
    $

Sun Cluster HA for WebSphere MQ パッケージのインストール

ここでは Sun Cluster HA for WebSphere MQ パッケージのインストール手順について説明します。

Sun Cluster HA for WebSphere MQ パッケージのインストール方法

次の手順で、Sun Cluster HA for WebSphere MQ パッケージをインストールします。この作業には、Sun Cluster Agents CD-ROM が必要です。この手順では、Sun Cluster の初期インストール時にデータサービス パッケージをインストールしていない場合を想定しています。

Sun Cluster のインストール時に Sun Cluster HA for WebSphere MQ パッケージをインストールしている場合は、Sun Cluster HA for WebSphere MQ の登録と構成 へ進んでください。

それ以外の場合は、次の手順で、Sun Cluster HA for WebSphere MQ パッケージをインストールします。Sun Cluster HA for WebSphere MQ を実行できるすべてのノードで、この作業を行なう必要があります。

  1. CD-ROM ドライブに Sun Cluster Agents CD-ROM を挿入します。

  2. オプションを指定しないで scinstall ユーティリティーを実行します。

    scinstall ユーティリティーが対話型モードで起動します。

  3. メニューオプション「新しいデータサービスのサポートをこのクラスタノードに追加」を選択します。

    scinstall ユーティリティーにより、ほかの情報を入力するためのプロンプトが表示されます。

  4. Sun Cluster Agents CD-ROM のパスを指定します。

    ユーティリティーはこの CD をデータサービス CD-ROM として示します。

  5. インストールするデータサービスを指定します。

    選択したデータサービスが scinstall ユーティリティーによって示され、この選択内容の確認が求められます。

  6. scinstall ユーティリティーを終了します。

  7. ドライブから CD を取り出します。

Sun Cluster HA for WebSphere MQ の登録と構成

ここでは Sun Cluster HA for WebSphere MQ の構成手順について説明します。

Sun Cluster HA for WebSphere MQ の登録および構成方法

次の手順で、Sun Cluster HA for WebSphere MQ をフェイルオーバーデータサービスとして構成します。この手順では、Sun Cluster の初期インストール時にデータサービスパッケージをインストールしている場合を想定しています。

Sun Cluster のインストール時に Sun Cluster HA for WebSphere MQ をインストールしていない場合は、Sun Cluster HA for WebSphere MQ パッケージのインストール方法 へ進んでください。

それ以外の場合は、次の手順で Sun Cluster HA for WebSphere MQ データサービスを構成します。

  1. WebSphere MQ のホストとなるクラスタノードの 1 つで、スーパーユーザーになります。

  2. SUNW.gds というリソースタイプを登録します。


    # scrgadm -a -t SUNW.gds
    
  3. SUNW.HAStoragePlus というリソースタイプを登録します。


    # scrgadm -a -t SUNW.HAStoragePlus
    
  4. フェイルオーバーリソースグループを作成します。


    # scrgadm -a -g WebSphere MQ-failover-resource-group
    
  5. WebSphere MQ ディスク記憶装置に対応するリソースを作成します。


    # scrgadm -a -j WebSphere MQ-has-resource  \
    -g WebSphere MQ-failover-resource-group   \
    -t SUNW.HAStoragePlus  \
    -x FilesystemMountPoints=WebSphere MQ- instance-mount-points
    
  6. WebSphere MQ 論理ホスト名に対応するリソースを作成します。


    # scrgadm -a -L -j WebSphere MQ-lh-resource  \
    -g WebSphere MQ-failover-resource-group  \
    -l WebSphere MQ-logical-hostname
    
  7. WebSphere MQ ディスク記憶装置と 論理ホスト名のリソースが組み込まれたフェイルオーバーリソースグループを有効にします。


    # scswitch -Z -g WebSphere MQ-failover-resource-group
    
  8. 必要な個々の WebSphere MQ コンポーネントを作成して登録します。

    Queue Manager コンポーネント (mgr) に対してこの手順を実行し、さらに使用するオプションの WebSphere MQ コンポーネントごとに、mgr を以下のどれか 1 つに置き換えて手順を繰り返します。

    chi - Channel Initiator

    csv - Command Server

    lsr - Dedicated Listener

    trm - Trigger Monitor


    # cd /opt/SUNWscmqs/mgr/util
    

    mgr_config ファイルを編集し、そのファイルに次のようなコメントを追加します。


    # These parameters can be customized in (key=value) form
    #
    #      RS - name of the resource for the application
    #      RG - name of the resource group containing RS
    #    QMGR - name of the Queue Manager
    #    PORT - name of the Queue Manager port number
    #      LH - name of the LogicalHostname SC resource
    #  HAS_RS - name of the Queue Manager HAStoragePlus SC resource
    #

    WebSphere MQ Manager qmgr1 の例を示します。


    RS=wmq-qmgr-res
    RG=wmq-rg
    QMGR=qmgr1
    PORT=1414
    LH=wmq-lh-res
    HAS_RS=wmq-has-res
    

    mgr_config の編集後、リソースを登録する必要があります。


    # ./mgr_register
    
  9. WebSphere MQ Manager の保護を有効にします (必要な場合)。

    WebSphere MQ Manager の保護を実装するのは、広域ファイルシステムに WebSphere MQ を配備した場合だけです。 WebSphere MQ Manager の保護の詳細は、構成に関する要件、特に 例 1–5 を参照してください。それ以外の場合は、次の手順に直接進んでください。

    さらに、この手順は Sun Cluster HA for WebSphere MQ のホストとなる各 Sun Cluster ノードで繰り返す必要があります。

  10. 各 WebSphere MQ リソースを有効にします。

    前の手順と同様、WebSphere MQ コンポーネントごとにこの手順を繰り返します。


    # scstat 
    

    # scswitch -e -j WebSphere MQ-resource
    

Sun Cluster HA for WebSphere MQ のインストールと構成の確認

ここでは、データサービスが正しくインストールされて構成されているかどうかを確認する手順について説明します。

Sun Cluster HA for WebSphere MQ のインストールおよび構成の確認方法

次の手順で、Sun Cluster HA for WebSphere MQ が正しくインストールされて構成されているかどうかを確認します。

  1. WebSphere MQ のホストとなるクラスタノードの 1 つで、スーパーユーザーになります。

  2. すべての WebSphere MQ リソースがオンラインになっていることを scstat で確認します。


    # scstat 
    

    オンラインになっていない WebSphere MQ リソースごとに、次のように scswitch コマンドを使用します。


    # scswitch -e -j WebSphere MQ- resouce
    
  3. scswitch コマンドを実行し、 WebSphere MQ リソースグループをほかのクラスタノード (node2 など) に切り替えます。


    # scswitch -z -g WebSphere MQ-failover-resource-group -h node2
    

Sun Cluster HA for WebSphere MQ 障害モニターの概要

この情報は、Sun Cluster HA for WebSphere MQ 障害モニターを理解するうえで役立ちます。ここでは、Sun Cluster HA for WebSphere MQ 障害モニターのプローブアルゴリズム、または機能について説明し、プローブエラーに関連する条件、メッセージ、回復アクションを示します。

障害モニターの概念については、「Sun Cluster 3.1 の概念」を参照してください。

リソースプロパティ

Sun Cluster HA for WebSphere MQ 障害モニターでは、リソースタイプ SUNW.gds と同じリソースプロパティを使用します。 使用するリソースプロパティの全リストについては、SUNW.gds(5) のマニュアルページを参照してください。

プローブアルゴリズムと機能

Sun Cluster HA for WebSphere MQ のデバッグ

Sun Cluster HA for WebSphere MQ のデバッグを有効にする方法

ここでは、Sun Cluster HA for WebSphere MQ のデバッグを有効にする方法について説明します。

Sun Cluster HA for WebSphere MQ は複数の WebSphere MQ インスタンスで使用できます。デバッグは、すべての WebSphere MQ インスタンスに対して有効にすることも、特定の WebSphere MQ インスタンスに対して有効にすることもできます。

各 WebSphere MQ コンポーネントは、 /opt/SUNWscmqs/xxx/etcDEBUG ファイルがあります。xxx は個々の WebSphere MQ コンポーネントを表す 3 文字の略語です。

これらのファイルによって、Sun Cluster の特定のノードで特定の WebSphere MQ インスタンスに対してデバッグを有効にすることも、またはすべての WebSphere MQ インスタンスに対してデバッグを有効にすることもできます。Sun Cluster 全体にわたって、Sun Cluster HA for WebSphere MQ のデバッグを有効にしなければならない場合は、Sun Cluster 内のすべてのノードでこの手順を繰り返す必要があります。

必要に応じて Sun Cluster の各ノードで、Queue Manager コンポーネント (mgr) に対してこの手順を実行し、さらにデバッグ出力が必要な WebSphere MQ コンポーネント (オプション) で手順を繰り返します。

  1. /etc/syslog.conf を編集します。

    /etc/syslog.conf を編集し、daemon.notice daemon.debug に変更します。


    # grep daemon /etc/syslog.conf
    *.err;kern.debug;daemon.notice;mail.crit        /var/adm/messages
    *.alert;kern.err;daemon.err                     operator
    #

    daemon.notice daemon.debug に変更し、syslogd を再起動します。次に示す grep daemon /etc/syslog.conf コマンドの出力例では、daemon.debug が設定されています。


    # grep daemon /etc/syslog.conf
    *.err;kern.debug;daemon.debug;mail.crit        /var/adm/messages
    *.alert;kern.err;daemon.err                    operator
    #
    # pkill -1 syslogd
    #
  2. /opt/SUNWscmqs/mgr/etc/config を編集します。

    /opt/SUNWscmqs/mgr/etc/config を編集し、 DEBUG=DEBUG=ALL または DEBUG= resource に変更します。


    # cat /opt/SUNWscmqs/mgr/etc/config
    #
    # Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
    # Use is subject to license terms.
    #
    # Usage:
    #       DEBUG=<RESOURCE_NAME> or ALL
    #       START_COMMAND=/opt/mqm/bin/<renamed_strmqm_program>
    #       STOP_COMMAND=/opt/mqm/bin/<renamed_endmqm_program>
    #
    DEBUG=ALL
    START_COMMAND=
    STOP_COMMAND=
    #

    注 –

    デバッグを無効にするには、この手順を逆に実行してください。