バージョン 4.2.5
 —  Natural リモートプロシージャコール(RPC)  —

Natural RPC サーバーの起動

このセクションでは、さまざまなプラットフォームで Natural RPC サーバーを起動する方法について説明します。

次のトピックについて説明します。


Natural RPC サーバーを起動する前の予備知識

任意の種類の Natural セッションを Natural RPC サーバーとして使用できますが、通常、Natural サーバーは非同期タスクまたはバックグラウンドタスクとして開始された Natural セッションとなります。

メインフレーム:

サーバーを起動するには、次のオプションがあります。

Windows、UNIX、または OpenVMS:

サーバーを起動するには、次のオプションがあります。

Natural サーバーの起動方法は環境によって異なります。次の該当する説明を参照してください。

Top of page

メインフレームオンライン環境での Natural RPC サーバーの起動(すべての TP モニタ)

メインフレームオンライン環境で Natural サーバーを起動するには、TP モニタ環境で次のコマンドを入力します。

<natural>
  RPC=(SERVER=ON, SRVNAME=servername, SRVNODE=nodename,
              RPCSIZE=n, MAXBUFF=n)

<natural> は、Natural を起動するときの名前です(トランザクションコード、トランザクション ID、環境従属ニュークリアス名)。

Top of page

メインフレームオンライン環境での Natural RPC サーバーの起動(Com-plete および CICS のみ)

Com-plete 環境または CICS 環境では、Natural RPC サーバーを起動するための次のオプションがあります。

STARTSRV による非同期モードでの Natural RPC サーバーの起動

STARTSRV は、非同期 Natural セッションを起動する RPCSSRV のためのサンプルフロントエンドです。

デフォルトで、非同期 Natural は、現在のセッションと同じライブラリの同じ Natural 名で起動されます。

Natural Security(NSC)を使用している場合、現在の Natural セッションのユーザー ID も伝播されます。 入力を要件に適合させることができます。

一部の Natural プロファイルパラメータは、RPCSSRV によって暗黙的に追加されます。 このことは特に、プロファイルパラメータ RPC またはパラメータマクロ NTRPC のキーワードサブパラメータ RPCSIZE に適用されます。 RPCSIZE のデフォルトは MAXBUFF+4 です。MAXBUFF は、マップフィールド Receiving buffer に入力された値です。 マップフィールド Session parameterRPC=(RPCSIZE=n) を入力し、RPCSIZE のデフォルト値を上書きできます。

Natural セッションの起動時に Natural プログラムを実行する場合は、マップフィールド User Stack を使用できます。 User Stack の内容は Natural STACK に置かれ、Natural サーバーがアクティブになる前に実行されます。

関係する Natural プロファイルパラメータを表示するには、*SHOW*Transaction ID フィールドに入力します。 STARTSRV によって、非同期 Natural セッションを開始するために RPCSSRV によって使用されるダイナミックプロファイルパラメータがすべて表示されます。

後述の「CICS に関する注意事項」も参照してください。

TP モニタの起動時の非同期モードでの Natural RPC サーバーセッションの開始

TP モニタの起動時に非同期モードで Natural RPC サーバーセッションを開始するには、次の手順に従います。

どちらの場合にも、Natural セッションは TP モニタによって割り当てられたユーザー ID で開始される点に注意してください。

どちらの場合にも、このユーザー ID は Natural システム変数 *INIT-USER および *USER に割り当てられます。 したがって、Natural セッションが Natural Security 環境で実行されている場合、Natural LOGON コマンドを Natural STACK に置く必要がある場合があります。

CICS に関する注意事項:

非同期 Natural RPC サーバーを起動する場合は、Natural プロファイルパラメータ TTYPE および SENDER を次のように設定することをお勧めします。

TTYPE=ASYL,SENDER=CSSL

これにより、プライマリ出力先への各出力は、3270 モードではなく行モードで書き込まれます。 CSSL の代わりに、他の任意の CICS 出力先を使用できます。

TTYPE=ASYL を使用する場合、NATBTCH が Natural ニュークリアスにリンクされている必要があります。

Top of page

メインフレーム環境でのバッチサーバーの起動

バッチサーバーは、標準 Natural バッチセッションです。「Natural RPC 環境の設定」の「RPC サーバー固有の Natural パラメータの設定」で説明されている RPC パラメータで起動されます。

以下では次のトピックについて説明します。

注意:
トレース機能を使用するサンプル JCL については、「Natural RPC 環境の運用」の「サーバートレース機能の使用」を参照してください。

z/OS でのバッチサーバーの起動

z/OS のサンプル JCL

//NATRPC   JOB  CLASS=K,MSGCLASS=X 
//         EXEC PGM=NATOS,REGION=8M
//STEPLIB  DD   DISP=SHR,DSN=SAG.NAT.LOAD
//         DD   DISP=SHR,DSN=SAG.EXX.LOAD
//         DD   DISP=SHR,DSN=SAG.ADA.LOAD         <== Note 1
//         DD   DISP=SHR,DSN=DB2_load_library     <== Note 2
//         DD   DISP=SHR,DSN=SAG.SSX.LOAD         <== Note 3
//CMPRMIN  DD   * 
IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename)
RPC=(RPCSIZE=m,MAXBUFF=n),
STACK=(LOGON serverlibrary,userID,password)
/*
//CEEOPTS  DD *                                   <== Note 4
POSIX(ON)
/*
//SYSUDUMP DD SYSOUT=X 
//CMPRINT  DD SYSOUT=X 
/*

注意:

  1. Adabas リンクルーチン ADAUSER または Natural プロファイルパラメータ ADANAME が使用されている場合のみ適用されます。
  2. DB2 ユーザーのみに適用されます。
  3. Integrated Authentication Framework(IAF)が使用されている場合のみ適用されます。
  4. SSL が使用されている場合のみ適用されます。

開始タスクのサンプル JCL

開始タスクのサンプル JCL は、Natural for Mainframes の『インストール』ドキュメントの「z/OS 環境での Natural のインストール」セクションの「Natural RPC サーバー用サンプル JCL の作成」で紹介されています。

レプリカでのバッチサーバーの実行

また、プロファイルパラメータ RPC またはパラメータマクロ NTRPC のキーワードサブパラメータ NTASKS を 1 より大きい値に設定することによって、レプリカでバッチサーバーを実行することもできます。

レプリカは、追加のサーバータスクとして、Natural メインタスクにアタッチされます。 これにより、同じリージョンで複数の同一のサーバーを起動できるようになります。

z/VSE でのバッチサーバーの起動

z/VSE のサンプル JCL

// LIBDEF PHASE,SEARCH=(SAGLIB.NATvrs,SAGLIB.EXXvrs,SAGLIB.ADAvrs),TEMP
// ASSGN SYS000,READER
// ASSGN SYSLST,FEE
// EXEC NATVSE,SIZE=AUTO,PARM='SYSRDR'
IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename)
RPC=(RPCSIZE=m,MAXBUFF=n),
STACK=(LOGON serverlibrary,userID,password)
/*

レプリカでのバッチサーバーの実行

また、プロファイルパラメータ RPC またはパラメータマクロ NTRPC のキーワードサブパラメータ NTASKS を 1 より大きい値に設定することによって、レプリカでバッチサーバーを実行することもできます。

レプリカは、追加のサーバータスクとして、Natural メインタスクにアタッチされます。 これにより、同じリージョンで複数の同一のサーバーを起動できるようになります。

BS2000/OSD でのバッチサーバーの起動

BS2000/OSD のサンプル JCL

/.NATRPC      LOGON
/             SYSFILE   SYSOUT=output-file
/             SYSFILE   SYSDTA=(SYSCMD)
/             SYSFILE   SYSIPT=(SYSCMD)
/             STEP
/             SETSW      ON=2
/             EXEC NATBS2
IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename)
RPC=(RPCSIZE=m,MAXBUFF=n),
STACK=(LOGON serverlibrary,userID,password)
/             EOF

Top of page

Windows 環境での Natural RPC サーバーの起動

Windows 環境で Natural RPC サーバーを起動するには、次の手順に従います。

  1. Natural 用ショートカットを作成します。

  2. ショートカットのプロパティを入力します。

  3. RPC サーバーパラメータ設定で Natural パラメータファイルを作成します(「代替パラメータファイルによる Natural の呼び出し」を参照)。

  4. [Target]テキストボックスで、Natural パスを編集して追加します。

parm=serverparm batch

serverparm は、パラメータファイルの名前です。

または

server=on,srvname=servername,srvnode=nodename,maxbuff=n batch

Top of page

UNIX 環境での Natural RPC サーバーの起動

UNIX 環境で Natural RPC サーバーを起動するには、次のコマンドを入力します。

natural parm=serverparm >/dev/null </dev/null &

serverparm は、パラメータファイルの名前です。

または

natural server=on,srvname=servername,srvnode=nodename,maxbuff=n >/dev/null </dev/null &

Top of page

OpenVMS 環境での Natural RPC サーバーの起動

OpenVMS 環境で Natural RPC サーバーを起動するには、DCL コマンドプロシージャ myserver.com に、次のコマンドを入力します。

$ DEFINE NATOUTPUT NLA0:
$ NAT parm=serverparm

次に、myserver.com をバッチキューに送信します。

$ SUBMIT myserver.com

Top of page

レプリカ付きメインフレーム Natural RPC サーバーの考慮事項

このセクションは、z/OS および z/VSE 環境のメインフレーム Natural サーバーに適用されます。

1 より大きい NTASKS が指定された Natural RPC バッチサーバー

メインタスクおよび全レプリカは、同じ z/OS リージョンまたは z/VSE パーティション内で実行されます。

  1. Adabas バッチリンクルーチン ADALNK のリエントラントバージョン ADALNKR を使用します。

    ADAUSER を使用する場合、ADAUSER は非リエントラントであるため、ADAUSER をフロントエンドとリンクしないようにしてください(項目 5 を参照)。 代わりに、Natural プロファイルパラメータ ADANAME を使用し、ADANAME=ADAUSER を設定します。 これにより、Natural はランタイム時に ADAUSER をダイナミックにロードします。

    z/VSE に関する注:ADAUSER を使用する場合、ADALNKR の名前を ADALNK に変更する必要があります。

  2. NATPARM モジュール内:

  3. ダイナミック Natural プロファイルパラメータ使用時:

    ダイナミック Natural プロファイルパラメータを Natural に渡すために、ダイナミックパラメータデータセット CMPRMIN を使用します。 PARM カードやプライマリコマンド入力データセット CMSYNIN使わないでください

  4. ローカルバッファプール使用時(z/OS のみ):

    共有ローカルバッファプールを指定しない限り、各サブタスクはそれぞれのローカルバッファプールを割り当てます。 Natural の『オペレーション』ドキュメントの「Natural z/OS 生成パラメータ」セクションのパラメータ LBPNAME に関する記載を参照してください。

  5. Natural フロントエンドリンクジョブ内(z/OS のみ):

    リンケージエディタの RENT オプションを使用してフロントエンドリエントラントをリンクします。

    フロントエンドが RENT オプションでリンクされなかった場合、メインタスクは EntireX Broker との通信だけが開始されます。 すべてのサブタスクは、メインタスクが終了するまで、z/OS で WAIT ステータスに設定されます。 RPC サーバーを後で終了すると、アドレススペースはハングし、キャンセルする必要があります。

  6. Natural ニュークリアスに追加リンクされている他のモジュールは、リエントラントであることを明確にしてください。 ダイナミックにロードされる任意のプログラムもリエントラントである必要があります。

    z/OS 関する注:モジュールをリエントラントにできない場合、モジュールを再利用不可としてリンクしてください(リンクオプション RENT または REUS を指定しないでください)。 これは、サブタスクが自分のコピーを取得するようにするためです。

レプリカでのバッチサーバーの実行

サンプル JCL については、「サーバートレース機能の使用」を参照してください。

Top of page

RPC サーバーフロントエンドを使用した Natural RPC サーバーの起動(z/OS バッチモードのみ)

z/OS バッチモードでは、Natural RPC サーバーが RPC サーバーフロントエンドを使用して起動される場合があります。 この方法は、偽装で必要であり、それ以外の場合はオプションです。

偽装なしで RPC サーバーフロントエンドを使用する場合、プロファイルパラメータ RPC またはパラメータマクロ NTRPC のキーワードサブパラメータ NTASKS を 1 より大きい値に設定することをお勧めします。 それ以外の場合は、メリットがありません。 「レプリカ付きメインフレーム Natural RPC サーバーの考慮事項」は、RPC サーバーフロントエンドを使用する場合にも適用されます。

RPC サーバーフロントエンドでは、Natural サーバー機能が使用されます。Natural の『オペレーション』ドキュメントの「z/OS 環境のサーバーとしての Natural」を参照してください。 その機能は、次のとおりです。

起動パラメータ:

必要な起動パラメータは、JCL 内の EXEC ステートメントの PARM= パラメータで渡されます。 これらのパラメータは次のとおりです。

これらのパラメータはコンマで区切る必要があります。先頭または末尾に空白を入力しないでください。

PARM='Natural-z/OS-batch-nucleus,size-of-thread,number-of-threads[,UCTRAN]'

次の「サンプル JCL」も参照してください。

実行上の注意:

偽装を使用する場合のみ:
偽装機能を使用する場合、RPC サーバーフロントエンドは、許可プログラム機能(APF)ライブラリから実行する必要があります。 RPC サーバーフロントエンドは、APF 認可 LINKLIST ライブラリから実行することをお勧めします。 このことによって、STEPLIB 連結 APF 認可全体を指定する必要がなくなります。

Natural Security の場合のみ:
Natural RPC サーバーフロントエンドをプロファイルパラメータ AUTO=OFF で開始する場合、Natural スタックで、ライブラリ ID、ユーザー ID、およびパスワードを指定して Natural LOGON コマンドを実行する必要があります。つまり、STACK=(LOGON library-id;user-id;password) のように指定します。

サンプル JCL:

//NATRPC   JOB  CLASS=K,MSGCLASS=X 
//         EXEC PGM=RPC-FRONT,REGION=8M
//         PARM='Natural-z/OS-interface-module,1000,5'
//STEPLIB  DD   DISP=SHR,DSN=SAG.NAT.LOAD
//         DD   DISP=SHR,DSN=SAG.EXX.LOAD
//         DD   DISP=SHR,DSN=SAG.ADA.LOAD         <== Note 1
//         DD   DISP=SHR,DSN=DB2_load_library     <== Note 2
//         DD   DISP=SHR,DSN=SAG.SSX.LOAD         <== Note 3
//CMPRMIN  DD   * 
IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
PRINT=((10),AM=STD)
RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename,NTASKS=3)
RPC=(RPCSIZE=m,MAXBUFF=n,TRACE=2),
RCA=BROKER,RCALIAS=(BROKER,BKIMBTSO)
STACK=(LOGON serverlibrary,userID,password)
/*
//CEEOPTS  DD *                                   <== Note 4
POSIX(ON)
*
//SYSUDUMP DD SYSOUT=X 
//CMPRT10  DD SYSOUT=X 
//CMPRT101 DD SYSOUT=X 
//CMPRT102 DD SYSOUT=X 
//CMPRT199 DD SYSOUT=X 
//CMPRINT  DD SYSOUT=X 
//CMPRINT1 DD SYSOUT=X 
//CMPRINT2 DD SYSOUT=X 
//CMPRIN99 DD SYSOUT=X 
/*

注意:

  1. Adabas リンクルーチン ADAUSER または Natural プロファイルパラメータ ADANAME が使用されている場合のみ適用されます。

  2. DB2 ユーザーのみに適用されます。

  3. Integrated Authentication Framework(IAF)が使用されている場合のみ適用されます。

  4. SSL が使用されている場合のみ適用されます。

Top of page

RPC サーバーフロントエンドを使用した Natural RPC サーバーの起動(CICS のみ)

CICS では、Natural RPC サーバーが RPC サーバーフロントエンドを使用して起動される場合があります。 この方法は、偽装が使用される場合に必要であり、それ以外の場合はオプションです。

偽装なしで RPC サーバーフロントエンドを使用する場合、プロファイルパラメータ RPC またはパラメータマクロ NTRPC のキーワードサブパラメータ NTASKS を 1 より大きい値に設定することをお勧めします。 それ以外の場合は、メリットがありません。

RPC サーバーフロントエンドでは、Natural サーバー機能が使用されます。 その機能は、次のとおりです。

起動パラメータ:

必要な起動パラメータは、トランザクション ID とともに渡されます。 これらのパラメータは次のとおりです。

端末での起動例:

<natural> <ncistart>[,UCTRAN]
RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename,RPCSIZE=n, MAXBUFF=n)
RCA=BROKER,RCALIAS=(BROKER,CICSETB)

<natural> は、トランザクション ID です。これを使用して Natural RPC サーバーフロントエンドを起動します。 <ncistart> は、Natural CICS インターフェイスニュークリアスの名前です。

実行上の注意:

偽装を使用する場合のみ:
偽装機能を使用する場合、RPC サーバーフロントエンドによってワーカータスクが起動されます。 CICS インストールの CICS コンフィグレーションオプション MAXTASKS に十分大きな値が設定されていることを確認します。

Natural Security の場合のみ:
Natural RPC サーバーフロントエンドをプロファイルパラメータ AUTO=OFF で開始する場合、Natural スタックで、ライブラリ ID、ユーザー ID、およびパスワードを指定して Natural LOGON コマンドを実行する必要があります。つまり、STACK=(LOGON library-id;user-id;password) のように指定します。

Top of page