環境設定
TJESを実行するには、Tmax環境とTJES環境を事前に設定する必要があります。本節では、TJESで必要とする各種環境ファイルについて説明します。
1. Tmaxの設定
Tmaxサーバーで運用されるOpenFrameでTJESを実行するには、Tmaxをインストールして環境設定を行う必要があります。OpenFrameを初めてインストールする場合、Tmax環境は自動的にデフォルト値として登録されます。デフォルト値は、以下の手順で再設定することができます。
-
Tmaxサーバーを停止します。
$ tmdown
-
「$TMAXDIR/config/XXX.m」ファイルを開いて環境を再設定します。
-
変更した環境を適用します。
$ cfl -i $TMAXDIR/config/XXX.m
-
Tmaxサーバーを再起動します。
$ tmboot
上記例のXXX.m環境ファイルの変更方法については、『Tmax インストールガイド』を参照してください。 |
1.1. Tmaxサーバー
TJESを運用するには、以下のサーバーが起動している必要があります。
-
TJESサーバー
サーバー名 機能 obmjschd
ジョブ・スケジューラー
obmjinit
ジョブ・イニシエーター
obmjmsvr
ジョブ・マネージャー
obmjhist
ジョブ履歴
obmjspbk
ジョブ・スプールのバックアップ
ofrpmsvr
プリンター・マネージャー
obmtsmgr
TSOジョブの処理
-
TJES関連サーバー
サーバー名 機能 ofrsasvr
セキュリティ管理
ofrlhsvr
ロック・ハンドルの割り当て
ofruisvr
ユーザー・インターフェース・サーバー
ofrcmsvr
コンソール管理
OpenFrameのインストール時に、TJESサーバーとTJES関連サーバーは自動で登録されます。
以下は、Tmax環境に登録されているTJESサーバーの例です。
obmjschd SVGNAME = svg_domain,MIN = 1, MAX = 1, SVRTYPE=UCS, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" obmjinit SVGNAME = svg_node1,MIN = 1, MAX = 1, SVRTYPE=UCS, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" obmjmsvr SVGNAME = svg_node1, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" obmjhist SVGNAME = svg_domain, MIN = 1, MAX = 1, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" obmjspbk SVGNAME = svg_domain, MIN = 1, MAX = 1, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" ofrpmsvr SVGNAME = svg_domain, MIN = 1, MAX = 1, SVRTYPE=UCS, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err" obmtsmgr SVGNAME = svg_domain, MIN = 1, MAX = 1, SVRTYPE=UCS, CLOPT="-o $(SVR)$(DATE).out -e $(SVR)$(DATE).err"
SVGNAME=svg_domainは、全ノードのうち1つのノードでのみ起動する必要があることを意味します。また、MIN=1、MAX=1は、1つのサーバーのみを起動する必要があることを意味します。したがって、obmjschdは全ノードのうち1つのノードで1つのサーバーを起動し、obmjinitはノードごとに1つのサーバーを起動します。また、obmjmsvrはノードごとに複数のサーバーを起動できます。使用環境の負荷状況に応じてMINを設定して使用してください。指定しない場合は、MIN=1に設定されます。
TJES関連サーバーの設定については、OpenFrame Base『Baseガイド』を参照してください。 |
以下は、TJESサーバーが正常に起動していることを確認する方法です。
-
Tmaxサーバーの起動
$ tmboot
-
Tmaxサーバーの状態の確認
$ tmadmin $$1 node (tmadm): si
以下は、Tmaxサーバーが正常に動作しているかどうかを表示する画面です。statusがRDYの場合はサーバーが起動中であり、NRDYの場合はサーバーが終了した状態を示します。
------------------------------------------------------------------------ clh svrname (svri) status count qcount qpcount emcount ------------------------------------------------------------------------ 0 obmjmsvr ( 11) RDY 0 0 0 0 0 obmjschd ( 12) RDY 0 0 0 0 0 obmjinit ( 13) RDY 1 0 0 0 0 obmjhist ( 14) RDY 0 0 0 0 0 obmjspbk ( 15) RDY 0 0 0 0 0 ofrpmsvr ( 16) RDY 0 0 0 0 0 obmtsmgr ( 17) RDY 0 0 0 0 0 obmtscmd ( 18) RDY 0 0 0 0
-
Tmaxサーバーの停止
$ tmdown
tmadminを使用してTmaxサーバーを照会した場合はサーバーがNRDY状態であれば、サーバー・ログから原因を把握することができます。サーバー・ログはTmaxで生成されるファイルであり、$TmaxDIR/log/ulogディレクトリから確認できます。
Tmaxの詳細については、『Tmax 管理者ガイド』を参照してください。 |
1.2. マルチノードの設定
TJESをマルチノードで運用するには、以下のような設定を追加する必要があります。ただし、同じドメインに属するすべてのノードのTmax設定ファイルは同一である必要があります。
以下は、NODE1とNODE2でマルチノードのTJESを構成する場合です。
-
ノードの追加
マルチノードとして設定するすべてのノードを追加します。
*NODE DEFAULT: DOMAINNAME = "domofb" NODE1 HOSTNAME = "tmaxof1", IP = "192.168.1.1", TMAXHOME = "$OPENFRAME_HOME/tmax", TMAXDIR = "$OPENFRAME_HOME/tmax", APPDIR = "$OPENFRAME_HOME/server", TLOGDIR = "$OPENFRAME_HOME/tmax/log/tlog", ULOGDIR = "$OPENFRAME_HOME/tmax/log/ulog", SLOGDIR = "$OPENFRAME_HOME/tmax/log/slog", CLHOPT = " -o $OPENFRAME_HOME/tmax/log/clh.log -e /$OPENFRAME_HOME/tmax/log/clh.err", TPORTNO = 9400, SHMKEY = 94000, RACPORT = 9450 NODE2 HOSTNAME = "tmaxof2", IP = "192.168.1.2", TMAXHOME = "$OPENFRAME_HOME/tmax", TMAXDIR = "$OPENFRAME_HOME/tmax", APPDIR = "$OPENFRAME_HOME/server", TLOGDIR = "$OPENFRAME_HOME/tmax/log/tlog", ULOGDIR = "$OPENFRAME_HOME/tmax/log/ulog", SLOGDIR = "$OPENFRAME_HOME/tmax/log/slog", CLHOPT = " -o $OPENFRAME_HOME/tmax/log/clh.log -e /$OPENFRAME_HOME/tmax/log/clh.err", TPORTNO = 9400, SHMKEY = 94000, RACPORT = 9450
-
SVRGROUP句の変更
SVRGROUP句に新規ノードのサーバー・グループを追加し、同じサーバーを動作させるためのCOUSINとフェイルオーバーのためのsvg_domainのバックアップを設定する必要があります。
svg_domain NODENAME = "NODE1",BACKUP="svg_domain2" svg_domain2 NODENAME = "NODE2" svg_node1 NODENAME = "NODE1",COUSIN="svg_node2" svg_node2 NODENAME = "NODE2"
-
ROUTING句の追加とサービスにROUTINGを明示
マルチノードを構成するために、一部のサービスではTmaxのData-Driven-Routing機能を使用します。ルーティングに使用するデータはノード名です。以下は、SERVICE句で変更が必要なサービスです。
*ROUTING rt_nodename FIELD = "FIELD/FB_NODENAME", RANGES = "'NODE1':svg_node1,'NODE2':svg_node2,*:svg_node1" *SERVICE OBMJMSVRJDETAIL SVRNAME = obmjmsvr, ROUTING = rt_nodename OBMJINITCTLNODE SVRNAME = obmjinit, ROUTING = rt_nodename OBMJINITCTLJOB SVRNAME = obmjinit, ROUTING = rt_nodename OBMJINITCTLINIT SVRNAME = obmjinit, ROUTING = rt_nodename OBMJINITRUN SVRNAME = obmjinit, ROUTING = rt_nodename OBMJINITSTATUS SVRNAME = obmjinit, ROUTING = rt_nodename OBMJINITCHECK SVRNAME = obmjinit, ROUTING = rt_nodename