dynamic change management in ims, simplified to deliver higher availability - ims rug minneapolis,...
DESCRIPTION
Learn about the set up, access and use of the IMS Repository. The second part of this presentation presentS Use Case scenarios for the Repository.TRANSCRIPT
© 2014 IBM Corporation
Dynamic Change Management in IMS,
Simplified to Deliver Higher Availability
Anu Vakkalagadda,
Senior Software Engineer
IMS Development, IBM
IBM Regional User Group Meeting
September 24, 2014
© 2014 IBM Corporation
2
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.
© 2014 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 2014. 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.
© 2014 IBM Corporation
44
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– Comparison of DRD with RDDS and Repository– Best practices for migration and usage– Summary
© 2014 IBM Corporation
Dynamic Resource Definition
(DRD) Review
© 2014 IBM Corporation
6
Modifying MODBLKS Resources without DRD
© 2014 IBM Corporation
7
DRD with RDDS
© 2014 IBM Corporation
8
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
(new for IMS V13)•Increased resource availability• Runtime changes made using type-2 commands in IMS
•Resources quiesced as needed
© 2014 IBM Corporation
DRD with IMSRSC repository (IMSplex)
© 2014 IBM Corporation
10
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
© 2014 IBM Corporation
11
Modifying Resources using DRD with IMSRSC repository
© 2014 IBM Corporation
12
IMS Repository Function Architecture
Operations
Manager
(OM)
IMS
Control
Region
Repository
Server
(RS)
SCI
SCI
SCI
XCF
X
C
F
X
C
F
RS Catalog Repository
Primary/Secondary
IMSRSC Repository
Primary/Secondary/Spare
Batch ADMIN
Utility
(FRPBATCH)
RM utilities
CSLURP10 /
CSLURP20
RS
Au
dit L
og
X
C
F
Structured
Call Interface
SCI
Resource
Manager
(RM)
SCI
IMS
Control
Region
SCI
IMS
Control
Region
SCI
© 2014 IBM Corporation
13
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
© 2014 IBM Corporation
14
IMS Repository Function components J
� 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
© 2014 IBM Corporation
15
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
© 2014 IBM Corporation
16
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
© 2014 IBM Corporation
17
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
© 2014 IBM Corporation
18
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 defined
Two types of repository data sets
• Catalog repository data sets
• IMS repository data sets
repository index
data sets
(primary / secondary)
repository member
data sets
(primary / secondary)
© 2014 IBM Corporation
19
IMS Repository Server components J
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
© 2014 IBM Corporation
20
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
© 2014 IBM Corporation
21
IMSRSC repository J
� 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
© 2014 IBM Corporation
22
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
© 2014 IBM Corporation
23
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
© 2014 IBM Corporation
24
Enabling DRD with 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>– Define <SECTION=REPOSITORY>
� Enable RM for IMSRSC repository by defining parameters in CSLRIxxx– Define <SECTION=REPOSITORY>
� Set up Repository Server by defining parameters in FRPCNFG – Create catalog repository data sets– Create IMSRSC repository data sets
© 2014 IBM Corporation
25
Enabling DRD with repository J
� Start Repository Server(s)– Define the IMSRSC repository to RS and start it
� Start SCI, OM, CQS (optional) and RM with 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 not previously populated with resource definitions
using CSLURP10 utility, export resource definitions to IMSRSC repository using EXPORT command.
� Use type-2 commands to create, update, delete, import and export and query resource definitions
– Harden changes in the IMSRSC repository using EXPORT DEFN or DELETE DEFN commands to ensure changes are available for next coldstart.
– No autoexport to IMSRSC repository
© 2014 IBM Corporation
26
�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
© 2014 IBM Corporation
Dynamic Resource Definition
Usage
© 2014 IBM Corporation
28
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)
© 2014 IBM Corporation
29
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
© 2014 IBM Corporation
30
� 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()
© 2014 IBM Corporation
31
� 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()
© 2014 IBM Corporation
32
� 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 – IMS V13 Changes
© 2014 IBM Corporation
33
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
QUERY rsc-type | desc-type NAME() SHOW()
© 2014 IBM Corporation
34
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()
© 2014 IBM Corporation
35
Repository Server Batch ADMIN Utility (FRPBATCH)
�Used for Batch repository administration
� Invoked using FRPBATCH utility
Command Function
ADD Add a user repository to the Repository Server catalog
UPDATE Update user repository definition in the RS catalog repository
RENAME Rename an existing user repository in the RS catalog repository
DELETE Remove a user repository from the RS catalog repository
DSCHANGE Change data set disposition
LIST List status information for all user repositories or detailed
information for a single user repository
© 2014 IBM Corporation
36
Repository Server Commands
�Used for online repository and RS administration
�Commands issued using z/OS Modify interface
Command Function
ADMIN Administrative functions – change repository data set disposition, display repository data set attributes, start/stop repositories
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
© 2014 IBM Corporation
37
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
© 2014 IBM Corporation
38
Example Use Case Scenarios
© 2014 IBM Corporation
39
Creating/Updating Resources in a Cloned Environment
�Scenario: A 3-way IMSplex with cloned 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
© 2014 IBM Corporation
40
Creating/Updating Resources in a Cloned Environment ..
� To write the resource definitions to the repository for all IMS systems, defined to use the repository
• 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
� To create the resource definitions to the repository for a new IMS systems 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
© 2014 IBM Corporation
41
Creating/Updating Resources 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?
© 2014 IBM Corporation
42
�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.
Creating/Updating Resources in a Cloned Environment J
© 2014 IBM Corporation
43
IMPORT command output (IMS V13)
IMPORT DEFN SOURCE(REPO) NAME(PGMCAR,TRANCAR) OPTION(UPDATE)
Name Type MbrName CC ImpType IMSid
PGMCAR PGM IMSA 0
PGMCAR PGM IMSB 0
PGMCAR PGM IMSA 0 CHGLIST IMSC
PGMCAR PGM IMSA 0 CHGLIST IMSD
TRANCAR TRAN IMSA 0
TRANCAR TRAN IMSB 0
TRANCAR TRAN IMSA 0 CHGLIST IMSD
TRANCAR TRAN IMSA 0 CHGLIST IMSC
Explanation: IMSC and IMSD are down and have resources PGMCAR
and TRANCAR defined and so a changelist 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.
© 2014 IBM Corporation
44
Query Resource definitions in the IMSRSC repository
�Below are the resource definitions in the IMS repository
QRY PGM NAME(*CAR) SHOW(IMSID)
PgmName MbrName CC Repo IMSid
PGMCAR IMSB 0 Y IMSA
PGMCAR IMSB 0 Y IMSB
PGMCAR IMSB 0 Y IMSC
PGMCAR IMSB 0 Y IMSD
QRY TRAN NAME(*CAR) SHOW(IMSID,DEFN,PGM)
Trancode MbrName CC Repo IMSid PSBname LPSBname
TRANCAR 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
© 2014 IBM Corporation
45
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 active
�Route 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))
© 2014 IBM Corporation
46
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 active
�Route 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))
© 2014 IBM Corporation
47
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))– Resource PGMDDD does not have to be defined at IMS
processing the DELETE DEFN or defined for the IMS in the repository.
© 2014 IBM Corporation
48
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 RDDS
3. Use this populated RDDS as input to RDDS to Repository utility (CSLURP10)
© 2014 IBM Corporation
49
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
2Repository
1
Non-System
RDDS
CSLURP20
with
IMSID(IMS1)
CSLURP10
with
IMSID(IMS1,
IMS2, IMS3)
IMS1 IMS2 IMS3
© 2014 IBM Corporation
50
IMS1
IMS2
IMS3
Repository
1
CSLURP20
with
IMSID(IMS1)
CSLURP20
with
IMSID(IMS2)
CSLURP10
with
IMSID(IMS1)
only
Non-System
RDDS1
Non-System
RDDS2
Non-System
RDDS3
CSLURP10
with
IMSID(IMS2)
onlyRepository
2
CSLURP20
with
IMSID(IMS3)
CSLURP10
with
IMSID(IMS3)
only
Copying Repositories J
�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
© 2014 IBM Corporation
Repository Security Considerations
© 2014 IBM Corporation
52
� 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
© 2014 IBM Corporation
53
� 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
© 2014 IBM Corporation
54
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
© 2014 IBM Corporation
55
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)
© 2014 IBM Corporation
56
� Members within a repository (for non-authorized RM callers only)
� FRPMEM.repositoryname.DFS.RSC.membername
Protecting Repository Server ResourcesJ
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,RTCDESCrsctype
rscname 8-byte resource name to be secured
Example:
RDEFINE XFACILIT FRPMEM.REPO1.DFS.RSC.CSLPLEX1.TRAN.PART
UACC(NONE)
© 2014 IBM Corporation
57
Comparison of DRD Use with the RDDS Versus the Repository
© 2014 IBM Corporation
58
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
– EXPORT with OPTION(OVERWRITE) can be issued at an IMS that deletes were performed on, to remove the deleted resource from the system/non-system RDDS
– Example: EXPORT DEFN TARGET(RDDS) J 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 from repository, specifying FOR(IMSID()) to indicate which IMS systems that the deletes were performed on
– EXPORT command cannot harden deleted resources to repository
© 2014 IBM Corporation
59
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 changelist 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.
© 2014 IBM Corporation
60
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
© 2014 IBM Corporation
61
Exporting Resources – RDDS Versus Repository...
� Export when DRD with IMSRSC repository
– Handles only resource additions and changes (no deletions)
– Automatic export not supported
– To achieve same effect within repository, issue:
– EXPORT to repository with OPTION(CHANGESONLY) or STARTTIME/ENDTIME, routing command
•Omit SET(IMSID()) in non-cloned env and route command to each IMS in the IMSplex
• Specify SET(IMSID(*)) in a cloned env and route command to one IMS in the IMSplex
– DELETE DEFN with NAME() specifying runtime resources that have been deleted with DELETE command and FOR(IMSID()) specifying which IMS resource lists should remove these resources
– Each IMS has its own IMS resource list within one shared repository that contains its entire set of definitions
© 2014 IBM Corporation
62
Exporting Resources – RDDS Versus Repository...
� Export when DRD with IMRSC repository cont'd
– Processed by one command master IMS as a single unit of work
– Can export definitions to an IMS that is inactive – resource changes will be applied when the IMS restarts
– Issue EXPORT with SET(IMSID()) specified, including the IMSID of the inactive IMS
– The inactive IMS's stored resources definitions within the repository will be updated with the definitional changes (additions and changes only)
– If there have been deletions that should be reflected in the inactive IMS system, issue DELETE DEFN specifying the name on FOR(IMSID())
© 2014 IBM Corporation
63
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.
© 2014 IBM Corporation
64
�New parameters only applicable to repository DRD–STARTTIME() and ENDTIME()
–OPTION(CHANGESONLY)
�Parameters applicable to RDDS DRD–OPTION(APPEND)
–OPTION(OVERWRITE)
Exporting Resources – RDDS Versus Repository
© 2014 IBM Corporation
Best Practices
© 2014 IBM Corporation
66
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
© 2014 IBM Corporation
67
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.
© 2014 IBM Corporation
68
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
© 2014 IBM Corporation
Summary
© 2014 IBM Corporation
70
Value of the IMS 12 repository for DRD
�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
© 2014 IBM Corporation
71
Value of the IMS 12 Repository for DRD
�Provides improved functionality and flexibility for managing
resources across an IMSplex–EXPORT process controlled by user (no AUTOEXPORT)–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
© 2014 IBM Corporation
72
Value of the IMS 12 Repository for DRD
�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 Catalog
Repository managed by a Repository Server though one per
Repository Server is recommended–Migration and fallback utilities available based on RDDSs –IVP available to assist with installation of repository–Supported by TSO SPOC Manage Resources application
© 2014 IBM Corporation
73
Value of the IMS 12 Repository for DRD
�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
© 2014 IBM Corporation
74
Questions?
© 2014 IBM Corporation
75
Become part of IMS's Social Community
75