ims fundamentals - define system resources dynamically

92
© 2015 IBM Corporation Dynamic Change Management in IMS, Simplified to Deliver Higher Availability Anu Vakkalagadda, Senior Software Engineer IMS Development, IBM IBM Customer Internship April 18, 2016

Upload: ibm-ims

Post on 16-Apr-2017

215 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Dynamic Change Management in IMS, Simplified to Deliver Higher Availability

Anu Vakkalagadda, Senior Software EngineerIMS Development, IBM

IBM Customer InternshipApril 18, 2016

Page 2: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation2

Please note

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision.

The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion.

Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

Page 3: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Acknowledgments and Disclaimers

Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates.

The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

© Copyright IBM Corporation 2016. All rights reserved.

•U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

IBM, the IBM logo, ibm.com, IMS are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml

Other company, product, or service names may be trademarks or service marks of others.

Page 4: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation44

Agenda

Dynamic Resource Definition (DRD) review

DRD with IMSRSC repository (IMSplex)–Basic components of a DRD with Repository environment–Simplified setup of DRD with Repository components– Making resource definition changes using IMSRSC

repository• Dynamic Resource Definition Usage• Example Use case scenarios

– Security setup for IMSRSC repository– IMS V14 Repository Enhancements– Comparison of DRD with RDDS and Repository– Best practices for migration and usage– Summary

Page 5: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Dynamic Resource Definition(DRD) Review

Page 6: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation6

Modifying MODBLKS Resources without DRD

MODBLKSDSN

Control Blocks DDIRs PDIRs SMBs RCTEs

During IMS restart processing, resource definitions are loaded from the active MODBLKS library (cold start) or from the IMS log (warm/emergency restart).

COLD START

OLC

SYSGEN Process

IMS Control Region

After restart, these can only be added, changed, or deleted through the ONLINE CHANGE process or another RESTART (some attributes can be updated by commands).

OLDS

WARM START

EMERGENCY RESTART

(runtime resource definitions)

(stored resource definitions)

RESTART

OLC

Page 7: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation7

DRD Objective

• Improve the availability of the IMS online environment. • Allow user to dynamically define (create, update) and enable MODBLKS resource definitions ( Databases , Programs , Transactions , Routing Codes)

• Store definitions so they are available for IMS coldstart • Benefits

• No requirement for MODBLKS SYSGEN, IMS restart or MODBLKS online change (OLC) • Changes imported when an IMS is down are made available to the IMS during warm or emergency restart (added in IMS V13)•Increased resource availability• Runtime changes made using type-2 commands in IMS

•Resources quiesced as needed•Autoexport runtime changes to a System RDDS or the IMSRSC repository (support added in IMS V14)

Page 8: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation8

DRD with RDDS

System RDDS

Control Blocks DDIRs PDIRs SMBs RCTEs

IMS CONTROL REGION

During IMS cold start processing, resource definitions may be IMPORTed from a Resource Definition Data Set.

IMPORT

CREATEUPDATEDELETEQUERY

OLDS

WARM START

EMERGENCY RESTART

EXPORT

(runtime resource definitions)

(stored resource definitions)

Definitions can be dynamically created, updated, or deleted using new or enhanced type-2 commands.

Definitions can be EXPORTed to a Resource Definition Data Set.

Page 9: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

DRD with IMSRSC repository (IMSplex)

Page 10: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation10

IMS Repository Function Overview

The IMS Repository support provides a centralized store for resource definitions for all IMS systems in the IMSplex.

Managing DRD definitions is the initial implementation of the IMS repository function

–replaces RDDSs at each IMS–DRD definitions are stored in the IMSRSC repository

Provides full support for populating, managing, storing, sharing, and retrieving a consistent set of DRD stored resource definitions for multiple-IMS systems in the IMSplex or for a single-IMS system.

Manual coordination of multiple RDDSs in a multiple-IMS IMSplex eliminated, replaced by basic functioning of the IMS repository

Improvements in IMSplex systems and resource management with the IMSRSC repository

A strategic direction for IMS architecture

Page 11: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation11

PRIMARY

Modifying Resources using DRD with IMSRSC repository

IMSRSC Repository

Control Blocks DDIRs PDIRs SMBs RCTEs

IMS CONTROL REGION

Runtime definitions can be dynamically created, updated or deleted usingtype-2 commands.

IMPORT

CREATEUPDATEDELETEIMPORTEXPORTQUERY

OLDS

WARM START

EMERGENCY RESTART

EXPORT

(runtime resource definitions)

(stored resource definitions)

Runtime definitions can be EXPORTed to the IMSRSC repositoryDuring IMS cold start processing, resource definitions may be IMPORTed from the IMSRSC repository.

IMPORT

IMS change list

Page 12: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation12

IMS Repository Function Architecture

OperationsManager

(OM)

IMSControlRegion

RepositoryServer(RS)

SCI

SCI

SCI

XCF

XCF

XCF

RS Catalog Repository

Primary/Secondary

IMSRSC Repository

Primary/Secondary/Spare

Batch ADMIN Utility

(FRPBATCH)

RM utilitiesCSLURP10 / CSLURP20

RS

Audit Log

XCF

Structured Call Interface

SCI

ResourceManager

(RM)

SCI

IMSControlRegion

SCI

IMSControlRegion

SCI

Page 13: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation13

IMS Repository Function components

A Common Service Layer (CSL) IMSplex configuration consisting of Structured Call Interface (SCI)

Used for communications within the CSL Not used for communications between RM and the RS

Resource Manager (RM) • Used for communication with the new Repository Server (RS)

address space• Supports new type-2 commands for enabling / managing

IMSRSC repository in RM– UPDATE RM– QUERY RM

• RM registers to the Repository Server and connects to the IMSRSC repository(s) during RM initialization

• RM is enabled to the repository by specifying a Repository Section in the RM initialization member (CSLRIxxx) or via the UPDATE RM command

Page 14: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation14

IMS Repository Function components …

Operations Manager (OM)– Used for new/modified IMS and RM type-2 commands

Repository Server (RS)• RS is not considered a CSL manager• Repository server can optionally register with SCI (shows as

part of the IMSplex on QUERY IMSPLEX output) though Repository Server communications are through RM with XCF

Optionally, a resource structure in a Coupling Facility• Used for repository name and repository type consistency• Managed by a Common Queue Server (CQS) address space• Multiple RMs in an IMSplex require a resource structure

SPOC (single point of control) for entering type-2 commands IMS System(s)

DRD with IMSRSC repository is enabled in a single-IMS IMSplex or a multiple-IMS IMSplex

Page 15: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation15

Accessing the Repository

All access to the IMSRSC repository which contains the DRD stored resource definitions is handled by the Repository Server (RS) address space.

RM provides services to manage the resource definitions in the IMSRSC repository and interacts with RS to access the IMSRSC repository–Used by online IMS type-2 commands–By batch RM utilities

• RDDS to Repository (CSLURP10)• Repository to RDDS (CSLURP20)

Direct Repository Server access is for Repository Administration (RM not used)–Batch ADMIN utility (FRPBATCH)–Repository server commands using the z/OS modify interface

Page 16: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation16

IMS Repository Server

IMS Repository Server (RS) A BPE-based address space introduced in IMS V12 RS address space must be started by the user Interface to RS is from the RM CSL address space Two types• Master Repository Server

– Single instance – Manages access to repository data sets– First RS address space to access repository

• Subordinate Repository Server– One or more instances– Used if master Repository Server goes down– Optional but recommended

z/OS XCF is used for server communication between RS and RM

Can be on a separate LPAR in the parallel sysplex

Page 17: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation17

IMS Repository Function ..

Repository Server (RS) RS has its own internal repository called the ‘Catalog

repository’ Catalog Repository contains information about user

repositories Not the same as the IMS Catalog

Manages IMS repositories Currently manages IMSRSC repository for DRD

resource definitions Manages registrations and connections to the repository Ensures repository data integrity Uses SAF to restrict access to repositories Provides an audit trail using the z/OS logger Provides tracing capabilities via BPE IBM Recommendation: A dedicated RS (master and

subordinates) per IMSplex

Page 18: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation18

IMS Repository Server (RS) components

Repository data sets Multiple sets of VSAM KSDS data sets

Each set composed of• Repository index data set• Repository member data set• Each of these has a primary and

secondary data set (duplexed)– Optional spare set (third) can

be definedTwo types of repository data sets

• Catalog repository data setsNote: These are for the repository and not the IMS Catalog

• IMSRSC repository data sets

repository index data sets (primary / secondary)

repository member data sets (primary / secondary)

Page 19: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation19

IMS Repository Server components …

Catalog repository (RS catalog data sets)Required per Repository Server

Manages the Repository Server (RS) functions

Manages information about IMS repository data sets

Composed of two pairs of data sets• Primary index data set and primary member data set (required)• Secondary index data set and secondary member data set

(required)• No spare capability

RS catalog data sets

Primary and secondary index data sets Primary and secondary member data sets

Page 20: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation20

IMSRSC repository

Contains the stored resource definitions for DRD resources for one or more DRD with IMSRSC repository enabled IMS system

– Contains the program/transaction/database/FP routing code resource and descriptor resource definitions

– Supports different attribute values for a particular resource definition in different IMSs (generic / IMS-specific)

Contains the IMS resource lists– One IMS resource list for each resource type per IMS– IMS resource list contains the list of resource names defined

for the IMS system– Is read during IMS coldstart so the entire repository does not

have to be read Changed resource lists

– Contain resource changes made when an IMS is down when the IMPORT SCOPE(ALL) is issued

– Resource definitions in the IMS change list are applied at next warm/emergency restart

IBM Recommendation: One IMSRSC repository per IMSplex

Page 21: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation21

IMSRSC repository …

IMSRSC repository is composed of up to three pairs of data sets

Primary index data set and primary member data set (required) (COPY1)

Secondary index data set and secondary member data set (required) (COPY2)

Spare index data set and spare member data set (optional) (SPARE)

IMSRSC repository data sets

Primary/secondary/ spare (optional) Primary/secondary/ spare (optional) index data sets member data sets

Page 22: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation22

IMS Repository Server and RM Utilities

RS Batch utilities Batch ADMIN utility (FRPBATCH)• Commands for managing IMSRSC repositories

– Functions such as ADD a new IMSRSC repository, LIST the characteristics of an IMSRSC repository, START or STOP an IMSRSC repository

RM Batch Utilities RM Batch utilities

RDDS to Repository Utility (CSLURP10) Writing to the IMSRSC repository from a non-system

RDDS Can be used for migration

Repository to RDDS Utility (CSLURP20) Creating a non-system RDDS from the IMSRSC

repository data Can be used for backup or for fallback

Page 23: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation23

IMS Repository with DRD Environment

Proclib members in IMS, RM and RS need to be defined as follows–IMS PROCLIB members with DRD/repository enablement

parameters• DFSDFxxx

–RM PROCLIB member with repository enablement parameters• CSLRIxxx

–RS Proclib member with Repository Server parameters• FRPCNFG

All IMS online environments supported, including data sharing and shared queues

Page 24: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation24

Enabling DRD with IMSRSC repository

Define CSL parameters in DFSDFxxx – Enable CSL by defining

<SECTION=COMMON_SERVICE_LAYER>– DFSCGxxx also valid but not preferred

Enable IMS for DRD and repository by defining parameters in DFSDFxxx

– Set MODBLKS=DYN in <SECTION=DYNAMIC_RESOURCES>– Set AUTOEXPORT=AUTO in

<SECTION=DYNAMIC_RESOURCES> to enable autoexport to the IMSRSC repository

– Define <SECTION=REPOSITORY>

Enable RM for IMSRSC repository by defining parameters in CSLRIxxx– Define <SECTION=REPOSITORY>

Create the catalog repository and IMSRSC repository data sets

Set up Repository Server by defining parameters in FRPCNFG – Specifying IMSPLEX parameter for RS to register to SCI

Page 25: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation25

Enabling DRD with repository …

Start SCI– Starting SCI before RS will ensure RS can register to SCI

Start Repository Server(s)– Add the IMSRSC repository to RS using FRPBATCH ADD– Start the IMSRSC repository with FRPBATCH START or ADMIN

START command– List the IMSRSC repository with FRPBATCH LIST or

ADMIN,DISPLAY command (optional) Start OM, CQS (required for MULTI-RM) and RM with IMSRSC

repository enabled. Populate IMSRSC repository from RDDS, MODBLKS or IMS log using

CSLURP10 utility (optional) Cold start IMS if needed (Required to switch to DRD)

– If IMSRSC repository was not previously populated with resource definitions using the CSLURP10 utility, and autoexport is not enabled, export resource definitions to IMSRSC repository using EXPORT command

Page 26: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation26

Enabling DRD with repository …

Issue type-1 and type-2 commands to make resource definition changes in the runtime resource definitions in IMS TSO SPOC, Batch SPOC or REXX SPOC can be used to issue the

IMS commands Ensure any creates or updates changes are hardened in the

IMSRSC repository using autoexport or EXPORT DEFN command. Note: Autoexport to IMSRSC repository is enabled in IMS V14

and above. For IMS V12 and IMS V13 use EXPORT DEFN OPTION(CHANGESONLY) to write out any changes to the IMSRSC repository

For any DELETE commands issues in IMS a DELETE DEFN command must be issued to ensure the resource definitions are deleted from the IMSRSC repository

Page 27: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation27

Allows all resource and descriptor definitions to be read in automatically during IMS cold start

Definitions are used to create the internal runtime control blocks needed to manage resources

During cold start, resource definitions can be imported from–IMSRSC repository–System RDDS–MODBLKS data set–Or not imported at all..

Specified by the AUTOIMPORT= parameter

Automatic Import

Page 28: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation28

MODBLKS data set (typically used for online change -- no DRD) – Contains stored resource definitions from SYSGEN macros

• DATABASE, APPLCTN, TRANSACT, RTCODE– Each IMS system has its own

IMSRSC repository data set (used with DRD with IMSRSC repository)– Can contain stored resource definitions from SYSGEN macros

• DATABASE, APPLCTN, TRANSACT, RTCODE– Also contains…

• Stored resource definition from dynamically created resources–Using command CREATE DB | PGM | TRAN | RTC

• IMS Resource lists for each IMS• IMS Change list(s) if any• Additionally, some control information for RM

MODBLKS Data Set Vs. the IMSRSC repository

Page 29: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Dynamic Resource DefinitionUsage

Page 30: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation30

Commands Used in Dynamic Resource Definition

Command Short Form Purpose

CREATE CRE Create runtime resource or descriptor in IMS

DELETE DEL Delete resource or descriptor (either runtime or stored definition)

UPDATE UPD Update runtime attributes of resource or descriptor Update status of resource

IMPORT IMP Import resource or descriptor definitions from the stored definitions (IMSRSC repository or RDDS) into the runtime definitions

EXPORT EXP Export the runtime resource or descriptor definitions to the stored definitions (IMSRSC repository or RDDS)

QUERY QRY Query stored and runtime attributes of resource or descriptorQuery status of resource

Page 31: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation31

ResourceType SYSGEN Macro IMS Control Block Resource Keyword Descriptor Keyword

Database DATABASE DDIR DB DBDESC

Program/PSB APPLCTN PDIR PGM PGMDESC

Transaction TRANSACT SMB TRAN TRANDESC

Routing Code RTCODE RCTE RTC RTCDESC

Reference Table for Resources & Keywords

Page 32: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation32

EXPORT command writes the IMS systems runtime resource/descriptor definitions to the IMSRSC repository

– The stored resource definitions in the IMSRSC repository will be used at the next IMS coldstart or during the IMPORT command

Can be used to populate an empty repository for the first time after initially migrating to DRD with repository

Resource definitions of the specified name can be written by specifying NAME keyword

Resource definitions that have been modified since last EXPORT can be written using OPTION(CHANGESONLY)

Resource definitions modified in a time range can be exported by specifying STARTTIME() ENDTIME()

EXPORT to IMSRSC repository

EXPORT DEFN TARGET(REPO) TYPE() NAME() STARTTIME() ENDTIME() SET(IMSID()) OPTION()

Page 33: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation33

IMPORT command reads resource/descriptor stored resource definitions from the IMSRSC repository into the IMS system, where they become runtime resource definitions

Can be used to percolate definitional changes made to the offline repository to the active IMS systems, for example:

–Coldstart an IMS with no resources defined, issue IMPORT to read in its definitions

–Make changes to IMSRSC repository then roll them out to running IMS systems

IMPORT from IMSRSC repository

IMPORT DEFN SOURCE() TYPE() NAME() OPTION() SCOPE()

Page 34: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation34

SCOPE() keyword on IMPORT indicates which IMS systems the IMPORT will apply to.

–SCOPE(ALL) will apply the IMPORT command to all IMS systems in the IMSplex for which the resource is defined. This is recommended (default).

• If an IMS is down, an IMS change list is created for it in the IMSRSC repository by the command master IMS

– IMS change list contains the resource names it would have imported had it been up

• IMS change list will be read during warm/emergency restart and the resource definitions of the resources imported when the IMS was down will be applied at the end of warm/emergency restart. This will synchronize the IMS that was down when the IMPORT was issued with the other IMS systems in the IMSplex

–SCOPE(ACTIVE) will apply the IMPORT command to all of the active IMS systems in the IMSplex

• IMS systems that are down will not have an IMS change list created and will not be synchronized with the other systems

– Manual IMPORT or other commands must be issued after IMS restart.

IMPORT Command changes (IMS V13 and above)

Page 35: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation35

QUERY resource definitions

QUERY commands can be used to query the runtime (IMS local) and stored (IMSRSC repository) resource definitions.

The SHOW keyword controls the scope of definition to display.–SHOW(DEFN) returns both the stored and runtime IMS resource

definitions –SHOW(DEFN,GLOBAL) returns only the stored IMS resource

definitions –SHOW(DEFN,LOCAL) returns only the runtime IMS resource

definitions –SHOW(IMSID) returns all IMSIDs that have the specified resource

defined–SHOW(DEFN,IMSID) returns the stored resource definitions + the

stored definition for each IMS + the runtime IMS resource definitions– SHOW(EXPORTNEEDED) added in IMS V14 returns list of

resource name not exported to the IMSRSC repository.

QUERY rsc-type | desc-type NAME() SHOW()

Page 36: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation36

DELETE from IMSRSC repository

Deletes stored resource definitions from the repository, and is processed by one command master IMS

Use this command to harden delete of runtime resource definitions in the IMSRSC repository

–Recommendation is to delete the runtime resource definitions first in IMS using DELETE commands (like DELETE PGM etc) and then use the DELETE DEFN command to delete from the IMSRSC repository

–If resource definition is not deleted from the IMSRSC repository it can be made available at IMS at next coldstart

DELETE DEFN TYPE(CHGLIST) to delete any residual change list that could not be deleted by IMS during normal processing

DELETE DEFN TARGET(REPO) TYPE() NAME() FOR(IMSID()) OPTION()

Page 37: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

IMS V14 Repository Enhancements

Page 38: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation38

Summary of V14 IMSRSC Repository Enhancements Challenge Addressed

– Manual processes are required to harden resource changes to the repository

– Need ability to determine if there are any run-time resource definitions that have not been exported to the repository

Solution Statement– Enable AUTOEXPORT to IMSRSC repository from IMS at IMS checkpoint

time • Only the resources modified or created since last successful export (via

command or AUTOEXPORT) are exported to the IMSRSC repository– Provide the ability to show any new or modified resource definitions that

have not been exported to the IMS repository

Business Value– Improves usability of the IMS Repository – Reduces the chance of an IMS shutting down without hardening changes to

the IMS Repository– If IMS terminates abnormally, it provides the ability to determine if any new

or modified resource definitions need to be written to the repository

Page 39: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation39

IBM Confidential39

Automatic Export to IMSRSC repository Automatic EXPORT to the IMSRSC repository

– Allow IMS to automatically export any resource definition changes since the last export to the IMSRSC repository

– Automatic export is defined by the AUTOEXPORT parameter specified in the DYNAMIC_RESOURCES section of the DFSDFxxx member

• New REPO option is added to AUTOEXPORT parameter– AUTOEXPORT=AUTO|NO|RDDS|REPO

• AUTOEXPORT=AUTO – will automatically export resource definitions to the IMSRSC repository if IMS

is enabled to use the IMSRSC repository » Only done if AUTOEXPORT=AUTO is explicitly specified

– will also automatically export resource definitions to the system RDDS data sets if they are defined

• AUTOEXPORT=REPO

– will automatically export the resource definitions to the IMSRSC repository

• AUTOEXPORT=RDDS

– will automatically export the resources definitions to the System RDDSRDDS

• AUTOEXPORT=NO

– will disable automatic export

Page 40: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation40

IBM Confidential40

Automatic Export to IMSRSC repository: Processing

Automatic EXPORT to the IMSRSC repository processing– Automatic export is driven at IMS checkpoint– Only the changes in the resource definitions (creates or updates) are

exported to the IMSRSC repository• Similar to EXPORT DEFN TARGET(REPO)

OPTION(CHANGESONLY)• A X’22’ map Byte X’51’ log record is written at end of autoexport with

the list of resource names and types that have been autoexported successfully to the IMSRSC repository.

• Run-time resource definitions deleted in IMS due to DELETE commands are not exported during auto export

• User needs to issue DELETE DEFN command to delete resource definitions in the IMSRSC repository

– Any errors during automatic export will result in an error message• Once the error is resolved,

– Issue an EXPORT DEFN OPTION(CHANGESONLY) to complete the export

– Wait until next checkpoint for the automatic export to be driven

Page 41: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation41

IBM Confidential

AUTOEXPORT to repository during IMS shutdown– Auto export during IMS shutdown checkpoint

• IMS shutdown will initiate autoexport to the IMSRSC repository and will wait for autoexport to the repository to complete before starting the IMS

shutdown processing,• A DFS4370I message is issued indicating IMS is checking for resource

definitions to be autoexported to the IMSRSC repository during IMS shutdown.

Note – A /DIS SHUTDOWN STATUS will show shutdown is not in progress when autoexport is in progress as shutdown has not yet started

• Any errors in auto export will fail IMS shutdown• Handling auto export errors during IMS shutdown

– Fix error preventing the auto export and retry the IMS shutdown– Use existing UPD IMS SET(AUTOEXPORT(N)) command to temporarily

turn off AUTOEXPORT and retry the IMS shutdown»Resource definitions that have been created or modified since the last

export are not exported. They will be exported at next IMS restart checkpoint

» If you need to the resource definitions that have not been written to the repository can be extracted from the IMS log using the DFSURCL0 utility.

Page 42: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation42

IBM Confidential

AUTOEXPORT to IMSRSC repository messages

Messages for a successful autoexport to the IMSRSC repository

DFS4390I AUTOMATIC EXPORT INITIATED FOR REPOSITORY TYPE=IMSRSC NAME=IMS_REPOS IMS1 DFS4390I AUTOMATIC EXPORT COMPLETED FOR REPOSITORY TYPE=IMSRSC , NAME=IMS_REPOS IMS1

Messages for an error during autoexport to the IMSRSC repository

DFS4390I AUTOMATIC EXPORT INITIATED FOR REPOSITORY TYPE=IMSRSC , NAME=IMS_REPOS IMS1

DFS4401E RM CSLRPUPD ERROR, RC=01000010 RSN=0000400C ERRORTEXT= IMS1

DFS4390I AUTOMATIC EXPORT FAILED FOR REPOSITORY TYPE=IMSRSC , NAME=IMS_REPOS IMS1

Page 43: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation43

IBM Confidential

Querying resource definitions that have not been exported – using QUERY commands

QUERY commands are enhanced to add EXPORTNEEDED to the SHOW keyword

– SHOW(EXPORTNEEDED) is supported for all IMS resource types that are defined to use the IMSRSC repository

• DB|DBDESC|PGM|PGMDESC|RTC|RTCDESC|TRAN|TRANDESC can be defined to use the IMSRSC repository

– Will return the resource names that have resource definitions that have been modified since the last successful export (EXPORT command or automatic export) and have not yet been exported to the IMSRSC repository

• for example - QUERY PGM SHOW(EXPORTNEEDED) will return all the program names that have been created or updated since the last successful export and not yet exported to the IMSRSC repository.

– QUERY SHOW(EXPORTNEEDED) with specific or generic names on the NAME() keyword will return a response line for each resource name specified.

– SHOW(EXPORTNEEDED) is not supported with other SHOW parameters or other filters like STATUS | RESP etc

Page 44: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation44

IBM Confidential

Examples of QUERY commands with SHOW(EXPORTNEEDED)

Example of command output when there are resources that need to be exported to the IMSRSC repository since the last successful export (autoexport or command)

Response for: QRY TRAN SHOW(EXPORTNEEDED)

Trancode MbrName CC ExportNeeded

APOL11 IMS1 0 Y

SKS1 IMS1 0 Y

SKS2 IMS1 0 Y

SKS3 IMS1 0 Y

SKS4 IMS1 0 Y

SKS5 IMS1 0 Y

SKS6 IMS1 0 Y

SKS7 IMS1 0 Y

SKS8 IMS1 0 Y

SKS9 IMS1 0 Y

Page 45: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation45

IBM Confidential

Examples of QUERY commands with SHOW(EXPORTNEEDED)

Example of command output when there are no resource definitions that need to be exported to the IMSRSC repository since the last successful export (autoexport or command)

Log for: QRY PGM SHOW(EXPORTNEEDED)

Return code . . . : 02000004

Reason code . . . : 00001014

Reason text . . . : At least one request completed with warning(s).

Command master. . : IMS1 Return Reason MbrName Code Code Description IMS1 00000004 00001010 No resources or matches found

Page 46: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation46

IBM Confidential

Querying resource definitions that have not been exported – using a batch utility

DFSURCL0 utility enhancements– DFSURCL0 utility creates a non-system RDDS from the IMS log

• Currently creates a non-system RDDS with the resource definitions of all the resources and descriptors in the IMS log.

– DFSURCL0 utility is enhanced to support filters to create a non-system RDDS with only the resource and descriptor definitions that have not been exported to the IMSRSC repository. This non-system RDDS can be

• used to write the definitions to the IMSRSC repository using the CSLURP10 utility

• specified on the IMPORT command after IMS cold start from IMSRSC repository is complete

Page 47: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation47

IBM Confidential47

The following V12 and V13 coexistence APARs must be applied before IMS V14 Autoexport to IMSRSC repository is enabled.

V12 – PI27283 V13 - PI27285

SHOW(EXPORTNEEDED) on QUERY commands is supported only on IMS V14 IMS systems.

IMS systems below V14 that receive SHOW(EXPORTNEEDED) return an error

EXPORTNEEDED filter on DFSURCL0 is supported only on IMS V14 utility.

Parameter specified on DFSURCL0 on IMS systems below V14 can produce inconsistent results.

Migration/Setup Considerations

Page 48: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation48

IBM Confidential48

Autoexport Migration/Setup Consideration The AUTOEXPORT=AUTO parameter must be explicitly

specified.If AUTOEXPORT=AUTO is defaulted to as it is not specified then autoexport to the IMSRSC repository is not enabled. If RDDS is enabled then autoexport is only to the RDDS and not the IMSRSC repository.

Migration/Setup Considerations

Page 49: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Repository Server Admin Utility & Commands

Page 50: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation50

Repository Server Batch ADMIN Utility (FRPBATCH)

Used for Batch repository administration Invoked using FRPBATCH utility

Command FunctionADD Add a user repository to the Repository Server catalogUPDATE Update user repository definition in the RS catalog repositoryRENAME Rename an existing user repository in the RS catalog repositoryDELETE Remove a user repository from the RS catalog repositoryDSCHANGE Change data set dispositionLIST List status information for all user repositories or detailed

information for a single user repository

START Request the Repository Server to start a user repository

STOP Request the Repository Server to stop a user repository

Page 51: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation51

Repository Server Commands

Used for online repository and RS administrationCommands issued using z/OS Modify interface

Command Function

ADMINAdministrative functions – change repository data set

disposition, display repository data set attributes, start/stoprepositories

AUDIT Dynamically change audit level originally specified in FRPCFG member

SECURITY Refresh RACF profile definitions

SHUTDOWN Shutdown one or more repository server address spaces

STOP Stop/shutdown specific repository server

Page 52: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation52

Batch ADMIN and z/OS Modify Interface Commands

Batch ADMIN Repository Server z/OS Modify Interface

ADD

LIST ADMIN DISPLAY

START ADMIN START

STOP ADMIN STOP (repository, not Repository Server)

RENAME

DELETE

DSCHANGE ADMIN DSCHANGE

UPDATE

AUDIT (change audit level)

SECURITY (refresh in-storage profiles)

SHUTDOWN

STOP (stops Repository Server)

Page 53: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation53

Example Use Case Scenarios

Page 54: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation54

Creating/Updating Resources in a Cloned Environment

Scenario: A 3-way IMSplex with cloned IMS systems (IMSA, IMSB and IMSC) is defined to the IMSRSC repository.

–IMSA and IMSB are active and IMSC is inactive. –Program named PGMCAR and Transaction named TRANCAR need

to be created in the IMSplex. –To create the runtime resources at test system IMSA, issue the

following commands:• CREATE PGM NAME(PGMCAR) routed to IMSA • CREATE TRAN NAME(TRANCAR) SET(PGM(PGMCAR)) routed

to IMSA

Page 55: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation55

Creating/Updating Resources in a Cloned Environment w/o autoexport

To write the resource definitions to the repository for all IMS systems, defined to use the repository without autoexport enabled

• EXPORT DEFN TARGET(REPO) OPTION(CHANGESONLY) SET(IMSID(*)) – Resource definitions for the program PGMCAR and

transaction TRANCAR are written to the IMSRSC repository and are defined for IMSA, IMSB and IMSC

– Program name PGMCAR and transaction name TRANCAR are added to the IMS resource lists for IMSA, IMSB and IMSC

– The EXPORT command output will show the resource names exported and the IMSids they are defined for.

– Program PGMCAR and transaction TRANCAR can be imported to IMSB and IMSC during next coldstart or IMPORT command.

Page 56: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation56

Creating/Updating Resources in a Cloned Environment with autoexport

To create the resource definitions to the repository for a new IMS systems to be defined to the repository with autoexport enabled:

IMSA, IMSB and IMSC are defined with AUTOEXPORT=AUTO and AUTOEXPORT_IMSID=ALL as this is a cloned environment

Issue /CHE command to trigger autoexport to the repository– Resource definitions for the program PGMCAR and

transaction TRANCAR are written to the IMSRSC repository and are defined for IMSA, IMSB and IMSC

– Program name PGMCAR and transaction name TRANCAR are added to the IMS resource lists for IMSA, IMSB and IMSC

– IMSA writes the X’22’ mapbyte X’51’ log record with the resource definitions that have been exported and the IMSid’s the resource definitions are defined for.

– Program PGMCAR and transaction TRANCAR can be imported to IMSB and IMSC during next coldstart or IMPORT command.

Page 57: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation57

Creating/Updating Resources for a new IMS

To create the resource definitions to the repository for a new IMS system IMSD to be defined to the repository:

EXPORT DEFN TARGET(REPO) NAME(*) SET(IMSID(IMSD)) ROUTE(IMSA)

Resource definitions for all the resource and descriptor definitions in IMSA will be written to the repository for IMSD

IMS resource lists are created for IMSD for each resource type defined to the repository

Page 58: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation58

Importing Resource definitions in a Cloned Environment

–To activate the resource definitions in the IMSplex, issue:• IMPORT DEFN SOURCE(REPO) NAME(PGMCAR,TRANCAR)

SCOPE(ALL) OPTION(UPDATE)– As IMSA and IMSB are active, IMPORT command– Updates PGMCAR and TRANCAR in IMSA – Creates PGMCAR and TRANCAR in IMSB– How about IMSC and IMSD?

Page 59: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation59

How will IMSC and IMSD apply all of these changes?–If IMSC and IMSD are IMS V12:

• After the IMS systems are restarted, user needs to take one of the following action:

–Issue IMPORT DEFN SOURCE(REPO) NAME(PGMCAR,TRANCAR) routing to IMSC, IMSD

–Issue CREATE commands at IMSC and IMSD for PGMCAR and TRANCAR

–If IMSC and IMSD are IMS V13, • An IMS change list is created in the IMSRSC repository by the

command master IMS during IMPORT command processing for IMSC and IMSD with names PGMCAR and TRANCAR.

• IMSC at the end of restart (warm or emergency) reads the change list and the resource names PGMCAR and TRANCAR are automatically imported from the repository.

• IMSD as is a new IMS at coldstart will read all the resource definitions from the repository. Its change list is deleted at coldstart.

Importing Resource definitions in a Cloned Environment …

Page 60: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation60

IMPORT command output (IMS V13)

IMPORT DEFN SOURCE(REPO) NAME(PGMCAR,TRANCAR) OPTION(UPDATE)

Name Type MbrName CC ImpType IMSidPGMCAR PGM IMSA 0 PGMCAR PGM IMSB 0PGMCAR PGM IMSA 0 CHGLIST IMSCPGMCAR PGM IMSA 0 CHGLIST IMSD TRANCAR TRAN IMSA 0 TRANCAR TRAN IMSB 0TRANCAR TRAN IMSA 0 CHGLIST IMSDTRANCAR TRAN IMSA 0 CHGLIST IMSC

Explanation: IMSC and IMSD are down and have resources PGMCAR and TRANCAR defined and so a change list is created for them in the repository. IMSA and IMSB import the definitions as they are active. IMSA is command master that created the changed list.

Page 61: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation61

Query Resource definitions in the IMSRSC repository

Below are the resource definitions in the IMS repository after either the EXPORT command or autoexport:

QRY PGM NAME(*CAR) SHOW(IMSID)PgmName MbrName CC Repo IMSidPGMCAR IMSB 0 Y IMSAPGMCAR IMSB 0 Y IMSBPGMCAR IMSB 0 Y IMSCPGMCAR IMSB 0 Y IMSD

QRY TRAN NAME(*CAR) SHOW(IMSID,DEFN,PGM)Trancode MbrName CC Repo IMSid PSBname LPSBnameTRANCAR IMSB 0 Y PGMCAR TRANCAR IMSB 0 Y IMSA PGMCAR TRANCAR IMSB 0 Y IMSB PGMCAR TRANCAR IMSB 0 Y IMSC PGMCAR TRANCAR IMSB 0 Y IMSD PGMCAR TRANCAR IMSA 0 IMSA PGMCAR TRANCAR IMSB 0 IMSB PGMCAR

Page 62: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation62

Updating Resources in a Non-Cloned Environment

Scenario: 2-way IMSplex with non-cloned systems IMSX and IMSY is defined to the IMSRSC repository.

–IMSX and IMSY are activeRoute commands to individual IMS systems, for example:

–Route the following commands to IMSX only• UPDATE PGM NAME(PGMAAA) SET(TRANSTAT(Y))• EXPORT DEFN TARGET(REPO) TYPE(PGM) NAME(PGMAAA)

–Route the following commands to IMSY only• UPD PGM NAME(PGMDDD) SET(SCHDTYPE(PARALLEL))• EXPORT DEFN TARGET(REPO) TYPE(PGM)

OPTION(CHANGESONLY) SET(IMSID(IMSY))

Page 63: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation63

Updating Resources in a Non-Cloned Environment w/o autoexport

Scenario: 2-way IMSplex with non-cloned systems IMSX and IMSY is defined to the IMSRSC repository.

–IMSX and IMSY are activeRoute commands to individual IMS systems, for example:

–Route the following commands to IMSX only• UPDATE PGM NAME(PGMAAA) SET(TRANSTAT(Y))• EXPORT DEFN TARGET(REPO) TYPE(PGM) NAME(PGMAAA)

–Route the following commands to IMSY only• UPD PGM NAME(PGMDDD) SET(SCHDTYPE(PARALLEL))• EXPORT DEFN TARGET(REPO) TYPE(PGM) NAME(PGMDDD)

FOR(IMSID(IMSY))

Page 64: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation64

Updating Resources in a Non-Cloned Environment with autoexport

Scenario: 2-way IMSplex with non-cloned systems IMSX and IMSY is defined to the IMSRSC repository.

– IMSX and IMSY are defined with AUTOEXPORT=AUTO (explicitly specified) and AUTOEXPORT_IMSID=THIS_IMS as they are non-cloned

–IMSX and IMSY are activeRoute commands to individual IMS systems, for example:

– Route the following command to IMSX only– UPDATE PGM NAME(PGMAAA) SET(TRANSTAT(Y))

– Route the following command to IMSY only– UPD PGM NAME(PGMDDD) SET(SCHDTYPE(PARALLEL))

– Route the /CHE command to IMSX and IMSY take a checkpoint and trigger autoexport to IMSX and IMSY

– IMSX will write the updated changes for program PGMAAA for IMSX only

– IMSY will write the updated changes for program PGMDDD for IMSY only

Page 65: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation65

Deleting Resources for another IMS in the IMSplex

Scenario: 4-way IMSplex with 4 systems (IMSA, IMSB, IMSC, IMSD) is defined to the IMSRSC repository.

– IMSA and IMSB are active– IMSC and IMSD are not active

Route the following commands to all IMSs that are active• DELETE PGM NAME(PGMDDD)

– Will delete PGMDDD if defined

• DELETE DEFN TARGET(REPO) TYPE(PGM) NAME(PGMDDD) FOR(IMSID(IMSD))

– Command can be routed to any IMS to be deleted from the repository for another IMS

– Resource PGMDDD does not have to be defined at IMS processing the DELETE DEFN

Page 66: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation66

Generating an IMSRSC repository from MODBLKS

Several DRD utilities are available to assist with migration, fallback and recoverability

To populate an IMSRSC repository with all resource definitions in MODBLKS1. Create a temporary resource definition data set (RDDS) 2. Populate this RDDS with MODBLKS definitions using one of the

following– Create RDDS from MODBLKS utility (DFSURCM0) – Create RDDS from Log Records utility (DFSURCL0) – Issue an EXPORT with TYPE(ALL) and NAME(*) command to

populate a non-system RDDS3. Use this populated RDDS as input to RDDS to Repository utility

(CSLURP10)

Page 67: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation67

Copying Repositories To copy the contents of one repository to another in a cloned environment:

–Capture all stored resource definitions in the initial repository by running CSLURP20 “Repository to RDDS” utility against it, specifying any one IMSID in the JCL, and using a non-system RDDS as output

–Transfer these stored definitions to a different repository by running CSLURP10 “RDDS to Repository” utility specifying all IMSIDs in the JCL, using the non-system RDDS as input, and the new repository as output

Repository 2

Repository 1

Non-SystemRDDS

CSLURP20 with

IMSID(IMS1)

CSLURP10 with

IMSID(IMS1, IMS2, IMS3)

IMS1 IMS2 IMS3

Page 68: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation68

IMS1

IMS2

IMS3

Repository 1

CSLURP20 with

IMSID(IMS1)

CSLURP20 with

IMSID(IMS2)

CSLURP10 with

IMSID(IMS1) only

Non-SystemRDDS1

Non-SystemRDDS2

Non-SystemRDDS3

CSLURP10 with

IMSID(IMS2) only

Repository 2

CSLURP20 with

IMSID(IMS3)

CSLURP10 with

IMSID(IMS3) only

Copying Repositories …

To copy the contents of one repository to another in a non-cloned environment:

–Capture all stored resource definitions in the initial repository by running CSLURP20 “Repository to RDDS” utility against it for each IMS, each time using a different non-system RDDS as output

–Transfer these stored definitions to a different repository by running CSLURP10 “RDDS to Repository” utility once for each IMS, using the non-system RDDS as input and the new repository as output

Page 69: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Repository Security Considerations

Page 70: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation70

Access to a user repository can be gained through RM by either of the following types of RM callers– Authorized RM caller

• IMS online commands– Non-authorized RM callers

• RM Batch utilities (CSLURP10, CSLURP20) Access to a Repository Server can be gained directly by either of the

following– Batch ADMIN utility– z/OS modify interface

Repository Access

Page 71: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation71

Connection security– Used by both authorized and non-authorized RM callers when they

attempt to connect to the repository– RM specifies its USERID on its startup JCL, to be used in RACF

authorization • If RM is authorized to access the repository, so is IMS since it is

an authorized RM caller– RM Utilities specify their USERIDs in JCL, to be used for SCI

registration and for RACF authorization

Member-level security– Only used with non-authorized RM callers that access individual

members within the repository • CSLURP10• CSLURP20

Types of Repository Security

Page 72: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation72

Repository Security Implementation

Repository Server resources can be restricted from unauthorized access, including:– User repository– RS catalog repository– Resource Names or Members within a user repository

You can choose a RACF class to protect RS resources in– RACF FACILITY class– User-defined class (recommended if using member-level security

due to 39-character profile name length restriction of FACILITY class)

• Add new class to RACF Class Descriptor Table (ICHRRCDE)• Update RACF Router Table (ICHRFR01) with new class

Protect resources by defining general resource profiles Grant access to users using defined resource profiles

Page 73: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation73

Protecting Repository Server Resources

Define profiles to restrict access to Repository Server resources to authorized users

User repository– Format for defining resource profile

• FRPREP.repositoryname– Example

• RDEFINE XFACILIT FRPREP.IMSRSC_REPOSITORY1 UACC(NONE)

• RDEFINE XFACILIT FRPREP.* UACC(NONE) RS catalog repository

– Format for defining resource profile• FRPREP.CATALOG

– Example• RDEFINE XFACILIT FRPREP.CATALOG UACC(NONE)

Page 74: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation74

Members within a repository (for non-authorized RM callers only) FRPMEM.repositoryname.DFS.RSC.membername

member name

Protecting Repository Server Resources…

plexname rsctype rscname+ +

plexname 8-byte CSL plexname where repository is defined (MUST start with characters “CSL”)

8-byte resource type: DB,DBDESC,PGM,PGMDESC, TRAN,TRANDESC,RTC,RTCDESC

rsctype

rscname

Example: RDEFINE XFACILIT FRPMEM.REPO1.DFS.RSC.CSLPLEX1.TRAN.PART

UACC(NONE)

8-byte resource name to be secured

Page 75: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation75

Comparison of DRD Use with the RDDS Versus the Repository

Page 76: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation76

Deleting Resources – RDDS Versus Repository

Deleting a resource definition when DRD with RDDS–To delete a resource, issue a DELETE command at each IMS system that

contains the runtime resource definition–Example: DELETE TRAN NAME(TRANA)

–Automatic export will occur at system checkpoint and remove the deleted resource from the system RDDS as the entire resource definitions are written

–EXPORT with OPTION(OVERWRITE) can be issued to write the entire resource definitions in IMS to the system/non-system RDDS

–Example: EXPORT DEFN TARGET(RDDS) … OPTION(OVERWRITE) Deleting a resource when DRD with IMSRSC repository

–To delete a resource, issue a DELETE command at each IMS system that contains the runtime resource definition (same as RDDS DRD)

– Issue a DELETE DEFN command to remove the deleted resource definitions from repository, specifying FOR(IMSID()) to indicate which IMS systems that the deletes were performed on

– If DELETE DEFN is not issued then the resource definitions will be created during coldstart from the IMSRSC repository.

–EXPORT command cannot harden deleted resources to repositoryNote: IMS V14 Automatic export to the IMSRSC repository does not handle deleted resource definitions.

Page 77: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation77

Importing Resources – RDDS Versus Repository

Importing a resource when DRD with RDDS– IMPORT DEFN SOURCE(RDDS) is processed at each IMS it is routed to,

and each IMS reads in definitions from the specified RDDS data set

Importing a resource when DRD with IMSRSC repository– IMPORT DEFN SOURCE(REPO) is processed at each IMS it is routed to,

and each system reads in stored definitions from its IMS resource list within the shared repository

– SCOPE(ALL) new parameter for IMPORT only applies to repository DRD–Creates change list for IMS systems that are not active and have the

resource definitions defined. Enables inactive IMSs to apply changes at /NRE or /ERE

Both RDDS DRD and repository DRD can create new and update existing runtime resource definitions using an IMPORT command.

Page 78: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation78

Exporting Resources – RDDS Versus Repository

Export when DRD with RDDS–Handles resource additions, changes and deletions –Automatic export can occur at system checkpoint, which overwrites

entire contents of oldest system RDDS with the IMS's definitions–EXPORT DEFN TARGET(RDDS) command can overwrite an entire

system/non-system RDDS or append to it–Each IMS has its own system RDDS that contains its entire set of

definitions–When IMS clones exist together in an IMSplex, EXPORT

command must be routed to each of the IMSs–Command could fail on some IMSs and succeed on others–Manual coordination is required to keep system RDDSs

associated with different IMS clones consistent with same contents

–EXPORT only applies to active IMS systems–No way of applying DRD activity occurring in IMSplex to an

inactive IMS

Page 79: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation79

Exporting Resources – RDDS Versus Repository... Export when DRD with IMSRSC repository

– Handles only resource additions and changes (no deletions)– Automatic export of creates and updates is supported IMS V14 and

above– To write out creates and updates without autoexport, issue

EXPORT to repository with OPTION(CHANGESONLY) or STARTTIME/ENDTIME, routing command

• Omit SET(IMSID()) in non-cloned environment and route command to each IMS in the IMSplex• Specify SET(IMSID(*)) in a cloned environment and route command to one IMS in the IMSplex

– Automatic export of deleted resource definitions is not supported– DELETE DEFN with NAME() specifying runtime resources that

have been deleted with DELETE command and FOR(IMSID()) specifying which IMS resource lists should be issued to delete the resource definitions from the repository

– Each IMS has its own IMS resource list within one shared repository that contains its entire set of definitions

Page 80: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation80

Exporting Resources – RDDS Versus Repository

Export when DRD with IMRSC repository cont'd – RM performs resource validation for transactions/routing

codes being added to repository to ensure that an associated program exists (or that the program is also being added via EXPORT)

– EXPORT fails if associated program is not present– RM performs resource attribute validation for programs,

transactions, and routing codes being added to the repository to ensure they do not conflict with associated resources’ attributes

– Example: a transaction updated to FP(E) will cause RM to check that the associated program is defined as FP exclusive

– If there is a conflict for even one resource the EXPORT command is aborted and error is returned to the caller.

Page 81: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation81

New parameters on EXPORT DEFN only applicable with TARGET(REPO)–STARTTIME() and ENDTIME()–OPTION(CHANGESONLY)

Parameters on EXPORT DEFN only applicable with TARGET(RDDS): –OPTION(APPEND)–OPTION(OVERWRITE)

Exporting Resources – RDDS Versus Repository

Page 82: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Best Practices

Page 83: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation83

Best Practices for IMS Repository and Migration

Listed are some best practices to take into consideration for IMS Repository Usage and Migration

–Populate IMSRSC repository from the IMS MODBLKS, SYSGEN macros or IMS log using CSLURP10 utility

–Enable IMS and RM with IMSRSC repository at start-up or type-2 commands. IMSs can be updated to IMSRSC repository on a rolling basis

–Use EXPORT DEFN TARGET(REPO) OPTION(CHANGESONLY) command periodically or after changes are made to ensure changes are hardened to the IMS repository

• in a cloned environment use SET(IMSID(*))• in a non-cloned environment route the command to each

IMS without SET(IMSID()) specified, will default to the IMSid of the IMS processing the command

Note: If IMS V14 consider enabling autoexport to IMSRSC repository

Page 84: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation84

Best Practices for IMS Repository and Migration

–Formulate resource naming conventions –Use QUERY SHOW(DEFN,IMSID) commands to display stored

and runtime resource definitions to ensure definitions are in-sync between IMS systems and the IMSRSC repository

–Plan and practice what to do if the repository data sets are corrupted

• May need to scratch and re-allocate the IMSRSC repository DSN

• May need to populate the IMSRSC repository from the active IMSs using EXPORT commands or using the CSLURP10 utility

• May be able to restore from back-ups–Enable OM Audit Trail to track IMSplex activity, including

command input and command responses.

Page 85: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation85

Repository Startup Sequence Guidelines

Recommended start up sequence with RS and the CSL components

SCI OM CQS RS RM IMS

DBRC SPOC ODBM IMS Connect

Page 86: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation

Summary

Page 87: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation87

Value of the IMSRSC repository

Full support for populating, managing, storing, sharing, and retrieving a consistent set of DRD stored resource definitions for multiple-IMS IMSplexes and single-IMS IMSplexes in a single place

Provides improved availability–Repository can be enabled/disabled without an IMS outage via

command–Duplexing of data plus spare capability improves data availability

Provides single source consistency for DRD stored resource definitions –No need for multiple sets of RDDSs in a multiple-IMS IMSplex –No need for coordinating multiple sets of RDDSs in a multiple-IMS

IMSplex–Repository architecture controls consistency and integrity of data

Page 88: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation88

Value of the IMSRSC Repository for DRD cont’d

Provides improved functionality and flexibility for managing resources across an IMSplex

–AUTOEXPORT to IMSRSC repository is supported in IMS V14–DELETE of stored resource definitions controlled by user–Can UPDATE an existing runtime definition via IMPORT –DFSINSX0 created resource definitions can be exported to the

IMSRSC repository–QUERY commands to display both runtime and stored resource

definitions

Page 89: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation89

Value of the IMSRSC Repository for DRD cont’d

Provides support for both test and production environments–Repository Server can include data from different IMSplexes

though one per IMSplex recommended–Multiple IMSRSC repositories can exist in one Repository

Catalog Repository managed by a Repository Server though one per Repository Server is recommended

– Note: The Catalog Repository is not the same as the IMS Catalog

–Migration and fallback utilities available based on RDDSs –IVP available to assist with installation of repository–Supported by TSO SPOC Manage Resources application

Page 90: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation90

Value of the IMSRSC Repository for DRD cont’d

Provides security capabilities for auditing and compliance

Full support for RACF (SAF) interfaces–Repository audit log (optional)–OM type-2 commands optionally found in OM Audit Trail

Provides comprehensive set of repository administration tools–Includes batch utilities and command interfaces for repository

management • Can be performed when IMS is down

A strategic IMS architectural direction–Based upon BPE, CSL, IMSplex architecture

Page 91: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation91

Questions?

Page 92: IMS Fundamentals - Define system resources dynamically

© 2015 IBM Corporation92

Become part of IMS's Social Community

92