2 SNAコンポーネントの管理

この項の各トピックでは、Oracle Tuxedo Mainframe Adapter for SNAアプリケーションを管理するためにCommunications Resource Manager (CRM)で管理者によって実行されるアクティビティについて説明します。

スタック管理および構成用のインタフェースは、スタック・プロバイダにより異なり、このガイドでは説明していません。ご使用の環境で使用されているスタックに関するベンダー・ドキュメントを参照してください。

この項の内容は、次のとおりです。

2.1 CRMの起動

CRMはPU 2.1サーバーと直接通信してSNA接続性を提供するサーバーです。これらのサーバーは手動で起動できます。PU 2.1サーバーは、常にCRMの前に起動する必要があります。また、両方のサーバーとも、関連付けられているOracle Tuxedo Mainframe Adapter for SNA Gatewayを起動する前に起動する必要があります。

CRMは次の方法で起動できます。

  • UNIXの場合は、コマンド行でCRMコマンドを入力します。
  • z/OS MVSシステムの場合は、明示的に記述されているJCLを使用してCRMジョブを実行します。
  • ローカル構成がある場合は、Tuxedo起動コマンドのtmbootを使用します。

2.1.1 UNIX上でのCRMの起動

CRMを適切に起動するには、次のタスクを完了します。このCRMの起動方法は、Linux/UNIXまたはメインフレーム上でCRMを分散構成している場合にのみ使用します。

  1. APPDIR をアプリケーション・ディレクトリに設定します。
  2. PU2.1サーバーを起動します。

    PU2.1サーバーの起動に関する詳細は、SNAスタック・ベンダーから提供される操作ドキュメントを参照してください。SNAスタックは、CRMの起動前に起動し、アクティブ化されている必要があります。

  3. CRMを起動します。

    コマンド行でCRMコマンドを入力します。

ノート:

Unix上のCRMはSSLモードで開始されますが、TM_ALLOW_NO_TLSでオーバーライドできます。
2.1.1.1 CRMコマンド

CRMコマンドによりCommunications Resource Managerが起動します。UNIXコマンド行からCRMを起動すると、CRM Command Line Consoleのウィンドウにプロンプトが表示され、これを終了すると、すべてのアクティブ・リンクがシャット・ダウンされます。

Oracle Tuxedo Mainframe Adapter for SNA GatewayごとにCRMを1つ、また、CRM定義ごとにスタックを1つ、それぞれ構成する必要があります。各スタックで1つ以上のSNAリンクを管理できます。

CRMには、RSTRTLOGBLOBLOGという2種類のログ・ファイルがあり、これらは$APPDIR内に格納されます。RSTRTLOGはリカバリ・プロセス中に使用されるトランザクション状態のログであるのに対し、BLOBLOGログにはセッションおよびリンク情報が格納されます。ログ・ファイルを削除する場合は、関係するリンクごとにコールド・スタートが必要です。CRMLOGSコマンドを使用して、CRMログ・ファイルのコンテンツおよび状態を表示できます。

CRMコマンド行の例:

CRM [ -t 0|1|2|3 ] [-p<nbr>] [-s] [-S <ssl_config file>][-n <type>:<min>:<max>][-u <keyfile>] <addr> <group>
2.1.1.2 コマンド行オプション

次の表に、CRMコマンドでよく使用されるいくつかのオプションについて説明します:

表2-1 CRMコマンド・オプション

キーワード デフォルト 必須/省略可能 説明
-t [0|1|2|3] 0 省略可能 トレースを有効にし、トレースのレベルを指定します。0=トレースなし。

このレベルに設定するとCRMトレーシングを効率的に無効化でき、トレース・ファイルが存在する場合は閉じます。その後トレースが再開された場合、数値の接尾辞が増分された新しいファイルが作成されます。0がデフォルトのトレース・レベルです。

1=最小限のトレース

このレベルでは、主要イベントのみがCRMでトレースされます。これはアプリケーションの会話のシーケンスを決定するだけには十分です。

2=中レベルのトレース

このレベルでは、すべてのI/OバッファもCRMでトレースされます。3=最大トレース。このレベルでは、すべてのAPPC動詞もCRMでトレースされます。

ノート:

CRMのトレース・オプションもCRM Monitorから設定できます。
-s オフ(パラメータが使用されていない場合) 省略可能 APPC Stack APIトレースの有効化を指定します。

一般に、APPC Protocol Stack APIトレースを有効化すると、すべてのAPIコールのパラメータおよび結果が表示されます。使用されるスタックによっては、トレースを有効化するためにCRMの他のオプション(ベンダー指定の環境変数など)をアクティブ化する必要がある場合があります。

ノート:

APPC Stack APIのトレース・オプションもCRM Monitorから設定できます。
-S <ssl_config_file> - 必須 ubbconfigに似たSSL構成を含むファイルへのパスを指定します。このファイルには次の設定が含まれている必要があります:
  • Oracle SSLウォレットのプリンシパル名: SEC_PRINCIPAL_NAME=ISH_tuxqa
  • Oracle SSLウォレットの場所: SEC_PRINCIPAL_LOCATION=/scratch/username/CRM/bin/wallet
  • ウォレット・パスワード: SEC_PRINCIPAL_PASSVAR=abcd1234
  • SSLトレース・レベルを設定します: SEC_TRACE_LEVEL=3
-n <type>:<min>:<max>     このプロセスに有効な暗号化を確立します。暗号化のタイプです。現在有効なエントリはGPE (汎用の暗号化)およびSSLです。

GPEの場合:

min 暗号化に使用される最小のビット数を指定します。これらのレベルはCRMとクライアント・プロセス間のネゴシエーション中に使用されます。任意の数を指定できますが、ネゴシエートされる値は0、56または128に解決されます。

max 暗号化に使用されるビットの最大数を指定します。これらのレベルはCRMとクライアント・プロセス間のネゴシエーション中に使用されます。任意の数を指定できますが、ネゴシエートされる値は0、56または128に解決されます。

SSLの場合:

min SSL暗号化に使用される暗号スイートの最小ビット数を決定します。これらは、CRMとGWSNAXの間のSSLネゴシエーション中に使用されます。256以下である必要があります。ネゴシエートされた値は128または256に解決されます。サポートされている最強の暗号スイートが最終的に使用されます。

max SSL暗号化に使用される暗号スイートの最大ビット数を決定します。これらは、CRMとGWSNAXの間のSSLネゴシエーション中に使用されます。ネゴシエートされた値は128または256に解決されます。サポートされている最強の暗号スイートが最終的に使用されます。

-p <nbr> 100スレッド 省略可能 パフォーマンス・オプションを有効化し、開始するスレッド数を指定します。この値は、同時に作成されるSNAリクエストのロードに対応している必要があります。リクエスト数がスレッド数を超える場合、これらのリクエストは実行可能ですが、完了時間に影響することがあります。200スレッドを超えないようにしてください。CRMは最大200スレッド用に調整されています。システムでアクティブ化可能なスレッド数に制限がある場合はスレッド値を下げます。
<addr> なし 必須 //hostname:port_addrまたはsockaddr_in形式のファミリ、ポート、アドレスを使用してTCP/IPアドレスを指定します:

<0xFFFFPPPPAAAAAAAA>

このエントリでは、引数およびオプションは次のように定義されています。

FFFFはプロトコル・ファミリの16進値で、INETファミリの場合は常に0x0002です。

PPPPは、未使用のTCP/IPポートの16進値です。

AAAAAAAAは、CRMを実行しているマシンのIPアドレスの16進値です。

<group> なし 必須 Oracle Tuxedo Mainframe Adapter for SNA Gatewayグループ名を指定します。
2.1.1.3 環境変数

次の表で、CRMでよく使用される環境変数について説明します:

表2-2 環境変数

名前 説明
TM_ALLOW_NOTLS Linux CRMがSSL以外の暗号化方式で動作できることを指定します。デフォルト値はn (いいえ)です。SSL暗号化が正しく構成されていない場合、Linux上のCRMアプリケーションは実行されません。
TM_MIN_PUB_KEY_LENGTH 公開SSLキーの最小長を指定します(デフォルトは2048ビット)。CRMは、この長さより短いキーの使用を拒否します。

ノート:

現在、Linuxオペレーティング・システムのみがTM_ALLOW_NOTLSおよびTM_MIN_PUB_KEY_LENGTH環境をサポートしています。
2.1.1.4

次の項では、CRMの起動用の異なるオプションのうちの3つの例を示します。

2.1.1.4.1 CRMおよびCRM Command Line Consoleの起動

UNIXコマンド行からCRMを起動するには、次のようなコマンドを使用します。

CRM -t 0 //myhost:5587 GROUP2 /dev/null>std.out 2>std.err &
UNIXコマンド行からCRMを起動すると、次のCRMコマンド行コンソールが表示されます:
ORACLE TUXEDO Mainframe Adapter for SNA Communications Resource Manager
started 2023-10-27 11:30:30.007 UTC
<CRM> CRM 22.1.0, Oct 26 2023 01:26 Build CRM_SERVICE



Console active. Enter commands.
?>
Invalid command. Enter da, dl, ds, dt, ls, sl, st, sh, or si
 da => Display active tasks
 dl => Display remote links
 ds => Display link statistics
 dt => Display trace status
 ls => Link stop [<nn,nn,nn,...> | <nn-nn>]
 sl => Start link [<nn,nn,nn,...> | <nn-nn>]
 st => Start all links
 sh => Stop all links and terminate
 si => Terminate immediately (no quiesce)
?>
2.1.1.4.2 バックグラウンドで動作しているCRM Command Line ConsoleによるCRMの起動

バックグラウンドで動作しているコンソールによってCRMを起動するには、次のようなコマンドを使用します:

$ CRM -t 0 //myhost:5587 GROUP2 <dev/null>std.out 2>std.err &
2.1.1.4.3 詳細トレーシングおよびAPPC Stack APIトレーシングによるCRMの起動

ホスト/ポート・アドレスを使用してコマンド行から詳細トレーシングおよびAPPC Stack APIトレーシングを有効にしてCRMを起動するには、次のようなコマンドを使用します:

CRM -t 2 -s //myhost:5587
2.1.1.5 診断

CRMは正常に完了すると、戻りコード0で終了します。

2.1.2 z/OS MVS上でのCRMの起動

z/OS MVSプラットフォームでは、ジョブ制御言語(JCL)を使用して環境設定およびCRMの起動を行います。

  1. CRMを起動する環境で、次の環境変数を設定します。サンプル・ファイルはデータ・ライブラリにあります(ENV)。
    APPDIR=<High level qualifier for datasets to be created in APPDIR>
  2. ご使用のシステム用に記述されているJCLを使用してCRMジョブを実行します。

ノート:

CRMがz/OS MVSプラットフォームにインストールされている場合は、Oracle Tuxedo Mainframe Adapter for SNA Gatewayが異常終了してもCRMを再起動する必要はありません。tmshutdownでは、CRMはシャットダウンされません。CRMをシャットダウンするにはcrmdownユーティリティを実行する必要があります。この永続機能があるのは、z/OS MVSバージョンおよびz/OS UNIXバージョンのCRMのみです。
2.1.2.1 CRMコマンド用のサンプルJCL

この項では、CRMコマンドを実行する際に使用可能なSETコマンドの説明およびJCLの例を示します。

SET STARTCMD
CRMコマンド行のパラメータを設定します。
SET OBJLIB
CRM実行可能ファイルがインストールされているPDSEライブラリの名前を指定します。
SET DATA
ENVFILEを含むデータセットを指定します。
SET ENVFILE
CRMの環境変数を含むPDSメンバーの名前を指定します。サンプル・メンバーのENVは製品に同梱されています。
SET SIZE
CRMタスクの実行用の領域サイズを定義します。このオプションの推奨設定は0Mで、CRMを起動し、必要なサイズにまで到達するようにできます。
SET ENV
ENVFILE DD名を指定します。この値は事前設定されており、変更できません。
SET CEE
LEランタイム・ライブラリ用の高度な修飾子を指定します。CEEはIBM Language Environmentデータ・セットの接頭辞に設定する必要があります。Language EnvironmentはCRMの実行に必要です。

ノート:

これらのライブラリがシステムのリンク・ライブラリの連結にない場合は、SET CEE行を非コメント化し、STEPLIB連結を調整します。
SET CBC
C/C++ランタイム・ライブラリ用の高度な修飾子を指定します。CBCはIBM C++データ・セットの接頭辞に設定する必要があります。

リスト CRMコマンド用のサンプルcrmstart.jcl

//***************************************************************
//* THIS JOB IS USED TO RUN THE CRM PROCESS.                    *
//*                                                             *
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.   *
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY SNACRM     *
//***************************************************************
//***************************************************************
//* USE THE SET STATEMENTS TO SET THE APPROPRIATE VALUES        *
//* STARTCMD IS THE CRM COMMAND LINE                            *
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE PROGRAM EXECUTABLES*
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS *
//* RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS (OPTIONAL)      *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS. 0M SETS NO*
//* LIMITS ON THE REGION SIZE                                   *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT    *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION              *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                   *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                *
//***************************************************************
// SET STARTCMD='"//<address>:<port>" <group>'
// SET OBJLIB=
// SET DATA=
// SET ENVFILE=ENV
// SET RUNOPTS=
// SET SIZE=0M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRM       EXEC PGM=CRM,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&STARTCMD'
//STEPLIB  DD DSN=&OBJLIB,DISP=SHR
//*        DD DSN=&CEE..SCEERUN,DISP=SHR
//*        DD DSN=&CBC..SCLBDLL,DISP=SHR
//MSGFILE  DD SYSOUT=*
//TRACE    DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//ENV      DD DSN=&DATA(&ENVFILE),DISP=SHR
// 

2.2 メインフレームでの個別のCRM構成の作成

TMAには、CRM関連の構成(CICSLINKSおよびSNASTACKS)を、メインフレーム上で独立して格納および管理できる柔軟性が用意されています。

具体的には、TMAではDM_SNASTACKSDMCONFIGで構成されているかどうかが自動的に確認されます。構成されている場合、TMAはDMCONFIGDM_SNASTACKSおよびDM_SNALINKS構成を使用します。そうでない場合、TMAはメインフレーム上のCRM構成を使用します。メインフレーム上にCRM構成がない場合、TMAはシャットダウンし、ULOGにエラーが記録されます。

この柔軟性を使用するには、CRM側とTMA SNA側の両方で次のステップを実行します。

CRM側とTMA SNA側の両方ですべての構成を行ったら、まずCRMを起動し、次にTMA SNA Gatewayを起動します。ULOGを使用して、TMA SNA Gatewayが正常にCRMに接続しているかどうかを確認できます。

2.2.1 CRM側の構成

こちら側では、次の手順を実行します:

  1. 各CRMに対して、次のコマンド行を追加して、構成名と場所を定義します:
    ...
    // SET STARTCMD='-t 3 "//zsvr:8001" CRM8001'
    //CFG      DD DSN=&DATA(&CFGFILE),DISP=SHR
    //SET CFGFILE=CFG 
    ...

    CFGはDDカードで、メインフレーム上の個別のCRM構成を指定します。SET CFGFILEは、CRM上のSTACKおよびLINK構成を含むPDSメンバーの名前を示します。

  2. CRMごとにデータセット・メンバー(CFG)を作成し、LINKおよびSTACKパラメータを設定します。次の表に、CRM構成で使用可能なすべてのパラメータを示します。次のリストはCRM構成のサンプルです。

表2-3 CRM構成のパラメータ

セクション パラメータ ノート
STACK STACKTYPE=VT210 DMCONFIG*DM_SNASTACKSSTACKTYPEと同じですが、指定できるのはVT210のみです。
LOCALLU DMCONFIG*DM_SNASTACKSLOCALLUと同じです。
LTPNAME DMCONFIG*DM_SNASTACKSLTPNAMEと同じです。
STACKPARMS x*DM_SNASTACKSSTACKPARMSと同じです。
LINK RDOM DMCONFIG*DM_SNALINKSRDOMと同じです。SNAGWが構成をマップできるように、RDOMの値はDMCONFIGDM_REMOTEのドメイン名と一致する必要があります。
LSYSID DMCONFIG*DM_SNALINKSLSYSIDと同じです。
RSYSID DMCONFIG*DM_SNALINKSRSYSIDと同じです。
RLUNAME DMCONFIG*DM_SNALINKSRLUNAMEと同じです。
MODENAME DMCONFIG*DM_SNALINKSMODENAMEと同じです。
STARTTYPE DMCONFIG*DM_SNALINKSSTARTTYPEと同じです。
MAXSESS DMCONFIG*DM_SNALINKSMAXSESSと同じです。
MINWIN DMCONFIG*DM_SNALINKSMINWINと同じです。
MAXSYNCLVL DMCONFIG*DM_SNALINKSMAXSYNCLVLと同じです。

リスト CRM構成のサンプル

...
[STACK] 
STACKTYPE=VT210 
LOCALLU=CRMLU05 
LTPNAME=* 
STACKPARMS=wasa 
[LINK]RDOM=MVSDOM 
LSYSID=CR05 
RSYSID=CICS 
RLUNAME=CICSA 
MODENAME=SMSNA100 
SECURITY=LOCAL 
STARTTYPE=COLD 
MAXSESS=8 
MINWIN=4 
MAXSYNCLVL=2
...

次に、CRMコマンド用のJCLサンプル(メインフレーム上の個別のCRM構成)を示します。

リスト CRMコマンド用のJCLサンプル(メインフレーム上の個別のCRM構成)

//***************************************************************
//* THIS JOB IS USED TO RUN THE CRM PROCESS.                            *
//*                                                                     *
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.           *
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY SNACRM             *
//***************************************************************
//***************************************************************
//* USE THE SET STATEMENTS TO SET THE APPROPRIATE VALUES                *
//* STARTCMD IS THE CRM COMMAND LINE                                    *
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE PROGRAM EXECUTABLES       *
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES         *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS         *
//* RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS (OPTIONAL)              *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS. 0M SETS NO        *
//* LIMITS ON THE REGION SIZE                                           *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT            *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION                      *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                           *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                        *
//***************************************************************
// SET STARTCMD='"//<address>:<port>" <group>'
// SET OBJLIB=
// SET DATA=
// SET ENVFILE=ENV
// SET CFGFILE=CFG
// SET RUNOPTS=
// SET SIZE=0M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRM EXEC PGM=CRM,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&STARTCMD'
//STEPLIB   DD DSN=&OBJLIB,DISP=SHR
//*         DD DSN=&CEE..SCEERUN,DISP=SHR
//*         DD DSN=&CBC..SCLBDLL,DISP=SHR
//MSGFILE   DD SYSOUT=*
//TRACE     DD SYSOUT=*
//SYSPRINT  DD SYSOUT=*
//ENV       DD DSN=&DATA(&ENVFILE),DISP=SHR
//CFG       DD DSN=&DATA(&CFGFILE),DISP=SHR 
// 

2.2.2 TMA SNA側の構成

こちら側では、「Oracle Tuxedo Mainframe Adapter for SNA Gatewayの構成」の「オプションA: DMCONFIGファイルの編集」の「*DM_SNASTACKSの追加」および「*DM_SNALINKSの追加」の項を除き、「Oracle Tuxedo Mainframe Adapter for SNA Gatewayの構成」に従ってTMA SNAゲートウェイを構成します。

2.3 CRM Monitorの使用

CRM Monitorは、グラフィカル・ユーザー・インタフェース(GUI)を介したCRMサーバーへの接続およびモニターを可能にするJavaアプリケーションです。CRM Monitorを使用してリンク・ステータスやアクティビティのモニター、およびCRMサーバーの診断トレーシングの開始または停止ができます。CRM Monitorでは、リモートのCRMサーバーへのネットワーク接続をTCP/IPネットワーク接続を介して行います。CRM Monitorはメインフレーム上ではなく、Gatewayとともにインストールされます。

2.3.1 コマンド行からのCRM Monitorの起動

CRM Monitorは、UNIXプラットフォームのコマンド行からも起動できます。

コマンド行からCRM Monitorを起動するには:

  • JREまたはJDKインタプリタ用の次のコマンドを入力します。

    java -jar crmmon.jar

2.3.2 CRM Monitorオプションの設定

次の図に、CRM Monitorの表示例を示します。

図2-1 CRM Monitorの表示

CRM Monitorの表示の図

CRM Monitorの起動後、次の指示に従ってCRM Monitorオプションを設定します。

  1. CRMをモニターするには、「CRMアドレスを入力」テキスト・ボックスにCRMアドレスを次の形式で入力します: //host:port

    この場合、hostはCRMホスト・マシンを明示的に指定し、portはCRMホスト・マシン上のCRMのポート番号を指定します。

    この値は、CRM Monitorの起動インスタンスごとに1回のみ入力できます。

  2. 次のCRMのトレース・オプションのうち、1つを選択します。
    • CRMトレースを停止は、CRMトレーシングを無効化し、トレース・ファイルが存在する場合はそれを閉じます。CRMコマンドのトレース・オプションに関する項で説明しているように、このオプションは、トレース・レベル0です。
    • 最小限のCRMトレースを設定は、主要イベントのみのトレーシングを設定します。このレベルはアプリケーションの会話のシーケンスを決定するだけには十分です。CRMコマンドのトレース・オプションに関する項で説明しているように、このオプションは、トレース・レベル1です。
    • 中レベルのCRMトレースを設定は、主要イベントおよびすべてのI/Oバッファのトレーシングを確立します。CRMコマンドの「トレース・オプション」の項で説明しているように、このオプションは、トレース・レベル2です。
    • 最大のCRMトレースを設定は、主要イベント、すべてのI/OバッファおよびすべてのAPPC動詞のトレーシングを確立します。CRMコマンドの「トレース・オプション」の項で説明しているように、このオプションは、トレース・レベル3です。

      ノート:

      CRM Monitorではトレース・データは表示されません。このデータは、CRMサーバーのAPPDIRディレクトリ下のファイル内に格納されます(APPDIRはCRMディレクトリと関連付けられている変数の名前です)。トレース・ファイルの場所および解釈方法のご質問は、オラクル社カスタマー・サポートにお問い合せください。

      CRMトレースの時間タグ情報は、現在のシステムの時間を反映します。UNIXおよびMVSシステムで正しいタイム・ゾーンが使用されるようにするには、TZ環境変数が正しく設定されていることが重要です。システムでこの変数が正しく設定されていない場合、詳細はシステムのドキュメントを参照してください。

  3. 次のAPPCスタック・トレース・オプションのうち、1つを選択します。
    • APPCスタック・トレースの開始は、APPCスタックのトレーシングを確立します。このオプションは一般に、すべてのAPIコールのパラメータおよび結果を表示します。使用されるスタックによっては、ベンダー指定の環境変数など、他のオプションをアクティブ化する必要がある場合があります。このオプションは、前述のどのトレース・オプションとも同時に選択できます。このオプションは、CRMの項で説明している-sオプションに対応します。
    • APPCスタック・トレースを停止は、APPCスタック・トレースが確立されている場合は、これを無効化します。

    ノート:

    CRMおよびAPPC Stack APIトレース・オプションはCRMコマンドからでも設定できます。トレース・オプションの詳細は、CRMの項を参照してください。
  4. CRMアドレスを入力し、トレース・オプションを選択した後、次のフィールドに、モニタリングしているCRMに関する情報が表示されます。
表示フィールド 説明
選択済CRM アドレス・フィールドで入力したアドレスにあるCRMの名前が表示されます。
トレース・ステータス 現在選択されているトレース・オプションが表示されます。
リンク・ステータス 選択したCRMのすべてのリモート・リンクの現在のステータスが表示されます。(テキストはスクロールできます。)
リンク統計 選択したCRMのすべてのリモート・リンクに関する現在の統計が表示されます。(テキストはスクロールできます。)
メッセージ行 自動接続の試行結果またはトレース・オプションの変更のために発行されたコマンドのいずれかを示すメッセージが表示されます。

2.4 単一のCRMに接続される複数のSNA Gateway

2.4.1 概要

TMA CRMでは、複数のGatewayが単一のCRMプロセスによって提供されるリソースに接続して使用できます。この機能により、SNA Gatewayレベルでのワークロードの分散をサポートしながら、CRMをホストしているコンピュータで必要な処理負荷を大幅に削減できます。

複数のGatewayにより、Tuxedoアプリケーションのロード・バランシングおよびフェイルオーバーに対するメインフレームが提供されます。

2.4.1.1 複数Gatewayサポートの利点

複数Gatewayサポートの主な利点は、CRMが1つ以上のSNA Gatewayからの同時接続をホストできることです。この方法の利点は次のとおりです:

  • 複数のCRMよりも単一のCRMのほうが、全体として消費されるシステム・リソースが少なくなります。
  • 使用される構成の設定、管理および操作がより簡単になります。
  • CRMが、接続されているTuxedoアプリケーションによって提供されるサービスのメインフレーム・リクエストのロード・バランシングを実行できます。

2.4.2 複数Gateway接続

CRMは、単一のコンタクト・ポイント、つまりコンポーネント(SNA Gatewayなど)が接続リクエストを送信できる単一のリスナー・ソケット(ホストIPアドレスおよびポート番号で指定)を提供します。新しい各接続リクエストは、そのコンポーネント接続の処理専用のサーバー・ソケットに渡されます。

CRMでは、次のコンポーネントの接続/切断シナリオが重視されます。

  • 最初のTuxedo SNA Gateway接続

    CRMに接続する最初の(または唯一の) Gatewayでは、CRMはVTAMインタフェースを初期化して、CICSやIMSなどのメインフレーム・システムとのリンクを確立するための構成情報をGWSNAXから受け取ります。

    CRM構成が完了すると、GWSNAXは、CRMがリクエストの処理を開始できるようになったことを示すレスポンスを受け取ります。

  • 後続のTuxedo SNA Gateway接続

    クライアントがTuxedo SNA Gatewayであり、現在CRMに接続しているGatewayが他にもある場合、GWSNAXは構成のアップロード操作をバイパスします。この場合、最初のTuxedo SNA GatewayクライアントがすでにCRM構成情報を提供しているため、構成情報は不要です。

2.4.3 複数Gatewayのシャットダウン

Oracle Tuxedo SNA Gatewayは、次の順番に行われる切断およびシャットダウン手順をサポートします。

  • シャットダウン・プロセス(最後のものを除くすべてのGateway)
    シャットダウン中、Gatewayが切断され(ソケット接続が閉じられ)、フェーズ1のシャットダウン処理がその接続に対してのみ開始されます。フェーズ1のシャットダウンは、次に示すような「シャットダウン保留中」状態です:
    • 進行中の送受信を完了できます。
    • 実行中のトランザクションは中断されます。

    他のGatewayがまだ接続されている場合は、CRMはフェーズ2シャットダウン・プロセスには進みません。メインフレーム・システムへのリンクはアクティブなままになり、CRMは接続されている他のGatewayについては通常処理を続行します。

  • シャットダウン・プロセス(最後のGateway)
    最後の(または唯一の)Gatewayがシャットダウンをリクエストするか、CRMとの接続を閉じる場合、CRMは「シャットダウン・プロセス(最後のものを除くすべてのGateway)」の説明のように、そのGatewayに対してフェーズ1シャットダウン処理を実行します。ただし、フェーズ1のシャットダウン処理が完了すると、CRMはフェーズ2のシャットダウン処理に進み、次のことが行われます:
    • メインフレーム・システムへのリンクが停止されます。
    • 現在の構成が破棄されます。
    • CRMが「リセット」状態に戻り、別のクライアントによる接続が保留になります。

2.4.4 インバウンド・リクエストのロード・バランシング

TMA SNAアダプタは、ロード・バランシング機能を利用して、メインフレームから、CRMに接続されている現在アクティブなSNAゲートウェイにリクエストをディスパッチします。メインフレームからGWSNAXへのリクエストは、常にラウンドロビン方式でロード・バランシングされます

2.4.5 トランザクション・アフィニティ

メインフレームからGWSNAXへのリクエストがトランザクション・コンテキストで呼び出された場合、このリクエストはそのトランザクションが中断またはコミットされるまで、常に同じGWSNAXにディスパッチされます。

2.5 リンクのアクティブ化および非アクティブ化

コマンド行からいずれかのリンク・コマンドを1つ実行して、DMCONFIGファイルのDM_SNALINKSセクションで定義されているCRMリンクをアクティブ化および非アクティブ化できます。リンクのアクティブ化および非アクティブ化に使用されるコマンドには次の2つがあります。

z/OS多重仮想記憶(MVS)プラットフォーム上でジョブ制御言語(JCL)を使用して環境設定およびリンク・コマンドの起動を行うこともできます。次の項で、MVSオペレーティング・システムで使用可能なリンク・コマンドおよびサンプルのJCLについて説明します。

2.5.1 crmlkonコマンド

crmlkonコマンドは1つ以上の指定CRMリンクを起動します。

crmlkonは、コマンド行で指定されるすべてのCRMリンクを起動します。このコマンドは、CRMサーバーの起動時に個別のリンクが1つ以上起動しない場合に便利です。このコマンドはCRMサーバーを実行しているマシンと同じTCP/IPネットワーク内の任意のマシンから使用できます。スクリプト内で使用でき、コマンドがターゲットCRMに送信されると0を戻します。コマンドがターゲットCRMに送信されなかった場合は1を戻します。

次に、crmlkonコマンド行の例を示します。

crmlkon -n <hostname:port> [-v -i -h -u <keyfile> -S <ssl_config_file> -N <type>:<min>:<max>] <linkname>
      ...

次に、コマンド行オプションについて説明します。

2.5.1.1 コマンド行オプション

次の表で、crmlkonコマンドに有効なオプションについて説明します。

表2-4 crmlkonコマンド・オプション

キーワード デフォルト 必須/省略可能 説明
-n<hostname:port> なし 必須 CRMサーバーを実行しているマシンおよびポートを指定します。
-v Off 省略可能 詳細を指定します。スクリプト内で容易に使用できるように、通常、このコマンドではメッセージは生成されません。
-i Off 省略可能 エラーを無視します。複数のリンクを指定した場合、CRMコマンドの発行時にエラーが発生すると、xはリンクの処理を停止し、戻ります。エラーはリンクごとに無視でき、続けて次の指定リンクを処理できます。
-S <file> なし 省略可能 SSL構成ファイルを指定します。その構文は、CRMの-Sコマンド行引数と同じです。
-N <type>:<min>:<max> なし 省略可能 暗号化設定のタイプと範囲を設定します。その構文は、CRMの-nコマンド行引数と同じです。
<linkname> なし 必須 起動するリンクを指定します。これは、このリンクを定義するgwsnax.cfg内のDM_SNALINKSエントリです。複数のリンク名を指定できます。
-u<keyfile> なし 省略可能 CRMとともに使用される認証名が含まれているキー・ファイルを指定します。
2.5.1.2

ポート5000のmach1上で動作するCRMで所有されるlink2およびcicstestリンクを起動するには、次のコマンドを使用します。

crmlkon -n mach1:5000 link2 cicstest
2.5.1.3 診断

crmlkon はコマンドの構文のみをチェックします。CRM Monitorを使用してリンクが実際にアクティブ化されたかどうかを確認します。詳細は「CRM Monitorオプションの設定」を参照してください。コマンドがCRMに送信されなかった場合は、crmlkonは、冗長モードのときはエラー・メッセージをプリントし、エラー・コード1で終了します。正常に完了した場合は、crmlkonは終了コード0で終了します。

2.5.1.4 crmlkonコマンド用のサンプルJCL

この項では、crmlkonコマンドを実行する際に使用可能なSETコマンドの説明およびJCLの例を示します。サンプルのSETコマンドは、ご使用のシステムの構成を反映していない場合があります。ご使用の環境に合わせてSETコマンドをカスタマイズする必要があります。特定の設定に関する詳細は、システム管理者に問い合せてください。

2.5.1.4.1 SET LINKCMD

crmlkonコマンド行パラメータを設定します。このコマンド行パラメータの詳細は、「crmlkonコマンド」を参照してください。

2.5.1.4.2 SET OBJLIB

crmlkon実行可能ファイルがインストールされているPDSEライブラリの名前を指定します。

2.5.1.4.3 SET DATA

ENVFILEを含むデータセットを指定します。

2.5.1.4.4 SET ENVFILE

CRMLKONの環境変数を含むPDSメンバーの名前を指定します。サンプル・メンバーのENVは製品に同梱されています。

2.5.1.4.5 SET SIZE

crmlkonタスクの実行用の領域サイズを定義します。

2.5.1.4.6 SET ENV

ENVFILE DD名を指定します。この値は初期設定です。

2.5.1.4.7 SET CEE

LEランタイム・ライブラリ用の高度な修飾子を指定します。CEEはIBM Language Environmentデータ・セットの接頭辞に設定する必要があります。Language Environmentはcrmlkonの実行に必要です。

2.5.1.4.8 SET CBC

C/C++ランタイム・ライブラリ用の高度な修飾子を指定します。CBCはIBM C++データ・セットの接頭辞に設定する必要があります。

ノート:

これらのライブラリがシステムのリンク・ライブラリの連結にない場合は、SET CBC行を非コメント化し、STEPLIB連結を調整します。

リスト crmlkonコマンド用サンプルJCL

//***************************************************************
//* THIS JOB IS USED FOR THE STAND-ALONE LINK COMMAND           *
//* TO ACTIVATE A REMOTE LINK. SEE USER GUIDE FOR MORE INFO     *
//*                                                             *
//* 
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.   *
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY CRMLKON    *
//***************************************************************
//***************************************************************
//* LINKCMD INDICATES THE DISTRIBUTED SNACRM ADDRESS AND LINKNAME*
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE TUXEDO MAINFRAME  *
//* ADAPTER FOR SNA PROGRAM OBJECTS                             *
//* RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS                 *
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS            *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT    *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION              *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                   *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                *
//***************************************************************
// SET LINKCMD='-n<host name>:<port> <linkname>'
// SET OBJLIB=
// SET RUNOPTS=
// SET DATA=
// SET ENVFILE=ENV
// SET SIZE=1M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRMLKON EXEC PGM=CRMLKON,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&LINKCMD'
//STEPLIB  DD DSN=&OBJLIB,DISP=SHR
//*        DD DSN=&CEE..SCEERUN,DISP=SHR
//*        DD DSN=&CBC..SCLBDLL,DISP=SHR
//ENV      DD DSN=&DATA(&ENVFILE),DISP=SHR
//MSGFILE  DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//

2.5.2 crmlkoffコマンド

crmlkoffコマンドは1つ以上の指定CRMリンクを停止します。

crmlkoffは、コマンド行で指定されるすべてのCRMリンクを停止します。このコマンドは、CRMサーバーの起動時に個別のリンクを1つ以上停止する必要がある場合に便利です。このコマンドはCRMサーバーを実行しているマシンと同じTCP/IPネットワーク内の任意のマシンから使用できます。スクリプト内で使用でき、コマンドがターゲットCRMに送信されると0を戻します。コマンドがターゲットCRMに送信されなかった場合は1を戻します。

次に、crmlkoffコマンド行の例を示します。

crmlkoff -n <hostname:port> [-v -i -h -u <keyfile> -S <ssl_config_file> -N <type>:<min>:<max>] <linkname>
      ...
2.5.2.1 コマンド行オプション

次の表で、crmlkoffコマンドに有効なオプションについて説明します。

表2-5 crmlkoffコマンド・オプション

キーワード デフォルト 必須/省略可能 説明
-n<hostname:port> なし 必須 CRMサーバーを実行しているマシンおよびポートを指定します。
-v Off 省略可能 詳細を指定します。スクリプト内で容易に使用できるように、通常、このコマンドではメッセージは生成されません。
-i Off 省略可能 エラーを無視します。複数のリンクを指定した場合、CRMコマンドの発行時にエラーが発生すると、crmlkonはリンクの処理を停止し、戻ります。エラーはリンクごとに無視でき、続けて次の指定リンクを処理できます。
-h なし 省略可能 このコマンドのヘルプを表示します。
-S <file> なし 省略可能 SSL構成ファイルを指定します。その構文は、CRMの-Sコマンド行引数と同じです。
-N <type>:<min>:<max> なし 省略可能 暗号化設定のタイプと範囲を設定します。その構文は、CRMの-nコマンド行引数と同じです。
-u<keyfile> なし 省略可能 CRMとともに使用される認証名が含まれているキー・ファイルを指定します。
<linkname> なし 必須 停止するリンクを指定します。これは、このリンクを定義するDMCONFIG内のDM_SNALINKSエントリです。複数のリンク名を指定できます。
2.5.2.2

ポート5000のmach上で動作するCRMで所有されるlink1およびcicstestリンクを停止するには、次のコマンドを使用します。

crmlkoff -n mach:5000 link1 cicstest
2.5.2.3 診断

crmlkoffはコマンドの構文のみをチェックします。CRM Monitorを使用してリンクが実際にアクティブ化されたかどうかを確認します。詳細は「CRM Monitorオプションの設定」を参照してください。コマンドがCRMに送信されなかった場合は、crmlkoffは、冗長モードのときはエラー・メッセージをプリントし、エラー・コード1で終了します。正常に完了した場合、crmlkoffは終了コード0で終了します。

2.5.2.4 crmlkoffコマンド用のサンプルJCL

この項では、crmlkoffコマンドを実行する際に使用可能なSETコマンドの説明およびJCLの例を示します。サンプルのSETコマンドは、ご使用のシステムの構成を反映していない場合があります。ご使用の環境に合わせてSETコマンドをカスタマイズする必要があります。特定の設定に関する詳細は、システム管理者に問い合せてください。

2.5.2.4.1 SET LINKCMD

crmlkoff コマンド行パラメータを設定します。コマンド行パラメータの詳細は、「crmlkonコマンド用のサンプルJCL」を参照してください。

2.5.2.4.2 SET OBJLIB

crmlkoff実行可能ファイルがインストールされているPDSEライブラリの名前を指定します。

2.5.2.4.3 SET DATA

ENVFILEを含むデータセットを指定します。

2.5.2.4.4 SET ENVFILE

crmlkoffの環境変数を含むPDSメンバーの名前を指定します。サンプル・メンバーのENVは製品に同梱されています。

2.5.2.4.5 SET SIZE

crmlkoffタスクの実行用の領域サイズを定義します。

2.5.2.4.6 SET ENV

ENVFILE DD名を指定します。

2.5.2.4.7 SET CEE

Language Environment (LE)ランタイム・ライブラリ用の高度な修飾子を指定します。CEEはIBM LEデータ・セットの接頭辞に設定する必要があります。Language Environmentはcrmlkoffの実行に必要です。

2.5.2.4.8 SET CBC

C/C++ランタイム・ライブラリ用の高度な修飾子を指定します。CBCはIBM C++データ・セットの接頭辞に設定する必要があります。

ノート:

これらのライブラリがシステムのリンク・ライブラリの連結にない場合は、SET CBC行を非コメント化し、STEPLIB連結を調整します。

リスト crmlkoffコマンド用サンプルJCL

//***************************************************************
//* THIS JOB IS USED FOR THE STAND-ALONE LINK COMMAND           *
//* TO DEACTIVATE A REMOTE LINK. SEE USER GUIDE FOR MORE INFO   *
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.*
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY CRMLKOFF   *
//***************************************************************
//***************************************************************
//* LINKCMD INDICATES THE DISTRIBUTED SNACRM ADDRESS AND LINKNAME*
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE TUXEDO MAINFRAME   *
//* ADAPTER FOR SNA PROGRAM OBJECTS                              *
//* RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS                  *
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES  *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS  *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS             *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT     *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION               *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                    *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                 *
//***************************************************************
// SET LINKCMD='-n<host name>:<port> <linkname>'
// SET OBJLIB=
// SET RUNOPTS=
// SET DATA=
// SET ENVFILE=ENV
// SET SIZE=1M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRMLKOFF EXEC PGM=CRMLKOFF,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&LINKCMD'
//STEPLIB   DD DSN=&OBJLIB,DISP=SHR
//*         DD DSN=&CEE..SCEERUN,DISP=SHR
//*         DD DSN=&CBC..SCLBDLL,DISP=SHR
//ENV       DD DSN=&DATA(&ENVFILE),DISP=SHR
//MSGFILE   DD SYSOUT=*
//SYSPRINT  DD SYSOUT=*
//

2.6 CRMログ・ファイルの確認

CRMLOGSコマンドまたはCRMLOGS JCLを使用して、CRMログ・ファイルの内容および状態を表示できます。

2.6.1 CRMLOGSコマンド

CRMLOGSコマンドを使用して2つのCRMログ・ファイルのコンテンツおよび状態を表示します。RSTRTLOGはリカバリ・プロセス中に使用されるトランザクション状態のログで、BLOBLOGログにはセッションおよびリンク情報が格納されます。ログ・ファイルを削除する場合は、関係するリンクごとにコールド・スタートが必要です。

2.6.1.1 コマンド行オプション

次の表で、CRMLOGSコマンドに有効なオプションについて説明します。

表2-6 CRMLOGSコマンド・オプション

キーワード デフォルト 必須/省略可能 説明
group なし 必須 SNAドメインのグループ名です。
crm name デフォルトのCRM 省略可能 CRMの名前。
2.6.1.2

dalvs5:8002およびGROUP2CRMログ・ファイルの内容および状態を表示するには、次のコマンドを使用します:

CRMLOGS GROUP2 dalvs5:8002
2.6.1.3 診断

CRMLOGSは正常に完了すると、戻りコード0で終了します。

2.6.1.4 CRMLOGSコマンド用のサンプルJCL

次の項では、CRMLOGSコマンドを実行する際に使用可能なSETコマンドの説明およびJCLの例を示します。

2.6.1.4.1 SET LNKCMD

CRMLOGSコマンド行パラメータを設定します。

2.6.1.4.2 SET OBJLIB

CRMLOGS実行可能ファイルがインストールされているPDSEライブラリの名前を指定します。

2.6.1.4.3 SET DATA1

CRMLOGS必須のパラメータ・ファイルFMBがインストールされていたPDSライブラリの名前を指定します。

2.6.1.4.4 SET DATA2

ENVFILEを含むデータセットを指定します。

2.6.1.4.5 SET ENVFILE

crmlkoffの環境変数を含むPDSメンバーの名前を指定します。サンプル・メンバーのENVは製品に同梱されています。

2.6.1.4.6 SET SIZE

CRMLOGSタスクの実行用の領域サイズを定義します。

2.6.1.4.7 SET ENV

ENVFILE DD名を指定します。

2.6.1.4.8 SET CEE

LEランタイム・ライブラリ用の高度な修飾子を指定します。CEEはIBM Language Environmentデータ・セットの接頭辞に設定する必要があります。Language EnvironmentはCRMLOGSの実行に必要です。

2.6.1.4.9 SET CBC

C/C++ランタイム・ライブラリ用の高度な修飾子を指定します。CBCはIBM C++データ・セットの接頭辞に設定する必要があります。

ノート:

これらのライブラリがシステムのリンク・ライブラリの連結にない場合は、SET CBC行を非コメント化し、STEPLIB連結を調整します。

リスト CRMLOGSコマンド用サンプルJCL

//***************************************************************
//* THIS JOB IS USED TO CHECK THE RECOVERY LOGS FOR                      *
//* OUTSTANDING TRANSACTION DATA. SEE USER GUIDE FOR MORE INFO           *
//*                                                                      *
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.         *
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY CRMLOGS             *
//***************************************************************
//***************************************************************
//* SNACMD IS USED TO SET THE DESIRED SNACRM GROUP NAME                  *
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE TMA SNA PROGRAM            *
//* OBJECTS RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS (OPTIONAL)       *
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES          *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS          *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS                     *
//* ENV SETS THE ENVIRONMENT VARIABLES DD NAME                           *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT             *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION                       *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                            *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                         *
//***************************************************************
// SET LOGSCMD=<group>
// SET OBJLIB=
// SET DATA=
// SET ENVFILE=ENV
// SET RUNOPTS=
// SET SIZE=10M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRMLOGS   EXEC PGM=CRMLOGS,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&LOGSCMD'
//STEPLIB   DD DSN=&OBJLIB,DISP=SHR
//*         DD DSN=&CEE..SCEERUN,DISP=SHR
//*         DD DSN=&CBC..SCLBDLL,DISP=SHR
//MSGFILE   DD SYSOUT=*
//SYSPRINT  DD SYSOUT=*
//ENV       DD DSN=&DATA(&ENVFILE),DISP=SHR
//

2.7 CRMの停止

z/OS CRMは、Gatewayが異常終了またはtmshutdownコマンドで終了されても起動し続けます。

CRMは次の方法で停止できます。
  • UNIXの場合は、コマンド行でcrmdownコマンドを入力します。
  • z/OS MVSシステムの場合は、明示的に記述されているJCLを使用してCRMDOWNジョブを実行します。

2.7.1 crmdownコマンド

crmdownコマンドは、コマンド行で指定されているCRMを停止します。

crmdownは、CRMサーバーを実行しているマシンと同じTCP/IPネットワーク内の任意のマシンから使用できます。スクリプト内で使用した場合、コマンドがターゲットCRMに送信されると0を戻します。コマンドがターゲットCRMに送信されなかった場合は1を戻します。

次に、crmdownコマンド行の例を示します。
crmdown -n <hostname:port> [-v -i -h -u <keyfile> -S <ssl_config_file> -N <type>:<min>:<max>]
2.7.1.1 コマンド行オプション
次の表で、crmdownコマンドに有効なオプションについて説明します。

表2-7 crmdownコマンド・オプション

キーワード デフォルト 必須/省略可能 説明
-n<hostname:port> なし 必須 CRMサーバーを実行しているマシンおよびポートを指定します。
-v Off 省略可能 詳細を指定します。スクリプト内で容易に使用できるように、通常、このコマンドではメッセージは生成されません。
-i Off 省略可能 エラーを無視します。複数のリンクを指定した場合、CRMコマンドの発行時にエラーが発生すると、crmlkonはリンクの処理を停止し、戻ります。エラーはリンクごとに無視でき、続けて次の指定リンクを処理できます。
-h なし 省略可能 このコマンドのヘルプを表示します。
-u<keyfile> なし 省略可能 CRMとともに使用される認証名が含まれているキー・ファイルを指定します。
-S <file> なし 省略可能 SSL構成ファイルを指定します。その構文は、CRMの-Sコマンド行引数と同じです。
-N <type>:<min>:<max> なし 省略可能 暗号化設定のタイプと範囲を設定します。その構文は、CRMの-nコマンド行引数と同じです。
2.7.1.2

ポート5000のmach1で動作しているCRMを停止するには:

crmdown -n mach1:5000
2.7.1.3 診断

crmdown はコマンドの構文のみをチェックします。コマンドがCRMに送信されなかった場合は、crmdownは、冗長モードのときはエラー・メッセージをプリントし、エラー・コード1で終了します。正常に完了した場合は、crmdownはコード0で終了します。

2.7.1.4 CRMDOWNコマンド用のサンプルJCL

この項では、crmdownコマンドを実行する際に使用可能なSETコマンドの説明およびJCLの例を示します。

SET STOPCMD
crmdownコマンド行のパラメータを設定します。
SET OBJLIB
crmdown実行可能ファイルがインストールされているPDSEライブラリの名前を指定します。
SET DATA
ENVFILEを含むデータセットを指定します。
SET ENVFILE
crmdownの環境変数を含むPDSメンバーの名前を指定します。サンプル・メンバーのENVは製品に同梱されています。
SET SIZE
crmdownタスクの実行用の領域サイズを定義します。
SET ENV
ENVFILE DD名を指定します。
SET CEE
LEランタイム・ライブラリ用の高度な修飾子を指定します。CEEはIBM Language Environmentデータ・セットの接頭辞に設定する必要があります。Language Environmentはcrmdownの実行に必要です。
SET CBC
C/C++ランタイム・ライブラリ用の高度な修飾子を指定します。CBCはIBM C++データ・セットの接頭辞に設定する必要があります。

ノート:

これらのライブラリがシステムのリンク・ライブラリの連結にない場合は、SET CBC行を非コメント化し、STEPLIB連結を調整します。

リスト crmdownコマンド用サンプルJCL

//***************************************************************
//* THIS JOB IS USED FOR THE STAND-ALONE COMMAND USED            *
//* TO SHUTDOWN THE SNACRM PROCESS. SEE USER GUIDE FOR MORE INFO *
//*                                                              *
//* Copyright (c)2023 ORACLE Systems, Inc., all rights reserved.    *
//***************************************************************
//* YOU MUST SET THE ENVIRONMENT VARIABLES NEEDED BY CRMDOWN     *
//***************************************************************
//***************************************************************
//* STOPCMD INDICATES THE COMMAND LINE FOR CRMDOWN               *
//* OBJLIB IS THE LOAD LIBRARY CONTAINING THE PROGRAM EXECUTABLES*
//* RUNOPTS SETS ANY DESIRED LE RUNTIME OPTIONS (OPTIONAL)       *
//* DATA IS THE DATASET THAT CONTAINS THE ENVIRONMENT VARIABLES  *
//* ENVFILE NAMES THE MEMBER THAT CONTAINS THE ENVIRONMENT VARS  *
//* SIZE SETS THE REGION SIZE FOR THE SNACRM PROCESS             *
//*                                                              *
//* TAILOR YOUR JCL FOR THE BELOW IF THESE LIBRARIES ARE NOT     *
//* IN YOUR SYSTEM LINK LOAD LIBRARY CONCATENATION               *
//* CEE IS THE HLQ FOR THE LE RUNTIME LIBRARY                    *
//* CBC IS THE HLQ FOR THE C/C++ RUNTIME LIBRARY                 *
//***************************************************************
// SET STOPCMD='-n<host name>:<port>'
// SET OBJLIB=
// SET RUNOPTS=
// SET DATA=
// SET ENVFILE=ENV
// SET SIZE=1M
// SET ENV='ENVAR("_CEE_ENVFILE=DD:ENV")'
//* SET CEE=CEE,CBC=CBC
//CRMDOWN EXEC PGM=CRMDOWN,REGION=&SIZE,
// PARM='POSIX(ON) &ENV &RUNOPTS/&STOPCMD'
//STEPLIB     DD DSN=&OBJLIB,DISP=SHR
//*           DD DSN=&CEE..SCEERUN,DISP=SHR
//*           DD DSN=&CBC..SCLBDLL,DISP=SHR
//ENV         DD DSN=&DATA(&ENVFILE),DISP=SHR
//MSGFILE     DD SYSOUT=*
//SYSPRINT    DD SYSOUT=*
//