ページの先頭行へ戻る
Systemwalker IT Change Manager V14g クラスタ適用ガイド
Systemwalker

2.3.12 クラスタサービスの設定

クラスタ製品に対して実施する設定手順について説明します。

2.3.12.1 MSCSまたはFailover Clusteringの場合

Systemwalker IT Change ManagerのサービスをMSCSまたはFailover Clusteringのリソースとして登録します。

共有ディスクのオンライン化

フェールオーバー クラスタ管理で共有ディスクの所有権を獲得し、共有ディスクをオンラインにします。

  1. 以下のリソースが所属するグループの所有権を該当ノードで獲得します。獲得方法については、クラスタのマニュアルを参照してください。

    • Quorumディスク

    • Systemwalker IT Change Managerで使用する共有ディスクをオンラインにします。

BPM用イベントチャネル起動バッチファイルの準備(Windows)

クラスタの切り替え時にイベントチャネルを自動起動するため、MSCSまたはFailover Clusteringに対して、BPM用イベントチャネル起動バッチファイル("Systemwalker IT Change Manager V14gメディアパック (14.1.1) Disc No. 1/1"の"Manager\tool\bpmesstart.bat")を、汎用アプリケーションとして登録します。

現用ノード、待機ノード共に同じディレクトリ、同じファイル名でコピーしてください。共有ディスクには作成しないでください。

リソース登録

クラスタアドミニストレータを使用し、下表に示すリソースの一覧を参考に、使用するサービスのリソースを登録してください。

リソース資源

サービス名

リソースの種類

依存関係(依存先)

備考

業務用IPアドレス

-

IPアドレス

-

業務用ネットワーク名

-

ネットワーク名

  • 業務用IPアドレス

共用ディスク

-

物理ディスク

  • 業務用ネットワーク名

OD_startサービス

ODloader

汎用サービス

  • 共用ディスク

NamingServiceサービス

Naming

汎用サービス

  • OD_startサービス

InterfaceRep_Cache Serviceサービス

InterfaceRep_Cache_s

汎用サービス

  • NamingServiceサービス

InterfaceRep_Cache_e Serviceサービス

InterfaceRep_e

汎用サービス

  • NamingServiceサービス

EventServiceサービス

esdmnmain

汎用サービス

  • InterfaceRep_Cache Serviceサービス

TransactionDirectorサービス

TransactionDirector

汎用サービス

  • EventServiceサービス

Interstage APIサービス

Interstage API

汎用サービス

  • TransactionDirectorサービス

Interstage HTTP Serverのサービス

FJapache

汎用サービス

  • 共用ディスク

BPM用イベントチャネル起動バッチファイル

-

汎用アプリケーション

  • Interstage APIサービス

Symfoware BASEDBサービス

SymfoWARE RDB BASEDB

汎用サービス

  • 共用ディスク

Symfoware FLOWDBサービス

SymfoWARE RDB FLOWDB

汎用サービス

  • 共用ディスク

Shunsaku Conductor cmdbc

Shunsaku Conductor cmdbc

汎用サービス

  • 共用ディスク

Shunsaku Director contents

Shunsaku Director contents

汎用サービス

  • 共用ディスク

Shunsaku Director metadata

Shunsaku Director metadata

汎用サービス

  • 共用ディスク

Shunsaku Searcher cmdbs01

Shunsaku Searcher cmdbs01

汎用サービス

  • 共用ディスク

Shunsaku Searcher cmdbs02

Shunsaku Searcher cmdbs02

汎用サービス

  • 共用ディスク

Shunsaku Searcher cmdbs03

Shunsaku Searcher cmdbs03

汎用サービス

  • 共用ディスク

Shunsaku Sorter cmdbo01

Shunsaku Sorter cmdbo01

汎用サービス

  • 共用ディスク

Systemwalker ITCM Service Watcherサービス

ITCMServiceWatcher

汎用サービス

  • Symfoware BASEDBサービス

  • Symfoware FLOWDBサービス

  • Shunsaku Conductor cmdbc

  • Shunsaku Director contents

  • Shunsaku Director metadata

  • Shunsaku Searcher cmdbs01

  • Shunsaku Searcher cmdbs02

  • Shunsaku Searcher cmdbs03

  • Shunsaku Sorter cmdbo01

  • BPM用イベントチャネル起動バッチファイル

  • Symfoware JDBC Naming Serviceサービス

Symfoware JDBC Naming Serviceサービス

Symfoware JDBC Naming Service

汎用サービス

  • 業務用IPアドレス

注意

  • 上記に示す汎用サービスのいずれかが既に他のグループのリソースとして登録されている場合、そのグループに登録してください。

  • Systemwalker IT Service Managementと連携する場合は、同じグループのリソースとして登録してください。

  • リソースの名前には任意の文字列を指定してください。

  • 実行できる所有者には、クラスタシステムを構成するノードを指定してください。

  • 汎用サービス登録時は、表中のサービス名を指定してください。

  • 汎用アプリケーション登録時は、パラメタ内の「コマンドライン」にコマンド名を含めたフルパスを、「現在のディレクトリ」にコマンド名を含めないフルパスを指定してください。

  • Windows Server(R) 2008以降 で“Interstage HTTP Serverのサービス”のリソースを登録する場合は、セットアップパラメタを削除してください。

2.3.12.2 PRIMECLUSTERの場合

Systemwalker IT Change Managerのサーバの状態遷移プロシジャを登録します。

現用ノード、待機ノードそれぞれで実施する必要があります。

共有ディスクのマウント

共用ディスクのマウント設定を行ってください。

共有ディスクのマウントの設定について

事前に運用および待機ノードでマウントを設定します。

/etc/vfstabのフィールドは、以下のように設定します。

  • FS Typeフィールド:ufs

  • mount at boot:no


共有資源用パーティションを自動マウントするための設定手順を以下に示します。また、Interstageディレクトリサービスの格納先を共有ディスク上の専用パーティションとして設けた場合は、Interstageディレクトリサービス用のパーティションも自動マウントするための設定を行います。

/etc/vfstabに記述してある、共有資源パーティションとRDB管理者情報専用パーティションのエントリを複写し行の先頭に#RMS#を追加します。

【Solaris版の設定例】

以下の設定値で設定例を示します。

デバイス名/マウントポイント

設定値

共有資源用のデバイス名

/dev/FJSVmphd/dsk/mphd2048s0

RDB管理情報専用パーティションのデバイス名

/dev/FJSVmphd/dsk/mphd2048s1

共有資源用(クラスタセットアップ時に指定)のマウントポイント

/share

RDB管理情報専用パーティション(FW)のマウントポイント

/SWFWDB(注1)

注1:RDB管理情報デバイスにRDB管理情報専用パーティションのデバイス名を指定する場合、マウントポイントは「/SWFWDB」固定になります。

/etc/vfstabファイルに以下の行を追加します。

/dev/FJSVmphd/dsk/mphd2048s0 /dev/FJSVmphd/rdsk/mphd2048s0 /share ufs 2 no -
#RMS#/dev/FJSVmphd/dsk/mphd2048s0 /dev/FJSVmphd/rdsk/mphd2048s0 /share ufs 2 no -
/dev/FJSVmphd/dsk/mphd2048s1 /dev/FJSVmphd/rdsk/mphd2048s1 /SWFWDB ufs 2 no -
#RMS#/dev/FJSVmphd/dsk/mphd2048s1

/dev/FJSVmphd/rdsk/mphd2048s1 /SWFWDB ufs 2 no -

【Linux版の設定例】

以下の設定値で設定例を示します。

デバイス名/マウントポイント

設定値

共有資源用のデバイス名

/dev/sdb1

RDB管理情報専用パーティションのデバイス名

/dev/sdb2

共有資源用(クラスタセットアップ時に指定)のマウントポイント

/share

RDB管理情報専用パーティション(FW)のマウントポイント

/SWFWDB(注1)

注1:RDB管理情報デバイスにRDB管理情報専用パーティションのデバイス名を指定する場合、マウントポイントは「/SWFWDB」固定になります。

PRIMECLUSTER 4.2A00以前の場合は/etc/fstab、PRIMECLUSTER 4.2A30以降の場合は/etc/fstab.pclに以下の行を追加します。

/dev/sdb1 /share ext3 noauto 0 0
#RMS#/dev/sdb1 /share ext3 noauto 0 0
/dev/sdb2 /SWFWDB ext3 noauto 0 0
#RMS#/dev/sdb2 /SWFWDB ext3 noauto 0 0

2.3.12.2.1 状態遷移プロシジャの作成【UNIX版】

クラスタシステムの状態遷移プロシジャの作成方法について説明します。

状態遷移プロシジャは、製品が提供している“状態遷移プロシジャのサンプル”を“userApplication名.状態遷移プロシジャ名”というファイル名で複写して必要に応じて内容を修正します。

状態遷移プロシジャ名

サンプルの格納ディレクトリ

SWPM_PROC

下記参照

IREP_INTERSTAGE

/opt/FJSVisas/etc/HA/SynfinityCLUSTER

IS_INTERSTAGE

/opt/FJSVisas/etc/HA/SynfinityCLUSTER

Systemwalker IT Change Managerの状態遷移プロシジャ(SWPM_PROC)サンプル

#!/bin/sh
#
# Copyright All Right Reserved
# Copyright (c) FUJITSU LIMITED 2009-2013
#
# State Transition Procedure for Systemwalker IT Change Manager 
#
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# [User Definition]
#
#   Pleas modify following lines, if necessary.

# WU_NAME="CMDB_Manager CMDB_Gui WUMyo WUibpmsv WUibpmcon" ### "WU001 WU002 ... n"

IS_SYSNAME="default"
export IS_SYSNAME

# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# [System Definition]
#
#   Don't modify following lines

# Environment Value
SALTLAKE_HOME=/etc/opt/FJSVcluster
export SALTLAKE_HOME

PID=0
MONPROC_FLG="ON"
MONPROC_OPTS="-r $4"
MONPROC_COMMAND="$SALTLAKE_HOME/bin/clmonproc $MONPROC_OPTS"
MONPROC_PID=0

OD_DAEMON_NAME="OD_start"

# Systemwalker IT Change Manager commands
RUN_START_COMMAND=/opt/FJSVswpm/bin/swpm_start
RUN_STOP_COMMAND=/opt/FJSVswpm/bin/swpm_stop
RUN_ENA_START_COMMAND=/opt/FJSVcmdbm/Enabler/server/bin/enablerstart
RUN_ENA_STOP_COMMAND=/opt/FJSVcmdbm/Enabler/server/bin/enablerstop
ENA_PID_FILE=/var/run/fjsvcmdbena.pid

# Set Functions
sgetpid(){
	PID=`/usr/bin/ps -ef | \
		 /usr/bin/grep $1 | \
		 /usr/bin/grep $2 | \
		 awk '{print $2}'`
}

# Main
# Case
case "$1" in
    "START") ## ---------- Start ----------
        case "$2" in
            "RUN") ## ---------- Run ----------
                case "$3" in
                    "AFTER") ## ---------- After ----------
                        case "$5" in
                            "STARTUP"|"CHANGE")
                                case "$6" in
                                    "NODE"|"SERVICE")
                                        # start
                                        $RUN_ENA_START_COMMAND > /dev/null 2>&1
                                        if [ $? -ne 0 ]
                                        then
                                            exit 1
                                        fi
                                        
                                        # start
                                        $RUN_START_COMMAND > /dev/null 2>&1
                                        if [ $? -ne 0 ]
                                        then
                                            exit 1
                                        fi
                                        
                                        # BASEDB get pid
                                        RDBNAME=BASEDB
                                        export RDBNAME
                                        BASEDB_PID=`/opt/FSUNrdb2b/sbin/rdbpid`
                                        if [ $? -ne 0 ]
                                        then
                                            exit 1
                                        fi
                                        export BASEDB_PID
                                        
                                        # FLOWDB get pid
                                        RDBNAME=FLOWDB
                                        export RDBNAME
                                        FLOWDB_PID=`/opt/FSUNrdb2b/sbin/rdbpid`
                                        if [ $? -ne 0 ]
                                        then
                                            exit 1
                                        fi
                                        export FLOWDB_PID
                                        
                                        # Enabler get pid
#                                        ENA_PID=`cat $ENA_PID_FILE`
#                                        if [ "$ENA_PID" = "" ]
#                                        then
#                                            exit 1
#                                        fi
#                                        export ENA_PID
                                        
                                        # regist
                                        if [ $MONPROC_FLG = "ON" ]
                                        then
                                            $MONPROC_COMMAND -s -a "$RUN_START_COMMAND" -p $BASEDB_PID -c 0 > /dev/null 2>&1
                                            $MONPROC_COMMAND -s -a "$RUN_START_COMMAND" -p $FLOWDB_PID -c 0 > /dev/null 2>&1
#                                            $MONPROC_COMMAND -s -a "$RUN_ENA_START_COMMAND" -p $ENA_PID -c 0 > /dev/null 2>&1
                                        fi
                                    ;;
                                esac
                            ;;
                        esac
                    ;;
                esac
            ;;
        esac
    ;;
    "STOP"|"FAIL") ## ---------- Stop or Fail ----------
        case "$2" in
            "RUN"|"WAIT") ## ---------- Run or Wait ----------
                case "$3" in
                    "BEFORE") ## ---------- Before ----------
                        case "$5" in
                            "STOPDOWN")
                                case "$6" in
                                    "NODE"|"SERVICE")
                                        if [ $MONPROC_FLG = "ON" ]
                                        then
                                            $MONPROC_COMMAND -e > /dev/null 2>&1
                                        fi
                                        
                                        # OD check
                                        sgetpid $OD_DAEMON_NAME $IS_SYSNAME
                                        if [ "$PID" = "" ]
                                        then
                                            exit 0
                                        fi
                                        
                                        # EXTP check
                                        if [ $IS_SYSNAME = "default" ]
                                        then
                                            EXTPPID=`ps -ef | grep extp_momo | grep -v extp_momo_func | grep  "td001" | awk '{ print($2) }'`
                                        else
                                        	EXTPPID=`ps -ef | grep extp_momo | grep -v extp_momo_func | grep  "$IS_SYSNAME$" | awk '{ print($2) }'`
                                        fi
                                        export EXTPPID
                                        /opt/FSUNtd/bin/isgetstatus -M $IS_SYSNAME > /dev/null 2>&1
                                        ISGETSTATUS_VALUE=$?
                                        export ISGETSTATUS_VALUE
                                        if [ "$EXTPPID" != "" ]
                                        then
                                                if [ $ISGETSTATUS_VALUE = "100" ]
                                                then
                                                        # Stop
                                                        $RUN_STOP_COMMAND > /dev/null 2>&1
                                                fi
                                        fi
                                        # Enabler stop
                                        $RUN_ENA_STOP_COMMAND > /dev/null 2>&1
                                    ;;
                                esac
                            ;;
                        esac
                    ;;
                esac
            ;;
        esac
    ;;
esac

# Return Status
exit 0

状態遷移プロシジャの修正

Interstageディレクトリサービスをクラスタ上で動作させる場合は、IREP_INTERSTAGEを環境に合わせて修正する必要があります。本手順は、Interstage ディレクトリサービスを使用する場合にのみ実施してください。

Interstageディレクトリサービスが使用する共用ディスクパスを設定します。共用ディスクパスを“/repository”として指定する場合の設定例を以下に示します。

DIRECTORY=/repository

状態遷移プロシジャの登録

クラスタシステムべき状態遷移プロシジャの登録は、以下の順で行います。

  1. Interstage Application Serverの状態遷移プロシジャを登録します。

  2. サーバの状態遷移プロシジャを登録します。

各状態遷移プロシジャは、現用ノードおよび待機ノードに作成し、同じディレクトリに配置します。共有ディスクには作成しないでください。

2.3.12.2.2 状態遷移プロシジャの登録【UNIX版】

作成した状態遷移プロシジャの登録について説明します。

以下の手順で現用ノードおよび待機ノードに登録します。

状態遷移プロシジャの登録

作成した状態遷移プロシジャをクラスタシステムの“clsetproc”コマンドを使用してクラスタシステムに登録します。なお、“claddprocrsc”コマンドに指定する優先度については、以下に示す順番で状態遷移プロシジャが動作するように設定します。

状態遷移プロシジャリソースの登録

クラスタシステムの“claddprocrsc”コマンドを使用して、状態遷移プロシジャリソースをクラスタシステムに登録します。

RMSの停止

RMSを停止します。

PRIMECLUSTERの[Cluster Admin]画面-[rms]タブ-[ツール]メニュー-[RMSの停止]を選択して実施します。

リソースの作成

状態遷移プロシジャを“userApplication”に登録するためのリソースを作成します。PRIMECLUSTERの[userApplication Configuration wizard]画面で[Resourceの作成]を選択して行います。

2.3.12.2.3 クラスタアプリケーションの登録

クラスタアプリケーションの登録について説明します。

リソースの作成

状態遷移プロシジャを登録するリソースを作成します。

PRIMECLUSTERの[userApplication Configuration wizard]画面で[Resourceの作成]を選択します。

  1. [userApplication Configuration Wizard]画面で、[Resourceの作成]を選択します。

  2. 以下のProcedureリソースを作成します。表示される画面で、以下のように設定します。

    • [Resourceの作成]画面

      • [Resource Type]:“Procedure”を選択

      • [Resource名]:任意のリソース名

    • [SysNodeの選択]画面

      • 運用ノードと待機ノードを選択します。

      • 最初に選択したノードが運用ノード、次に選択したノードが待機ノードとなります。

    • [プロシジャのクラス選択]画面

      • “BasicApplication”を選択します。

    • [プロシジャのリソースの選択]画面

      • “状態遷移プロシジャを利用するリソースの登録”で、-kオプションで指定したリソースキーを選択します。

    • [登録情報の確認]画面

      • 登録内容を確認し、[登録]ボタンをクリックします。

クラスタアプリケーションの作成

クラスタアプリケーションを以下の手順で作成します。

[userApplication Configuration Wizard]画面で、[userApplicationの作成]を選択します。

表示される画面で、以下のように設定します。

  1. [userApplication名と運用形態の設定]画面

    [userApplication名]:クラスタアプリケーション名を設定します。

    • [Resource名]:standby

  2. [SysNodeの選択]画面

    運用ノードと待機ノードを選択します。

    最初に選択したノードが運用ノード、次に選択したノードが待機ノードとなります。

  3. [属性の設定]画面

    「StandbyTransitions」に「ClearFaultRequest|StartUp|SwitchRequest」を設定してください。

    他の属性は、クラスタシステムの運用に合わせて属性を設定してください。

  4. [Resourceの選択]画面

    作成したリソースをすべて選択します。

  5. [登録情報の確認]画面

    登録内容を確認し、[登録]ボタンをクリックします。