インストールの検証

本章では、OpenFrame OSIが正常にインストールされたことを確認するためのOSI IVPについて説明します。

1. 紹介

IVP(Installation Verification Procedure)は、製品のインストール・プロセスにおいて、システムが正常に構築され、基本的な機能が正常に動作することを確認するために使用されるツールです。以前は、システムに問題が発生すると、管理者がすべての設定を直接確認する必要がありましたが、IVPを使用すると、より簡単に問題を解決することができます。

2. OSI IVP

OSI IVPはインストーラーによってインストールされます。関連するサンプル・ファイルは、OpenFrame/osi/oivpで確認できます。

以下は、OSI IVPの環境設定、アプリケーションの登録、検証についての説明です。

2.1. 環境設定

OIVPを運用するための領域(IMSA)の設定、ユーザー・サーバー、OSIデータセットのリソースが自動的に作成されます。すべての登録手順に必要なデフォルトのインストール・ファイルはインストーラーによって提供されており、OSI IVPを正常に動作させるには、インストール・ファイルを変更せずにそのまま使用することをお勧めします。

以下は、システム・サーバーとユーザー・サーバーの設定、関連するリソースを登録する手順です。

  1. システム・サーバーの設定

    システム・サーバーとサーバーが使用するサービスがTmax環境ファイルに登録されます。

  2. ユーザー・サーバーの設定

    ユーザー・サーバーとサーバーで使用するサービスがTmax環境ファイルに登録されます。

  3. リソース定義の登録

    インストーラーが含まれているosi_define.shスクリプトはデータセットを登録します。

    インストール・プロパティ・ファイルで自動的にインストールされた項目を確認し、必要に応じてスクリプトを手動で実行および検証できます。

    $OPENFRAME_HOME/scripts/osi_define.shコマンドは、製品のインストール後にIMSA領域を設定するために使用されます。idcamsツールによって関連するデータセットが作成されます。

    $ OPENFRAME_HOME/scripts/osi_define.sh

    以下は、シェルの実行内容です。

    idcams define -t CL -n OSI.IMSA.DEFLIB  -o KS -k 10,0 -l 100,32760 -s 1024,128,128 -v DEFVOL
    ${OPENFRAME_HOME}/bin/osisdgen osi_sdlib_COBOL.dat IMSA

    システム・サーバーとユーザー・サーバーの設定およびデータセットの作成については、『OpenFrame OSI管理者ガイド』を参照してください。

2.2. アプリケーションの登録

環境設定が完了したら、マップとCOBOLソースコードをコンパイルしてから登録します。

以下は、マップとCOBOLソースコードをコンパイルして登録する方法です。インストーラーによって自動的にインストールされます。

  1. マップのコンパイル

    OSI IVPで使用するマップ・ファイルをコピーおよびコンパイルします。

    $OPENFRAME_HOME/scripts/osi_ivp.shスクリプトには、OSI IVPマップを作成するコマンドが含まれています。

    $ OPENFRAME_HOME/scripts/osi_ivp.sh

    以下は、シェルのマップ・コンパイルの実行内容です。

    #mapgen
    cd ${OPENFRAME_HOME}/osi/oivp/mfs/COBOL
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP001.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP002.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP003.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP004.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP005.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP006.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP014.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP015.TXT
    ${OPENFRAME_HOME}/bin/osimfsgen -m OSI.IMSA.MFSLIB OIVP024.TXT
  2. COBOLソースコードのコンパイル

    OSI IVPで使用するCOBOLソース・ファイルをコンパイルします。

    $OPENFRAME_HOME/osi/oivp/src/compile.shスクリプトを使用します。

    $OPENFRAME_HOME/osi/oivp/src/compile.sh

    以下は、シェルの実行内容です。(COBOLサンプル・ソース基準)

    ofcob --enable-cbltdli --force-trace -o ${base}.so ${base}.cob
  3. リソース情報の登録およびデータ構造のマッピング

    IVPリソース情報(osi_sdlib.dat)などを登録して、データ構造をマッピングします。

    $ OPENFRAME_HOME/scripts/osi_define.sh

    以下は、シェルのリソース情報の登録例です。

    #REGISTER SYSTEM DEFINITION
    cd ${OPENFRAME_HOME}/osi/resource/data
    ${OPENFRAME_HOME}/bin/vtamgen vtam.dat
    ${OPENFRAME_HOME}/bin/osisdgen osi_sdlib_COBOL.dat IMSA
  4. OSIシステムの起動

    以下のコマンドを実行して、OSIシステムを起動します。

    TMBOOT for node(NODE1) is starting:
            TMBOOT: TMM is starting: Thu Apr  8 19:12:08 2021
            TMBOOT: CLL is starting: Thu Apr  8 19:12:08 2021
            TMBOOT: CLH is starting: Thu Apr  8 19:12:08 2021
            TMBOOT: TLM(tlm) is starting: Thu Apr  8 19:12:08 2021
    [2021-04-08T19:12:08.892931] [osiboot(16341)          ] [M] [OSI7061M] System server(TPFMAGENT) booting ok
    [2021-04-08T19:12:08.896760] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrsasvr) booting ok
    [2021-04-08T19:12:08.899698] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrlhsvr) booting ok
    [2021-04-08T19:12:08.903173] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrdmsvr) booting ok
    [2021-04-08T19:12:08.906781] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrdsedt) booting ok
    [2021-04-08T19:12:08.910483] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrcmsvr) booting ok
    [2021-04-08T19:12:08.914132] [osiboot(16341)          ] [M] [OSI7061M] System server(ofruisvr) booting ok
    [2021-04-08T19:12:08.918033] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrsmlog) booting ok
    [2021-04-08T19:12:08.923688] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjmsvr) booting ok
    [2021-04-08T19:12:08.930825] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjschd) booting ok
    [2021-04-08T19:12:08.935196] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjinit) booting ok
    [2021-04-08T19:12:08.941099] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjhist) booting ok
    [2021-04-08T19:12:08.947371] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjspbk) booting ok
    [2021-04-08T19:12:08.958199] [osiboot(16341)          ] [M] [OSI7061M] System server(ofrpmsvr) booting ok
    [2021-04-08T19:12:08.969419] [osiboot(16341)          ] [M] [OSI7061M] System server(obmtsmgr) booting ok
    [2021-04-08T19:12:08.979715] [osiboot(16341)          ] [M] [OSI7061M] System server(obmjtimr) booting ok
    [2021-04-08T19:12:08.990644] [osiboot(16341)          ] [M] [OSI7061M] System server(tmsvr) booting ok
    [2021-04-08T19:12:08.994759] [osiboot(16341)          ] [M] [OSI7061M] System server(osiomsvr) booting ok
    [2021-04-08T19:12:08.994781] [osiboot(16341)          ] [M] [OSI7051M] Booting process complete.

    以下は、デフォルト領域(IMSA)を起動するコマンドです。

    $ tjesmgr r IMSACTL
    Input USERNAME  : ROOT
    >
    Command : [r IMSACTL]
    Node name :  A N Y
    (JOB00541) /home/oframe6/OpenFrame/volume_DEFVOL/SYS1.JCLLIB/IMSACTL is submitted as IMSACTL(JOB00541).
    
    $ imscmd IMSA /NRE
    IMS control region : [IMSA]
    Requested command  : [NRE]
    ----------------------------------------
    NRESTART COMMAND IN PROGRESS
    *21098/191312*
    ----------------------------------------
    Command '/NRE' execution done
    
    $ imscmd IMSA /START DC
    IMS control region : [IMSA]
    Requested command  : [START DC]
    ----------------------------------------
    START COMMAND COMPLETED
    *21098/191315*
    ----------------------------------------
    Command '/START DC' execution done
    
    $ imscmd IMSA /START REGION IMSAMSG
    IMS control region : [IMSA]
    Requested command  : [START REGION IMSAMSG]
    ----------------------------------------
    START COMMAND COMPLETED
    *21098/191318*
    ----------------------------------------
    Command '/START REGION IMSAMSG' execution done

マップとCOBOLソースコードのコンパイルおよびエンジンの起動についての詳細は、『OpenFrame OSI管理者ガイド』を参照してください。

2.3. 検証

OSI IVPによる検証は、MPP(Message Processing Program)検証とBMP(Batch Message Processing program)検証に分けられます。

  • MPP検証

    IVPを使用してオンライン環境でメッセージを処理するプログラムを検証し、各手順に従って作業内容を確認できます。

  • BMP検証

    実際のデータ管理を使用し、OSIでユーザー・データセットにアクセスして確認することができます。ユーザーがメッセージ・キューにロードされているデータをリアルタイムで処理せずに、JCLを起動してジョブを実行した後に結果を確認します。

2.3.1. MPP検証

OSI IVPでは、個人情報を管理するアプリケーションを使用してOSIでサポートされるリソースおよびコマンドを検証します。OSI IVPを開始するには、端末を介してOSIシステムに接続した後、/FORコマンドを使用してIVPプログラムを呼び出します。

以下は、端末を介してOSIシステムに接続する方法です。

IMSA <ENTER>

以下は、OSIシステムに接続した後、IVPプログラムを呼び出す方法です。(COBOLサンプル・ソース基準)

<CLEAR>
/FOR OIVP001O <ENTER>

以下は、IVPの各画面で使用されるキーとその機能についての説明です。

キー 機能 適用画面

CLEAR

開始画面を表示します

全体

ENTER

次のステップに進みます

全体

以下は、OSI IVPの開始画面です。

figure b 2
OSI IVPの開始画面

OSI IVPの画面構成は、3つのエリアに分けられます。

  • 上段

    OpenFrameシステムで提供される日付、時間、端末情報を表示します。

  • 中間

    実際にIVPアプリケーションが実行されます。

  • 下段

    著作権情報を表示します。

OSI IVPは、4つの画面(INQR、INSR、UPDT、DELT)で構成されており、CODEを入力して各画面を使用できます。

INQR、UPDT、DELTを実行するには、ファイルにレコードが存在する必要があるため、最初にINSRを使用してレコードを入力する必要があります。

  • INQR画面

    INQR画面はファイルに保存されている特定のレコードを表示します。開始画面でCODE値を入力してアクセスします。誤ったCODEを入力した場合は、開始画面でエラーが発生します。

    figure b 2
    OSI IVPのINQR画面
  • INSR画面

    INSR画面では、新しいレコードを入力します。レコードの各フィールドは、ACCOUNT、NAME、DATE、AMOUNT、INTEREST、TAX TYPEで構成されます。順番に各フィールド値を入力して登録します。

    figure b 3
    OSI IVPのINSR画面
  • UPDT画面

    UPDT画面では、既存レコードを変更します。開始画面でCODE値を入力してアクセスします。誤ったCODEを入力した場合は、開始画面でエラーが発生します。

    figure b 4
    OSI IVPのUPDT画面
  • DELT画面

    DELT画面では、入力されている既存のレコードを削除します。開始画面でCODE値を入力してアクセスします。誤ったCODEを入力した場合は、開始画面でエラーが発生します。

    figure b 5
    OSI IVPのDELT画面
  • QUIT画面

    QUIT画面では、OSI IVPの終了を表示します。

    figure b 6
    OSI IVPのQUIT画面

2.3.2. BMP検証

BMP検証では、データセットに保存されているメッセージを確認します。tjesmgrツールを使用してJOBを実行し、ログ情報を確認できます。

以下は、tjesmgrコマンドを使用してJCLを実行するBMPの使用手順です。

  1. tjesmgrコマンドを実行します。

    $ tjesmgr
  2. JCLを実行するためにbootコマンドを実行し、IMSABMP2を動作(RUN)させます。

      Tmax JES Manager 7.1
    +--------------------------------------------------------------------------------
    |
    | JOB  ID    : JOB00543      NODE NAME  : NODE1
    | JOB  NAME  : OSIBMPT
    | JOB  CLASS : A , JOB STATUS : Done(R00000) , JOB PRTY : 5 , JCLRUNNER INDEX : 5
    | JOB  USER  : ROOT
    | JCL  PATH  : /home/oframe6/OpenFrame/volume_DEFVOL/SYS1.JCLLIB/IMSABMP2
    | TIME STAMP : READY : 20210408/19:14:29, START : 20210408/19:14:30
    |                                         END   : 20210408/19:14:31
    | RES  USAGE : PROCESS - 1s CPU - (0s,0%)  MEM - 0Byte
    |
    | STEP LIST  :
    | ----------------------------------------------------------------------------
    | [  TSTEP1] START : 20210408/19:14:30, RC=R0000, CPU - 0s (0s)
    | ----------------------------------------------------------------------------
    |
    | SPOOL LIST :
    | ---------------------------------------------------------------------------
    | NO  STEP              DDNAME       SIZE  DSNAME
    | ---------------------------------------------------------------------------
    | 0   --------          INPJCL         214 INPJCL
    | 1   --------          SYSMSG          1K SYSMSG
    | 2   --------          CATPROC         0  CATPROC
    | 3   --------          CONVJCL        211 CONVJCL
    | 4   --------          JESMSG         730 JESMSG
    | 5   --------          JESJCL         824 JESJCL
    | 6   TSTEP1            SYSOUT          2K oframe6.OSIBMPT.JOB00543.D000001
    | -----------------------------------------------------------------------------
    |
    | OUTPUT PROCESSING STATUS : all outputs were processed
  3. tjesmgrのPODD @j di=5コマンドを使用してINQRされた情報を確認し、更新状況をチェックします。

    |Command : [podd @j di=5]
    [2021-04-08T19:14:30.609042] [DFSRRC00(16835)         ] [M] [RRC0901M] DFSRRC00 PROGRAM START
    [2021-04-08T19:14:30.609077] [DFSRRC00(16835)         ] [M] [RRC0903M] INITIALIZE BMP REGION
    [2021-04-08T19:14:30.609226] [DFSRRC00(16835)         ] [M] [RRC0906M] SHARED OBJECT TYPE
    [2021-04-08T19:14:30.609626] [DFSRRC00(16835)         ] [M] [RRC0921M] CHILD PROCESSID - pid=16841
    [2021-04-08T19:14:30.609827] [DFSRRC00(16841)         ] [D] [DEBUGP1D] path=/home/oframe6/OpenFrame/core//appbin/osibmpsv
    [2021-04-08T19:14:30.649096] [osibmpsv(16841)         ] [M] [OSI0291M] IMSA server boots - resource manager initialization starts
    [2021-04-08T19:14:30.650632] [osibmpsv(16841)         ] [M] [OSI0101M] osimfs version: 7.2.0(4) obuild@tplinux64:ofsrc71/osi(#1) 2021-03-26 14:11:10
    [2021-04-08T19:14:30.652909] [osibmpsv(16841)         ] [M] [OSI0291M] IMSA server boots - resource manager initialization completed
    [2021-04-08T19:14:30.671149] [osibmpsv(16841)         ] [M] [OSI5251M] osibmpsv initialization ok
    [2021-04-08T19:14:30.671185] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : MBR=OIVPIL02
    [2021-04-08T19:14:30.671192] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : PSB=OIVPIL02
    [2021-04-08T19:14:30.671197] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : IN=OIVPBMP2
    [2021-04-08T19:14:30.671203] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : OUT=
    [2021-04-08T19:14:30.671208] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : IMSID=IMSA
    [2021-04-08T19:14:30.671216] [osibmpsv(16841)         ] [M] [OSI5263M] DFSRRC00 PARM : AGN=
    [2021-04-08T19:14:30.684645] [osibmpsv(16841)         ] [M] [OSI2010M] pgmpath : /home/oframe6/OpenFrame/volume_DEFVOL/OSI.IMSA.STEPLIB/OIVPIL02.so
    MSG-COUNT : [00001]
    BEFORE GU
    MESSAGE EXIST
    ------------------[ INQUIRY ]-------------------
    ACCOUNT   : [          ]
    ------------------------------------------------
    MSG-COUNT : [00002]
    BEFORE GU
    MESSAGE EXIST
    MSG-COUNT : [00001]
    BEFORE GU
    MESSAGE NOT EXIST
    [2021-04-08T19:14:30.749841] [osibmpsv(16841)         ] [M] [OSI0202M] IMSA server downs - resource manager finalization starts
    [2021-04-08T19:14:30.749893] [osibmpsv(16841)         ] [M] [OSI0202M] IMSA server downs - resource manager finalization completed
    [2021-04-08T19:14:30.752047] [DFSRRC00(16835)         ] [M] [RRC0922M] CHILD TERMINATE - RC=R0000
    [2021-04-08T19:14:30.756974] [DFSRRC00(16835)         ] [M] [RRC0902M] DFSRRC00 PROGRAM FINISH

TJESユーティリティの詳細については、OpenFrame Batch『TJESガイド』を参照してください。