![]() ![]() ![]() ![]() ![]() ![]() |
バッチ・ジョブ・システムは、重要なメインフレーム・ビジネス・アプリケーション・モデルです。Tuxedo Job Enqueueing Service (TuxJES)エミュレーション・アプリケーションを使用すると、メインフレーム・アプリケーションをオープン・システムへ円滑に移行できます。TuxJESは、メインフレームJES2関数のサブセットを実装しています(ジョブの送信、ジョブの表示、ジョブの保留、ジョブの解放、ジョブの取消しなど)。
TuxJESは、次のバッチ・ジョブ・フェーズに対処しています。
TuxJESはOracle Tuxedoアプリケーションであり、TuxJESを実行するためにはOracle Tuxedoが必要です。
分散環境でTuxJESをデプロイするためには、共有ファイル・システム(NFSなど)が必要です。
genjesprofile
Oracle Tuxedoアプリケーションのセキュリティ・プロファイルを生成します
artjesadmin
TuxJESコマンド・インタフェース。Oracle Tuxedoクライアントです
ARTJESADM
TuxJES管理サーバー。Oracle Tuxedoサーバーです。
ARTJESCONV
TuxJES変換サーバー。Oracle Tuxedoサーバーです。
ARTJESINITIATOR
TuxJESジョブ・イニシエータ。Oracle Tuxedoサーバーです。
ARTJESPURGE
TuxJESパージ・サーバー。Oracle Tuxedoサーバーです。
詳細情報は、『Oracle Tuxedo Application Runtime for Batchリファレンス・ガイド』を参照してください。
TuxJESは、Oracle Tuxedoアプリケーションです。大部分のTuxJESコンポーネントは、Oracle TuxedoクライアントまたはOracle Tuxedoサーバーです。まずTuxJESをOracle Tuxedoアプリケーションとして構成する必要があります。TuxJESがインストールされたディレクトリを参照する環境変数JESDIR
が、正しく構成される必要があります。
リスト1に、TuxJESシステムのためのOracle Tuxedo構成ファイル(UBBCONFIG)例の一部を示します。
*GROUPS
QG
LMID=L1 GRPNO=2 TMSNAME=TMS_QM TMSCOUNT=2
OPENINFO="TUXEDO/QM:/jes2queue/QUE:JES2QSPACE"
ARTG
LMID=L1 GRPNO=4
EVTG
LMID=L1 GRPNO=8
*SERVERS
DEFAULT:
CLOPT="-A"
TMUSREVT SRVGRP=EVTG SRVID=1 CLOPT="-A"
TMQUEUE
SRVGRP = QG SRVID = 1
RESTART = Y CONV = N MAXGEN=10
CLOPT = "-s JES2QSPACE:TMQUEUE -- -t 5 "
ARTJESADM SRVGRP =ARTG SRVID = 1 MIN=1 MAX=1
CLOPT = "-A -- -i jesconfig"
ARTJESCONV SRVGRP =ARTG SRVID = 20 MIN=1 MAX=1
CLOPT = "-A --"
ARTJESINITIATOR SRVGRP =ARTG SRVID = 30
CLOPT = "-A -- -c ABCDEFG
ARTJESPURGE SRVGRP =ARTG SRVID = 100
CLOPT = "-A --"
Oracle Tuxedo構成ファイル(UBBCONFIG)には、次のTuxJESサーバーが含まれている必要があります。
注意: | ARTJESADM 、ARTJESCNOV 、ARTJESINITIATOR およびARTJESPURGE の複数のインスタンスを構成できます。 |
TuxJES管理サーバーARTJESADMの場合、-i
オプションを使用してTuxJES構成ファイルを指定する必要があります。ARTJESADM
は、Oracle Tuxedo構成ファイル(UBBCONFIG)で、ARTJESCONV
、ARTJESINITIATOR
またはARTJESPURGE
の各サーバーより前に構成される必要があります。
詳細情報は、『Oracle Tuxedo Application Runtime for Batchリファレンス・ガイド』を参照してください。
TuxJESはOracle Tuxedo /Qコンポーネントを使用するため、UBBCONFIGファイル内に、TMS_QMが構成されたOracle Tuxedoメッセージング・サーバーTMQUEUEを持つOracle Tuxedoグループが必要です。/Qキュー・スペースの名前は、JES2QSPACEと構成する必要があります。
TuxJESはOracle Tuxedo Eventコンポーネントを使用するため、Oracle Tuxedoユーザー・イベント・サーバーTMUSREVTが、UBBCONFIGファイルにある必要があります。
TuxJESシステムは、単一のマシン上で動作するOracle Tuxedo SHMアプリケーション、または複数のマシン上で動作するOracle Tuxedo MPアプリケーションのいずれかです。
Oracle Tuxedoアプリケーションを設定する方法に関する詳細な情報は、Oracle Tuxedo関連のドキュメントを参照してください。
SCANUNIT
およびBLOCKTIME
パラメータを設定することで、ブロッキング・メッセージ、トランザクションおよびその他のシステム・アクティビティのタイムアウト期間数を指定できます。割り当てる値は5の倍数の正数である必要があります。
*RESOURCES
IPCKEY 113333
DOMAINID jesdomain
MASTER SITE1
MODEL SHM
MAXACCESSERS 200
MAXSERVERS 50
NOTIFY SIGNAL
SCANUNIT 2
0
BLOCKTIME 50
この例では、サニティ・スキャンは20秒ごとに実行され、リクエストが20 * 50 = 1000秒を超えてブロックされることはありません。
1つのTuxJESシステムにつき、JES2QSPACEという名前を持つ/Qキュー・スペースが1つ作成される必要があります。また、このキュー・スペースの中に、いくつかの/Qキューが作成される必要があります。TuxJESには、キュー・スペース(JES2QSPACE
)とキューを作成するサンプル・シェル・スクリプト(jesqinit
)が用意されています。詳細情報は、『Oracle Tuxedo Application Runtime Batchリファレンス・ガイド』を参照してください。
TuxJESは、ファイル・システムを使用して、バッチ実行エンジンと通信します。TuxJESとバッチ実行エンジンの間の通信のために、ファイル・システム上にディレクトリが作成されます。ディレクトリの名前は、TuxJES構成ファイルで指定されている必要があります。複数のマシン上にTuxJESシステムをデプロイする場合、このディレクトリは共有ファイル・システム(たとえば、NFS)に存在する必要があります。
TuxJES管理サーバーARTJESADMに対して構成ファイルを指定できます。構成ファイルでは、次のパラメータを構成できます。
EVENTPOST
が指定されない場合、イベントはポストされません。イベントのポストでのデータ・バッファはFML32タイプで、フィールドはtuxjes/include/jesflds.hで定義されます。
USER_IDENTICAL:
ジョブが、JESシステムに参加するJESクライアントを使用してOracle Tuxedoユーザーによって実行されることを示します。この値を選択する前に、Oracle Tuxedoの各ユーザーが既存のOSユーザーに対応することを確認します。
USER_MAPPING:
この値を指定すると、JESシステムはTuxJESユーザー・マッピング・ファイルを参照し、JESシステムに参加するJESクライアントを使用してOracle Tuxedoユーザーに対応するOSユーザーを検出して、このOSユーザーをジョブの実行者として指名します。
TuxJESでは、Oracle Tuxedoセキュリティ・メカニズムを活用して認証を実装します。認証が有効の場合、genapprofileユーティリティを使用してセキュリティ・プロファイルを生成し、それをartjesadmin
パラメータとして使用して、TuxJESシステムにアクセスしてください。プロファイルで使用されるユーザーは、ジョブ所有者です。ジョブを管理(取消し、パージ、保留および解放)できるのは、所有者だけです。ジョブは、誰でも表示できます。ジョブに所有者がない場合、誰でも操作できます。
Oracle Tuxedoアプリケーションはセキュリティが構成されていない場合でも、genjesprofile
ユーティリティを使用してジョブ所有者権限のチェックを強制し、データベース接続MT_DB_LOGIN
を格納できます。
PRIVILEGE_MODE
値をMAPPING_CREDENTIAL
に指定する場合、ユーザー・マッピング・ファイルがロードされ有効になります。Oracle TuxedoユーザーとOSユーザーの間のマッピング関係を定義します。マッピング・ファイル内のすべての行は次のフォーマットになります。
tuxedousername OSusername
ユーザー・マッピング・ファイルの所有者はルート、ファイル権限は「-rw-------」にすることをお薦めします。
リスト3に、TuxJESシステム用ユーザー・マッピング・ファイルのセグメント例を示します。
tuxedouser1 OSuser1
tuxedouser2 OSuser2
TuxJESは、MPモード内で容易に構成できるようになりました。ただし、ジョブを実行するには、EJRとTuxJESの両方で、ジョブを異なるマシンで同時に実行できるように構成を調整する必要があります。この項では、MPモードでバッチ・ランタイムを構成するための必須の構成について具体的に説明します。
TuxJESドメインの異なるマシン上のすべてのサーバーで共有されるジョブのデータは、共有記憶域(NFS)に置いて、ドメイン内のすべてのマシンでアクセスできるようにする必要があります。さらに、NFSはすべてのマシンで同じマウント・ポイントでマウントする必要があります。最後に、JESROOT
は、各ノードで共有JESルート・ディレクトリを指すように正しく構成する必要があります。実行時には、すべてのマシン上のTuxJESサーバーが、そのような共有JESROOT
に対してデータの書込みや取得を行います。
MPモードでのEJRの構成の詳細は、「バッチ・ランタイムの使用」の「MPモードでのバッチ・ランタイムの構成」を参照してください。
TuxJESシステムが起動したら、artjesadmin
ユーティリティを使用して、ジョブの送信、保留、解放、取消し、パージ、ジョブ情報の表示、ジョブ・ステータス変更のためのイベントのサブスクライブを行うことができます。
artjesadmin
のサブコマンドsubmitjobを使用して、ジョブを送信することができます。
scriptfile
パラメータは、送信されるジョブ・スクリプトです。ジョブ・スクリプトは、Oracle Tuxedo ART WorkbenchによってJCLから生成されます。絶対パス形式、現在の作業ディレクトリの相対パス、または、設定されている場合は、JOBREPOSITORY
の相対パスを使用できます。その長さは1023に制限されています。artjesadmin
は、次の書式を使用する直接ジョブ送信もサポートします。artjesadmin -i scriptfile
JCLFile
パラメータは、送信されるJCLジョブ・スクリプトです。絶対パス形式、現在の作業ディレクトリの相対パス、または、設定されている場合は、JOBREPOSITORY
の相対パスを使用できます。その長さは1023に制限されています。artjesadmin
は、次の書式を使用する直接ジョブ送信もサポートします。 artjesadmin -I JCLFile
ジョブを同期的に送信するには、次の書式でartjesadmin
を使用します。
artjesadmin [-f [security_profile]] [-o ejr_option] [-s shell_option] [-y [-t timeout(s)]] -i/-I scriptfile
注意: | ジョブを同期的に送信するには、TuxJES構成ファイル内にEVENTPOST=A を設定し、UBBCONFIGファイル内でNOTIFY をDIPIN に設定して、サーバーTMUSREVT を設定する必要があります。 |
00000002,
JOBA,DONE,C0000
00000002,
JOBA,FAILED,U0568
00000002,JOBA,Already Timeout!
artjesadmin
のサブコマンドprintjobを使用して、単独のジョブまたは一連のジョブの情報を表示することができます。
printjobサブコマンドの出力には、次の内容が含まれます。
注意: | JES2システムにあるジョブが多すぎる場合、コンソールですべてのジョブのステータスを出力するときにタイムアウトが発生する可能性があります。この状況を回避するには、JESのubbconfigに十分長いブロック・タイムを設定する必要があります。 |
注意: | ブロック・タイムの設定の詳細は、「TuxJES用のUBBCONFIG内のブロック・タイム」を参照してください。 |
ジョブ・ステータスを同期的に取得するには、次の書式でartjesadmin
を使用します。
artjesadmin [-f [security_profile]] -p -j jobid
00000002,
JOBA,DONE,C0000
00000002,
JOBA,FAILED,U0568
00000002,
JOBA,EXECUTING
artjesadmin
のサブコマンドholdjobを使用して、CONVING
またはWAITING
ステータスにあるジョブまたは一連のジョブを保留することができます。
artjesadmin
のサブコマンドreleasejobを使用して、HOLD_WAITING
またはHOLD_CONVING
ステータスにあるジョブまたは一連のジョブを解放することができます。
artjesadmin
のサブコマンドcanceljobを使用して、単独のジョブまたは一連のジョブの情報を取り消すことができます。
artjesadmin
のサブコマンドpurgejobを使用して、単独のジョブまたは一連のジョブの情報をパージすることができます。
DONE
またはFAIL
ステータスの完了されたジョブが、パージ・キューへ移動されます。他のジョブの場合、purgejob
が、canceljob
と同じ効果を持っています。purgejob
コマンドは、ジョブを直接パージしません。ARTJESPURGE
サーバーが、TuxJESシステムからジョブを削除します。
artjesadmin
のサブコマンドprintconcurrentを使用して、ARTJESINITIATORサーバーの最大同時実行ジョブ数を表示することができます。
artjesadmin
のサブコマンドchangeconcurrentを使用して、ARTJESINITIATOR
サーバーの最大同時実行ジョブ数を変更することができます。
artjesadmin
のサブコマンドeventを使用して、ジョブ・ステータス変更イベントをサブスクライブまたはサブスクライブ解除することができます。
イベントをサブスクライブすると、対応するイベントが生成したときに、artjesadmin
コンソール上に通知されます。
![]() ![]() ![]() |