Installation and Uninstallation

This chapter describes how to install and uninstall OpenFrame/OSI and how to verify that the procedure was successful.

1. Installation

This section describes how to automatically install by using the installer and manually install by using scripts.

1.1. Automatic Installation by Using the Installer

If you create a properties file described in Installation Properties File, you can easily install OSI by using the installer.

The following are the steps for installing OSI by using the installer in any platforms.

  1. Move the installer file to the directory where OpenFrame will be installed.

  2. If the installer does not have execution permissions, use the chmod command to grant it those permissions.

    The following example illustrates how to grant the execution permissions to the installer binary for Linux x86 64 bit.

    $ chmod a+x OpenFrame_OSI7_2_Linux_x86_64.bin
  3. Execute the installer in the directory that has the installer binary in the console prompt.

    <installer_file_name> -f <configuration_file_name>

    The following examples illustrate how to perform the installation by creating a properties file as osi.properties. Choose either of the two methods, and press <Enter>.

  • Method 1

    $ ./OpenFrame_OSI7_2_Linux_x86_64.bin -f osi.properties
  • Method 2

    $ sh OpenFrame_OSI7_2_Linux_x86_64.bin -f osi.properties
    1. The following is displayed and OSI is automatically installed.

      Preparing to install...
      Extracting the JRE from the installer archive...
      Unpacking the JRE...
      Extracting the installation resources from the installer archive...
      Configuring the installer for this system's environment...

1.2. Manual Installation by Using Scripts

The script files are located in the ${OPENFRAME_HOME}/scripts directory, and they are executed in the following order by the installer. If scripts do not properly work during the installation due to an external factor, execute the scripts manually after installing OpenFrame. The scripts must be executed in the following order.

  1. link_lib_osi.sh

    Create a symbolic link for libraries provided by OSI.

  2. osi_ofconfig.sh

    Import openframe_osi.conf, openframe_osi_IMSA.conf files.

  3. osi_init.sh

    Create a database table used in OSI.

  4. osi_mv_copybook.sh

    Move the copybook that is used when creating a data set for IMSA Region to the location set in the COPYBOOK_PATH key under the TSAM_RDB section in the ds subject of OpenFrame configuration. For more information about OpenFrame configuration, refer to OpenFrame Configuration Guide.

  5. osi_define.sh

    Create maps and data sets required for OSI, and add the resources.

  6. osi_ivp.sh

    Compile maps and COBOL sources required for OIVP testing, and add the resources.

The result of scripts executed by the installer is saved in ${OPENFRAME_HOME}/UninstallerData/log/install_OSI.log.

2. Checking the Installation

After installing OSI, it is recommended that two checking procedures be run to verify that the installation was successful.

2.1. Checking the Directory Structure

After installing OSI, check the following directory structure. As OSI can be installed only after OpenFrame/Base, OpenFrame/Batch, and OpenFrame/HiDB are installed, the following description is based on the directory created after the installation of the products.

${OPENFRAME_HOME}
   +---- UninstallerData
   +---- bin
   +---- config
   +---- core
   +---- cpm
   +---- data
   +---- include
   +---- lib
   +---- license
   |---- log
         +---- cmd
         +---- data
         +---- sys
   +---- ofdb_scripts
   |---- osi
         +---- oivp
         +---- resource
   +---- outputq
   +---- profile
   +---- sample
   +---- schema
   +---- scripts
   +---- shared
   +---- spbackup
   +---- spool
   +---- spunpack
   +---- temp
   +---- tsam
   +---- util
   +---- volume_DEFVOL
   +---- webde
UninstallerData

Contains files for deleting OpenFrame products.

bin

Contains execution files used in OSI.

config

Contains configuration files for OSI. For more information about OpenFrame configuration, refer to OpenFrame Configuration Guide.

core

Contains Tmax files used in OpenFrame, including Tmax server programs, service programs and Tmax configuration files for OpenFrame.

cpm

Contains character code conversion table files.

data

Contains error code tables and data files used in the lock server.

include

Contains header files to be used for compiling applications.

lib

Contains libraries used in OSI.

license

Contains license files used by OpenFrame products.The following describes OpenFrame license files.

File Description

licbase.dat

Base license file

lictjes.dat

Batch(TJES) license file

lictacf.dat

TACF license file

lichidb.dat

HiDB license file

licosc.dat (MVS)

OSC license file

licosi.dat (MVS)

OSI license file

licaim.dat (AIM)

AIM license file

log

Contains log files created by OpenFrame products. The log file has cmd, sys, and data subdirectories depending on log type. For more information, refer to "Appendix D. Log Management" in OpenFrame Base Guide.

Subdirectory Description

cmd

Contains cmd logs of OpenFrame.

sys

Contains system logs of OpenFrame.

data

Contains data logs of OpenFrame.

ofdb_scripts

Contains templates and scripts required for using TSAM, NDB, and HiDB.

osi

Contains the following subdirectories.

Subdirectory Description

oivp

Contains the sample IVP application files used in OSI.

resource

Contains the system configuration files, XA related configuration, and JCL samples of OSI.

outputq

Contains data that are actually printed. For multi-node setup, creating subdirectories of the shared directory is recommended.

profile

Contains OpenFrame user profiles.

sample

Contains example files of OpenFrame products.

schema

Contains dataset schema files created by cobgensch and pligensch tools.

scripts

Contains the script files used to install and uninstall OSI.

shared

Common directory shared by all OpenFrame products.

spbakup

Back up spool data set.

spool

Saves spool data set. For multi-node setup, creating subdirectories of the shared directory is recommended.

spunpack

Restores the backed up spool data.

temp

Contains temporary files in OpenFrame.

tsam

Manages information related to TSAM used in OpenFrame.

util

Contains utilities used in OSI.

volume_DEFVOL

Default volume directory used in various OpenFrame products.

webde

Manages information related to WEBDE used in OpenFrame.

2.2. Checking Startup

The following are the steps for checking OSI startup.

  1. If you set the automated script generation option as YES in the installation properties file, open the ${OPENFRAME_HOME}/UninstallerData/log/install_OSI.log file with a text editor to verify that there were no errors during the installation.

    Add oframe_osi.m
    Run link_lib_osi.sh
    #### osi_ofconfig.sh START ####
    boot and tacflogin
    Logged-in as [ROOT]
    
    TMBOOT for node(NODE1) is starting:
    (E) BOOT3005 Tmax is already running [BOOT0008]
    Dataset lock flag disable (Only during OSI installation)
    COMPLETED SUCCESSFULLY.
    COMPLETED SUCCESSFULLY.
    create error code & config
    COMPLETED SUCCESSFULLY!
    COMPLETED SUCCESSFULLY.
    COMPLETED SUCCESSFULLY.
    #### osi_ofconfig.sh END ####
    
    #### osi_init.sh START ####
    osiinit version 7.2.0(4) obuild@tplinux32:ofsrc7/osi(#1) 2008-02-21 20:10:57
    Initialize OpenFrame OSI System Tables
    
    Creating OFM_OSI_MQ_MASTER...
     > "OFM_OSI_MQ_MASTER" created...
    Creating OFM_OSI_MQ...
     > "OFM_OSI_MQ" created...
    Creating OFM_OSI_MQ_SEQ...
     > "OFM_OSI_MQ_SEQ" created...
    Creating OFM_OSI_MQ_BMP...
     > "OFM_OSI_MQ_BMP" created...
    Creating OFM_OSI_MQ_BMP_SEQ...
     > "OFM_OSI_MQ_BMP_SEQ" created...
    Creating OFM_OSI_MQ_TRIGGER...
     > "OFM_OSI_MQ_TRIGGER" created...
    Creating OFM_OSI_REGION...
     > "OFM_OSI_REGION" created...
    Creating OFM_OSI_SD_DATABASE...
     > "OFM_OSI_SD_DATABASE" created...
    Creating OFM_OSI_SD_APPLCTN...
     > "OFM_OSI_SD_APPLCTN" created...
    Creating OFM_OSI_SD_TRANSACT...
     > "OFM_OSI_SD_TRANSACT" created...
    Creating OFM_OSI_SD_TRANSACT_IDX1...
     > "OFM_OSI_SD_TRANSACT_IDX1" created...
    Creating OFM_OSI_SD_TERMINAL...
     > "OFM_OSI_SD_TERMINAL" created...
    Creating OFM_OSI_SD_LTERM...
     > "OFM_OSI_SD_LTERM" created...
    Creating OFM_OSI_SD_LTERM_IDX1...
     > "OFM_OSI_SD_LTERM_IDX1" created...
    Creating OFM_OSI_RTSD_DATABASE...
     > "OFM_OSI_RTSD_DATABASE" created...
    Creating OFM_OSI_RTSD_APPLCTN...
     > "OFM_OSI_RTSD_APPLCTN" created...
    Creating OFM_OSI_RTSD_TRANSACT...
     > "OFM_OSI_RTSD_TRANSACT" created...
    Creating OFM_OSI_RTSD_TRANSACT_IDX1...
     > "OFM_OSI_RTSD_TRANSACT_IDX1" created...
    Creating OFM_OSI_RTSD_TERMINAL...
     > "OFM_OSI_RTSD_TERMINAL" created...
    Creating OFM_OSI_RTSD_LTERM...
     > "OFM_OSI_RTSD_LTERM" created...
    Creating OFM_OSI_RTSD_LTERM_IDX1...
     > "OFM_OSI_RTSD_LTERM_IDX1" created...
    Creating OFM_OSI_MODSTAT...
     > "OFM_OSI_MODSTAT" created...
    Creating OFM_OSI_CI...
     > "OFM_OSI_CI" created...
    
    #### osi_init.sh END ####
    
    ...
    
    acbgen version 7.2.0(4) obuild@tplinux32:ofsrc7/ims(#2) 2007-11-10 10:43:12
    Application Control Block Generation Program
    
    ACBGEN COMMAND=BUILD,OPERAND=(PSB=ALL),ACBLIB=IMS.ACBLIB
    ------------------------------------------------------------
    *** ACBGEN DELETE PSB=ALL
    ------------------------------------------------------------
    *** ACBGEN DELETE PSB=ALL SUCCESS
    ------------------------------------------------------------
    ------------------------------------------------------------
    *** ACBGEN BUILD PSB=ALL
    ------------------------------------------------------------
    *** ACBGEN BUILD PSB=ALL SUCCESS
    ------------------------------------------------------------
    PROGRAM COMPLETED SUCCESSFULLY.
    acbgen version 7.2.0(4) obuild@tplinux32:ofsrc7/ims(#2) 2007-11-10 10:43:12
    Application Control Block Generation Program
    
    ACBGEN COMMAND=COPY,OPERAND=(),ACBLIB=IMS.ACBLIB
    ACBGEN COPY SUCCESS
    ------------------------------------------------------------
    *** ACBGEN DELETE PSB=ALL
    ------------------------------------------------------------
    *** ACBGEN DELETE PSB=ALL SUCCESS
    ------------------------------------------------------------
    ------------------------------------------------------------
    *** ACBGEN COPY PSB=ALL
    ------------------------------------------------------------
    ------------------------------------------------------------
    PROGRAM COMPLETED SUCCESSFULLY.
    Dataset lock flag enable
    COMPLETED SUCCESSFULLY.
    COMPLETED SUCCESSFULLY.
  2. Check that the ${OPENFRAME_HOME}/license file contains OSI licenses.

  3. Start OpenFrame by executing osiboot.

    $ osiboot
  4. Check that there are no errors during the boot sequence.

    TMBOOT for node(NODE1) is starting:
            TMBOOT: TMM is starting: Thu Apr  8 18:16:12 2021
            TMBOOT: CLL is starting: Thu Apr  8 18:16:12 2021
            TMBOOT: CLH is starting: Thu Apr  8 18:16:12 2021
            TMBOOT: TLM(tlm) is starting: Thu Apr  8 18:16:12 2021
    [2021-04-08T18:16:12.437356] [osiboot(9402)           ] [M] [OSI7061M] System server(TPFMAGENT) booting ok
    [2021-04-08T18:16:12.440478] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrsasvr) booting ok
    [2021-04-08T18:16:12.443474] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrlhsvr) booting ok
    [2021-04-08T18:16:12.446754] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrdmsvr) booting ok
    [2021-04-08T18:16:12.451046] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrdsedt) booting ok
    [2021-04-08T18:16:12.455364] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrcmsvr) booting ok
    [2021-04-08T18:16:12.459852] [osiboot(9402)           ] [M] [OSI7061M] System server(ofruisvr) booting ok
    [2021-04-08T18:16:12.464157] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrsmlog) booting ok
    [2021-04-08T18:16:12.471293] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjmsvr) booting ok
    [2021-04-08T18:16:12.475912] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjschd) booting ok
    [2021-04-08T18:16:12.480158] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjinit) booting ok
    [2021-04-08T18:16:12.490924] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjhist) booting ok
    [2021-04-08T18:16:12.500370] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjspbk) booting ok
    [2021-04-08T18:16:12.510117] [osiboot(9402)           ] [M] [OSI7061M] System server(ofrpmsvr) booting ok
    [2021-04-08T18:16:12.517094] [osiboot(9402)           ] [M] [OSI7061M] System server(obmtsmgr) booting ok
    [2021-04-08T18:16:12.521643] [osiboot(9402)           ] [M] [OSI7061M] System server(obmjtimr) booting ok
    [2021-04-08T18:16:12.527060] [osiboot(9402)           ] [M] [OSI7061M] System server(tmsvr) booting ok
    [2021-04-08T18:16:12.533321] [osiboot(9402)           ] [M] [OSI7061M] System server(osiomsvr) booting ok
    [2021-04-08T18:16:12.533343] [osiboot(9402)           ] [M] [OSI7051M] Booting process complete.
  5. After executing tmadmin, check whether all server processes have been successfully started.

    If all servers specified in osi.ofsys.seq and the osiomsvr server appear as RDY (as shown below), OpenFrame/OSI has been successfully installed and started. Other servers are automatically started when a control region is started or while BMP process is being executed.

    $ tmadmin
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 NODE1 (tmadm): si
    ------------------------------------------------------------------------
      clh   svrname    (svri)   status     count   qcount   qpcount  emcount
    ------------------------------------------------------------------------
        0   TPFMAGENT  (   4)      RDY         0        0         0        0
        0   ofrsasvr   (   5)      RDY         0        0         0        0
        0   ofrlhsvr   (   6)      RDY         0        0         0        0
        0   ofrdmsvr   (   7)      RDY         0        0         0        0
        0   ofrdsedt   (   8)      RDY         0        0         0        0
        0   ofrcmsvr   (   9)      RDY         0        0         0        0
        0   ofruisvr   (  10)      RDY         0        0         0        0
        0   ofrsmlog   (  11)      RDY         0        0         0        0
        0   obmjmsvr   (  12)      RDY         0        0         0        0
        0   obmjschd   (  13)      RDY         1        0         0        0
        0   obmjinit   (  14)      RDY         2        0         0        0
        0   obmjhist   (  15)      RDY         0        0         0        0
        0   obmjspbk   (  16)      RDY         0        0         0        0
        0   ofrpmsvr   (  17)      RDY         0        0         0        0
        0   obmtsmgr   (  18)      RDY         0        0         0        0
        0   obmjtimr   (  19)      RDY         0        0         0        0
        0   tmsvr      (  20)      RDY         0        0         0        0
        0   osiomsvr   (  21)      RDY         0        0         0        0
        0   osisschd   (  22)      NRDY        0        0         0        0
        0   osicmdsv   (  23)      NRDY        0        0         0        0
        0   OSIMPPSVR  (  24)      NRDY        0        0         0        0
        0   osibmpsv   (  25)      NRDY        0        0         0        0
        0   IMSASCHD   (  26)      NRDY        0        0         0        0
        0   IMSACMMD   (  27)      NRDY        0        0         0        0
        0   IMSAMPP_TCL1 (  28)      NRDY        0        0         0        0
        0   IMSAMPP_TCL2 (  29)      NRDY        0        0         0        0
        0   IMSAMPP_TCL3 (  30)      NRDY        0        0         0        0
        0   IMSAMPP_TCL4 (  31)      NRDY        0        0         0        0

3. Uninstallation

OSI can be uninstalled by using the deletion utility supplied by the installer.

The following are the steps for uninstalling OpenFrame/OSI.

  1. If a region server (control region, user server) has been started, close the region using the imscmd command.

    $ imscmd IMSA /CHE FREEZE
  2. End the region server, and close OpenFrame by executing the osidown command.

    $ osidown
  3. Check that the following message is displayed and that no errors have occurred.

    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(OSIGW001) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(tmsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjtimr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmtsmgr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjspbk) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjhist) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjschd) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjinit) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(obmjmsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrpmsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrsmlog) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofruisvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrcmsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrdsedt) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrdmsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrlhsvr) shutdown ok
    20180908:182629 I OSI7141I [20:     OSIDOWN: 0: 13817:   67] System server(ofrsasvr) shutdown ok
    Do you really want to down whole Tmax? (y : n):
        TMDOWN for node(NODE1) is starting:
        TMDOWN: CLL downed: Sat Sep  8 18:26:29 2018
        TMDOWN: TLM downed: Sat Sep  8 18:26:29 2018
        TMDOWN: CLH downed: Sat Sep  8 18:26:29 2018
        TMDOWN: TMM downed: Sat Sep  8 18:26:29 2018
        TMDOWN: TMAX is down
  4. After verifying that OpenFrame is not running, use the UNIX console to execute the Uninstall_Osi file located in $OPENFRAME_HOME/UninstallerData.

    $ ./Uninstall_Osi
  5. Files related to OSI will be deleted by the uninstall program, and OSI will be completely removed in Tmax configuration.

4. Checking the Uninstallation

Since the uninstall program deletes only files created during the OSI installation, any remaining directories and files should be manually deleted.