SMC は、割り振りおよびメッセージ処理のために MVS とのすべてのインタフェースを管理するため、テープ処理が発生するすべての MVS ホストでタスクとして起動する必要があります。
SMC は、HSC および MVS/CSC を呼び出して、ポリシーおよびドライブの情報を要求します。したがって、HSC または MVS/CSC を SMC と同じホスト上でアクティブにしたり、リモートホスト上で SMC HTTP サーバーも有効になっている場合は、ローカル SMC がそのリモートホスト上で動作している HSC と対話したりすることができます。
HSC および SMC は次の順序で起動することをお勧めします。
HSC を起動します。
HSC の初期化が開始したらただちに SMC を起動します。
これは、次の理由により推奨されます。
TapePlex および関連する HSC/VTCS サーバーは、SMCCMDS
データセットで定義されます。初期化時に、SMC は SMCCMDS
データセットで定義された順序で個々の HSC/VTCS サーバーと接続することで、TapePlex ごとに 1 つのサーバーとの通信バインドの確立を試みます。SMC は、この処理中に TapePlex ごとに検出された最初のアクティブなサーバーにバインドします。アクティブなサーバーのない TapePlex ごとに、SMC はその TapePlex 用に定義された各サーバーの永続メッセージ SMC0260
を表示します。SMC は、サーバーがアクティブになるとこれらのメッセージを削除し、自動的にバインドします。SMC の起動時に TapePlex 通信バインドの遅延を回避するには:
SMC SERVER
文で参照されているホストが IPLed であり、これらのホスト上での通信用に TCP/IP が SMC の起動前に完全に初期化されていることを確認します。
SMC SERVER
文によって参照されるホストの場合は、SMCPARMS
または SMCCMDS
で、これらのホストに対する SMC 起動パラメータの一部として HTTP START
コマンドを発行します。
各 TapePlex について、その TapePlex の SMC SERVER
文で参照されている少なくとも 1 つのホストで、HSC/VTCS および SMC を起動します。
構成に VLE システムを使用する VTCS が含まれる場合、VTCS は SMC 通信サービスを使用して VLE と通信します。HSC 初期化の開始直後に SMC を起動する場合、VTCS が VLE と通信しようとするときにこれらのサービスが VTCS で利用できることを保証できます。
これらの手順を実装することで、SMC 起動処理で可能なかぎり迅速に各 TapePlex をバインドできます。
SMC を起動するには、SMC START
手順を作成して実行する必要があります。この章では、これらのタスクについて説明します。
注:
SMC のインストールおよびインストール後処理タスクについては、『ELS のインストール』を参照してください。
SMC HTTP サーバーコンポーネントは、SMC HTTP
コマンドを使用して有効にします。このコマンドの詳細については、『ELS コマンド、制御文、およびユーティリティーリファレンス』を参照してください。
SMC START
手順では、SMC 起動パラメータ設定を指定します。この手順は、ホストシステムの手順ライブラリで作成します。
MVS START
コマンドは、このカタログ済みの手順を実行することにより、指定されたパラメータ設定で SMC をアクティブにします。
次の例は、EXEC
、STEPLIB
、SMCPARMS
、SMCCMDS
、SMCLOG
、および SYSTCPD
DD 文を含む、サンプルの SMC START
手順を示しています。
//yourprocname PROC PRM=’WARM’ //stepname EXEC PGM=SMCBINT,REGION=0M,TIME=1440, // PARM=’&PRM’ //* //STEPLIB DD DISP=SHR,DSN=your.els.exitlib // DD DISP=SHR,DSN=your.els.sea700.sealink //* //* The following dataset is optional //* //SMCPARMS DD DISP=SHR,DSN=parmlib_name(parm_member_name) //* //* The following dataset is optional but recommended //* //SMCCMDS DD DISP=SHR,DSN=cmdlib_name(cmd_member_name) //* //* The following datasets are optional //* //SMCLOG DD DSN=log.file.name,UNIT=unit,RECFM=FB, // SPACE=(CYL,(primary-qty,secondary-qty)), // DISP=(NEW,CATLG,CATLG) //* //SYSTCPD DD DSN=ddd.eee.fff(anyname) /* Optional TCPIP parms) */
yourprocname
の最初の 4 文字は、SMC サブシステム名を指定します (SSYS
起動パラメータが指定されていない場合)。推奨される値は SMC
x
です (x
はジョブ名で有効な文字です)。
EXEC
文は、一般的な SMC 起動パラメータ設定を定義します。
PARM=
SMC 初期化ルーチンに渡されるパラメータリストを定義します。
実行パラメータの区切りにはカンマを使用する必要があります。パラメータを空白で区切ると、構文エラーが発生します。
WARM
SMC メイン制御ブロックを再構築しないことを指定します。これは、通常動作でのデフォルト設定です。
COLD
すべての SMC 制御ブロックの再構築を指定します。このパラメータは、WARM
と相互に排他的です。
注意:
このパラメータは、SMC が異常終了したり、リスタートできない場合を除き、使用しないでください。RESET
SMC の MVS Subsystem Communications Vector Table (SSCVT: サブシステム通信ベクターテーブル) にあるアクティブなサブシステムステータスフラグのリセットを指定します。SMC の異常終了時、このパラメータを用いて修正できる場合があります。これは、WARM
または COLD
とともに指定できます。
SMC サブシステムが正常に動作している状態で、このパラメータを使用すると、予期しない結果が発生する場合があります。
J3NOSET
JES3 システムが JES3 テープセットアップを使用していないことを示します。このパラメータが指定されている場合、割り振りに対する影響は、JES2 の項に解説されているとおりの動作をします。
SSYS
SMC START
手順の先頭 4 文字とは異なるサブシステム ID を指定します。初期化中、このシステム ID が検索されます。
subsystem
は、1 - 4 文字の長さである必要があります。
MSTR
SMC が、JES ではなく MSTR サブシステムの下で起動するよう指定します。
このパラメータを指定する場合は、次のアクションのいずれかも実行する必要があります。
MVS Start
コマンドで SUB=MSTR
を使用して SMC サブシステムを起動します。
キーワード形式を用いて、SMC サブシステムを IEFSSNxx
サブシステムテーブルに追加すること。
注:
JES3 の SETUP 環境では、このパラメータはサポートされません。
マスター MVS サブシステムの下で SMC を実行する場合は、SMC START
手順を含む PROCLIB
がマスターアドレス空間の PROCLIB
連結内に存在する必要があります。この連結は SYS1.PARMLIB(MSTJCLxx)
の DD IEFPDSI
の下で定義されます。
MAXRC
指定されたコマンドの戻りコードが最大許容値を超えたときに SMC サブシステムの初期化を終了するかどうかを指定します。MAXRC
が指定されていない場合は、起動コマンドが失敗したかどうかに関係なく、SMC サブシステムは常にその初期化を完了しようとします。これはデフォルトの動作です。
nn は戻りコードの最大許容値を指定します。SMCPARMS
または SMCCMDS
データセットから実行された SMC コマンドがこの値を超えた場合は、SMC0236
および SMC0237
メッセージが生成され、SMC は終了します。有効な値は、0、4、8、および 12 です。
PLEXRC
自動的に発行される RESYNC
コマンドから返された TapePlexes のステータスに基づいて SMC サブシステムの初期化を終了するかどうかを指定します。
PLEXRC
が指定されていない場合は、RESYNC
コマンドの結果に関係なく、SMC サブシステムはその初期化を完了します。これはデフォルトの動作です。
n は RESYNC
コマンドからの戻りコードの最大許容値を指定します。有効な値は、0 および 4 です。
SMC RESYNC
コマンドは、SMC がどの定義済み TapePlex とも通信できない場合は 8 の戻りコードを、SMC が (すべてではなく) 1 つまたは複数の定義済み TapePlex と通信できる場合は 4 の戻りコードを設定します。
SMC の起動時に処理されるようにしたい SMC コマンド設定を含むデータセットを識別するには、SMC START
手順で SMCCMDS
および SMCPARMS
DD 文を指定します。
少なくとも、TapePlex を定義するには、SMCCMDS
または SMCPARMS
データセットのどちらかに SMC TAPEPlex
コマンドを含める必要があります。SMC の起動時に TAPEPlex
コマンドが見つからない場合、SMC サブシステムは終了し、エラーメッセージが生成されます。
SMC が最初に HSC ホストと通信する場合、このホストは SMCCMDS
または SMCPARMS
データセットで指定された TapePlex 名を採用し、それを CDS 内に格納します。CDS は、あとで SMC Set TapePlex
ユーティリティーコマンドによって変更されないかぎり、この名前を保持します。
起動後に再処理できる SMC コマンドのための設定を指定するには、SMCCMDS
データセットを使用することをお勧めします。
コンソールから SMC READ
コマンドを発行して、いつでもこのデータセットを再処理できます。
起動時にしか処理できない SMC コマンドのための設定を指定するには、SMCPARMS
データセットを使用することをお勧めします。これらのコマンドは CMDDef
と USERMsg
です。
このデータセットに追加のコマンドを含めることができますが、これらのコマンドを SMC READ
コマンドで再処理することはできません。
注:
HSC Set TAPEPlex
コマンドおよび SMC READ
コマンドの詳細については、『ELS コマンド、制御文、およびユーティリティーリファレンス』を参照してください。
POLicy
コマンドを使用するには、POLicy
コマンド (これは、TAPEREQ
制御文の前に処理する必要があります) の前に TAPEPlex
および SERVer
コマンドを処理する必要があります。
SMC がタイムアウトによって終了してしまわないよう、TIME=1440
を設定しておく必要があります。
SMC 通信やコマンドロギングに使用される SMCLOG
データセットを定義するには、SMC START
手順で SMCLOG
DD 文を指定します。
この文は、SMC LOG START
コマンドが入力された場合にのみ必要であり、SMC でログ記録される特定のタイプのイベントを選択するために SMC LOG TYPE
コマンドが入力された場合にのみ書き込まれます。
SMC ロギング機能は、簡単には再現できない特定のタイプのエラーの診断情報を収集することを目的にしています。診断のための収集方法として、収集される情報は少なくなりますが、消費されるリソースも SMC TRACE
コマンドに比べてはるかに少なくなります。そのため、これは長期間にわたってすべての通信タスクの診断情報を収集することに適しており、その後、短期間に単一のジョブまたはステップが指定されることを目的とした SMC TRACE
機能を行います。SMC LOG
コマンドは、StorageTek サポート担当者からの指示があった場合のみ実行してください。選択された SMC LOG TYPE の数とタイプによっては、SMC ロギング機能の使用により、SMC 通信やサブシステムのパフォーマンスが若干低下します。
このセクションでは、SMC START
手順を実行して SMC ソフトウェアを起動する方法について説明します。
SMC START
手順を実行して SMC ソフトウェアを起動するには、MVS START
コマンドを発行します。このコマンドは、SMC サブシステムの初期化ルーチンを呼び出します。このルーチンは、どのパラメータが有効かを判定し、必要なすべてのクリーンアップを実行して、正常な SMC 処理を開始します。
SMC Start 手順の EXEC 文の PARM=
に関連付けられたパラメータは、MVS START
コマンドで PARM=
を使用して指定することもできます。MVS START
コマンドでの PARM=
の指定によって、SMC START
手順での PARM=
の指定がオーバーライドされます。パラメータの説明については、パラメータを参照してください。
START または S
MVS START
コマンドを開始します
smc-proc-name
SMC START
手順メンバー名を示します。