Implementing changes in your z/OS environment for CICS

If you are an existing CICS® user and are planning to migrate to CICS Transaction Server for z/OS®, Version 3 Release 1 in an established z/OS environment, most of the tasks described here will already have been done. In this case, review the following steps to check whether you need to make any changes. If you are setting up a new z/OS environment, perhaps on new hardware, you need to ensure that the required support for CICS is in place.

The following is a summary of the steps to follow to enable your z/OS environment to support CICS:

APF-authorize SDFHAUTH
Define the CICSTS31.CICS.SDFHAUTH library as an APF-authorized library. See APF-authorizing CICS SDFHAUTH library for details.
Authorize CICS regions userids
Authorize to RACF® each CICS region userid to permit access to the required MVS™ resources. See Authorizing CICS region userids to RACF for details.
Note:
It is assumed that the CICS TS libraries you have installed, and other MVS resources, are protected by RACF, or an equivalent external security manager (ESM).
Add SDFHLINK to LNKLST
Include the CICS linklist library, CICSTS31.CICS.SDFHLINK, in the MVS LNKLST concatenation.
Define CICS as a subsystem
Define CICS as an MVS subsystem if you intend using multiregion operation (MRO), the CICS console message-handling facility, or MVS workload management.
Define and install the CICS Type 3 SVC
Define the DFHCSVC module to MVS.

Schedule an IPL to install the CICS SVC routine, DFHCSVC, and other CICS-required modules in the MVS link pack area (LPA).

Review requirement for HPO
Ensure the DFHHPSVC module is included in the MVS nucleus if you are going to use the VTAM® high-performance option (HPO), and ensure the HPO SVC is defined as a Type 6 SVC in the appropriate MVS IEASVCxx PARMLIB member.
Define VTAM APPLs for CICS TORs
Define to VTAM each CICS region that requires VTAM support (for example, all your terminal-owning regions) and also ensure that any VTAM terminal definitions are properly specified for connection to CICS.

Defining VTAM APPL definitions for CICS application-owning regions (AORs) is optional.

Define log streams
Define the minimum logging environment for CICS system logs.
Install ASR exit for SYMREC macro support
Install an MVS ASR exit to enable CICS to use the SYMREC macro call.

Each of these tasks is discussed in more detail in the following topics.

There are also some optional tasks that you may need to perform at a later stage, but these are not essential to the initial install and operation of a basic CICS system. These tasks are connected with facilities such as VSAM record-level sharing, MVS automatic restart management, and MVS performance.

APF-authorizing CICS SDFHAUTH library

Add the CICS SDFHAUTH library to the list of APF-authorized libraries in the appropriate PROGxx (or IEAAPFxx) member in SYS1.PARMLIB. The SDFHAUTH library must be APF-authorized to enable certain CICS modules, such as DFHSIP, to run in supervisor state.

If your list(s) of APF-authorized libraries are specified in the dynamic format (in a PROGxx member), refresh the APF list dynamically using the SETPROG or SET PROG=xx command.

If your list(s) of APF-authorized libraries are specified in the static format (in IEAAPFxx members), schedule an MVS IPL for the APF-authorization to take effect.

For information about maintaining lists of APF-authorized libraries, see the z/OS MVS Initialization and Tuning Reference.

Authorizing CICS region userids to RACF

Ensure each CICS region userid (the userid under which a CICS region runs) has the required authority (READ, UPDATE, CONTROL, or ALTER) to access the various protected resources it needs to use. These include load libraries and other data sets, coupling facility structures, the VTAM ACB, and so on.

The resources for which you need to ensure access are:

Load libraries
The CICS load libraries, CICSTS31.CICS.SDFHAUTH and CICSTS31.CICS.SDFHLOAD. All CICS regions should have READ authorization to these data sets.
VTAM ACB
A VTAMAPPL general resource class profile protects a CICS region's APPLID. Each region userid should have READ authorization to its own VTAMAPPL profile.
SMSVSAM servers
A SUBSYSNM general resource class profile protects an SMSVSAM server. Each CICS region that opens an SMSVSAM control ACB during initialization must have READ authorization to a SUBSYSNM profile named with its own CICS APPLID.
MVS log streams
A LOGSTRM general resource class profile protects an MVS log stream. Each CICS region requires at least UPDATE authorization to its own system log LOGSTRM profile. If you expect a CICS region to create dynamically its log stream, it needs ALTER authority.
Start of changeData set services module ADRRELVLEnd of change
Start of changeA PROGRAM general resource class profile may be used to protect access to the DFSMSdss module, ADDRELVL . CICS links to this ADR module during initialization as part of its check on backup-while-open (BWO) support. Ensure CICS has READ access to this module if it is a protected resource in your MVS environment.End of change
CICS category 1 transactions
The general resource class GCICSTRN (or TCICSTRN) protect all transactions, including CICS system transactions. Each CICS region requires READ authorization to the list of category 1 transactions as defined in member DFH$CAT1 in the CICS SDFHSAMP samples library.

When you have defined the required authorizations for CICS regions in the RACF data base, activate the various resource classes with the RACF SETROPTS command.

Adding SDFHLINK to the MVS LNKLST

CICS provides a number of modules that are intended for use from the MVS LNKLST. These are supplied in the SDFHLINK library, and are in two categories:

  1. CICS-supplied modules used by non-CICS jobs
  2. Modules that must be consistent across several CICS regions.

Add the CICS SDFHLINK library to the MVS LNKLST concatenation. Note that many of the modules in SDFHLINK can only be used from an APF-authorized library, and therefore SDFHLINK also needs to be APF-authorized.

Note:
CICS also loads some non-CICS modules, and these should also be made available through a library included in the LNKLST.

Defining CICS as an MVS subsystem

Define CICS as an MVS subsystem in an IEFSSNxx member of SYS1.PARMLIB if you plan to use any of the following CICS facilities:

Defining and installing the CICS Type 3 SVC

Install the CICS TS Version 2 level of the CICS Type 3 SVC module, DFHCSVC, before you attempt to start a CICS region. To make the CICS Type 3 SVC ready for use:

  1. Define the CICS SVC as a Type 3 SVC in the appropriate MVS IEASVCxx PARMLIB member. For example, to use the CICS default SVC number, add the following statements to the IEASVCxx:
    SVCPARM 216,REPLACE,TYPE(3),EPNAME(DFHCSVC)
  2. Include the CICS LPA library, SDFHLPA, in the MVS LPALST concatenation.
  3. If you define to MVS an SVC number other than the default (216), specify the SVC number to CICS on the CICSSVC system initialization parameter.

CICS contains a test to verify that it is using the correct release level of the CICS DFHCSVC module. If CICS calls an SVC module using the SVC number specified on the CICSSVC system initialization parameter, and the module is not at the current level, CICS issues message DFHKE0104.

Reviewing the high-performance option

The high-performance option (HPO) is provided for users who want to optimize terminal response times and maximize transaction throughput. This option requires the CICS Type 6 SVC module, DFHHPSVC, to be included in the MVS nucleus To help you decide on the use of HPO, see the CICS Performance Guide. If you decide to use this option, follow the steps described in Selecting the high-performance option.

Defining CICS regions as applications to VTAM

Define each CICS terminal-owning region to VTAM as a VTAM application--that is, as a VTAM application program major node (APPL). To do this, add the required APPL definition statements to a member of SYS1.VTAMLST. For example:

* APPL definition for CICS region CICSHTH1
**********************************************************************
CICSHTH1 APPL  AUTH=(ACQ,VPACE,PASS),VPACING=0,EAS=5000,PARSESS=YES    X
               SONSCIP=YES
********************************************************************
Note:
Specify the VTAM APPL name to CICS on a CICS APPLID system initialization parameter.

Also ensure that your VTAM terminals are properly defined for connection to CICS. This is particularly important if you intend using the CICS autoinstall function. For those terminals for which you want to use autoinstall, code VTAM LOGON mode table entries that correspond to the model TYPETERM/TERMINAL definitions defined to CICS. You can either code your own autoinstall models, or use the CICS-supplied model definitions that are generated for you when you initialize the CICS system definition data set (CSD).

For programming information about matching VTAM LOGMODE definitions with CICS model definitions, see the CICS Customization Guide.

For information about defining model and VTAM terminal definitions to CICS, see the CICS Resource Definition Guide.

Defining log streams

CICS automatically connects to its system log stream, unless you define a journal model resource definition to define the log stream as TYPE(DUMMY).

Each CICS region has only one system log, which is implemented as two MVS system logger log streams. These are used by CICS as the primary and secondary system log streams and together these form a single logical log stream. Thus, as a default each CICS region requires a minimum of two log streams.

Initially, you are recommended to define to the MVS system logger some model log streams, and let CICS create the system log streams dynamically. If you plan to use a coupling facility for CICS logging, you must also define the log structures required for the log streams. To get you started, however, using DASD-only log streams is quicker and easier to define. Later, when you have more information available, you can plan to define coupling facility log structures with explicit log streams tailored to your requirements.

Define MVS model log streams using the naming convention that enables CICS to create log streams dynamically. Model names should be of the form mvs_sysid.DFHLOG.MODEL and mvs_sysid.DFHSHUNT.MODEL, where mvs_sysid is the system name of the MVS image in which the CICS region runs.

Example: If a CICS region, running in an MVS image with a sysid of MV10, issues a create log stream request for its primary log stream, the system logger requires a model log stream named MV10.DFHLOG.MODEL.

Running without a system log

You can define a CICS JOURNALMODEL resource definition with TYPE(DUMMY) to avoid having to define log streams. If you want to run the IVPs with the minimum effort, here's what to do:

Figure 3. Sample job to define DUMMY JOURNALMODELs for CICS system logs
//CSDLGSTR JOB 1,BELL,MSGCLASS=A,MSGLEVEL=(1,1),CLASS=A
//CSDUP    EXEC PGM=DFHCSDUP,REGION=1M,PARM='CSD(READWRITE)'
//STEPLIB  DD DSN=CICSTS31.CICS.SDFHLOAD,DISP=SHR
//DFHCSD   DD DSN=CICSTS31.CICS.CICSH###.DFHCSD,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSABOUT DD SYSOUT=*
//SYSABEND DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN    DD *
*
*   DEFINE JOURNAL MODELS FOR CICS LOG STREAMS AS DUMMY
*
DEFINE JOURNALMODEL(DFHLOG) GROUP(LOGTEST)
DESCRIPTION(DEFINE SYSTEM LOG AS DUMMY)
       JOURNALNAME(DFHLOG)
       TYPE(DUMMY)
*
DEFINE JOURNALMODEL(DFHSHUNT) GROUP(LOGTEST)
DESCRIPTION(DEFINE SYSTEM LOG AS DUMMY)
       JOURNALNAME(DFHSHUNT)
       TYPE(DUMMY)
/*
//

MVS ASR exit

A CICS program may call the first failure symptoms (FFS) component. This uses the MVS SYMREC macro to write a symptom record to the MVS SYS1.LOGREC dataset.

Install an MVS ASR exit to enable CICS to use the SYMREC macro call, otherwise the FFS call fails. For more information, see the z/OS MVS Installation Exits manual.

[[ Contents Previous Page | Next Page Index ]]