SMP/E • Who is this session for? • What is SMP/E? • Why would you use it? • Where does it fit in? • An SMP/E environment. • Terminology • Process Flow
Who is this session for? If you are new to maintaining software on the mainframe and want to understand what magic is happening under the covers of • Hear the buzzwords, get the scoop on the lingo, see the structures , and learn the steps to use SMP/E to keep your mainframe humming .
What is SMP/E? SMP/E is the basic tool for installing and maintaining software in z/OS systems and subsystems . It controls these changes at the element level by: Selecting the proper levels of elements to be installed from a large number of potential changes Calling system utility programs to install the changes Keeping records of the installed changes
Why would you use it? • The product is delivered in this format • Upgrade a product • Fix a problem with a product • Track an installation defined change
Where does it fit in? The “mainframe” platform. MVS ” environment aka OS/390, z/OS. Not VM. Not Linux. Other Independent Software Vendors (ISV) products. ISPF based dialog and Batch jobs.
An SMP/E environment - zones • Global Zone – Waiting to be installed • Target Zone – Runnable copy • Distribution Zone – Source – Backup
SMP/E components - Global Structure • CSI - Consolidated Software Inventory – Describes Target and Distributions zones – Processing options – Status of work in progress – Exception data (hold for user acknowledgement) • Libraries (DDDEFs) – SMPPTS – Logs
SMP/E components - Distribution Structure • CSI - Consolidated Software Inventory – Describes modules (programs and subroutines) • Libraries (DDDEFs) – Samples – Other text members – Logs
SMP/E - packaging parts • Function - A product identified by a unique FMID, a logical group of elements. – FMID - Function Modification IDentifier is a SYSMOD id assigned to a function. • SYSMOD id - Identifier assigned to a SYStem MODification . – SYSMOD - input to SMP/E that defines the action to take on one or more elements. • Element - a single part of a product; a unique member of a PDS(E) or file in an HFS. • Program Temporary Fix (PTF) - a SYSMOD that changes one or more elements. • USERMOD - your modification to a vendor supplied element.
SMP/E - packaging parts • Authorized Program Analysis Report (APAR) - a temporary fix released before a PTF is packaged. • Replacement Modification IDentifier (RMID) - used to identify a SYSMOD that completely replaced an element. • Updated Modification IDentifier (UMID) - used to identify a SYSMOD that updated the last replacement of an element. • COnditional REQuisite (COREQ) - identifies SYSMODs that can only be installed correctly if both go on. • PRE REQuisite (PREREQ) - identifies SYSMOD(s) that must have been installed previously. • Negative PRErequisite (NPRE) - mutually exclusive PREREQ.
SMP/E - processing terms • Receive - makes known to the GLOBAL CSI. – Similar to unzipping a pc based program and “cab” files that are used to install a product. • Apply - makes known to the TARGET CSI. – Builds and copies the elements used to run the product. • Accept - makes known to the DISTRIBUTION CSI. – Copies elements to the backup libraries. • Reject - tells the GLOBAL zone to forget about it. • Restore - Rebuilds the Target version from what has been accepted. Similar to ctrl-z or “undo”.
SMP/E - distribution methods • ServerPac - a complete set of products with applied maintenance. • CUM tape - cumulative service release between a span of time. • Product tape - a product at its base level. • CBPDO - a custom built product delivery option. This tape contains one ore more products at their base level plus all maintenance released. • SUF - service upgrade facility is a java web based internet application that can retrieve APARs and PTFs ensuring all required maintenance is also received in your Global zone. • ICSF - Internet Product/Maintenance Retrieval. • FTP - service from Boulder.
Process Flow • Build environment • Receive • Apply • Test • Accept • Other backup
Where’s your backup? • Physical volume(s) • Logical data set • SMP/E distribution libraries • SMP/E Zone(s) – Global – Target – Distribution
What do I order? • ServerPac – System replacement • CBPDO – Product upgrade • Service – PTF and/or APAR
Where do I begin? • Backup • Read the doc • Receive the files • Backup • Read more doc • Apply check • Research issues/Order more service • Apply • Backup • Accept check • Accept • Backup
Backup • Make sure you have a backup, outside of SMP/E – Take a data set level backup of the global datasets, the target zone data sets, and the distribution zone data sets. – Coordinate with others who might be using these data sets. – Consider IPL volumes, HFS data sets, other run-time datasets .
Read the doc • Follow the directions as they apply to your installation. • Take note of any actions that need to be done. • Coordinate with other areas. • Develop your plan for testing and implementing.
Receive the files • GLOBAL processing. – Use ZONEGROUP to exclude receiving items already processed. //STEP001 EXEC PGM=GIMSMP,REGION=6M //SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI //SMPPTFIN DD DISP=SHR,DSN=MYUSERID.MPTF4414.UNPACKED //SMPHOLD DD DUMMY //SMPCNTL DD * SET BDY(GLOBAL) . RECEIVE SOURCEID(FTPHANG) ZONEGROUP(ALLZONES). /*
Research issues/ order more service • Review the “Causer SYSMOD Summary” report and order/receive any missing maintenance, identify actions to be performed , and tailor your apply control cards asnecessary . •Check the File Allocation Report: know what you are updating and make sure you have a backup . • Review other reports and take action as necessary.
Apply • Same JCL as your apply check. • Remove “CHECK” from the control cards. • Review all reports and make sure you know what was updated. – Did you notice the GLOBAL CSI is updated? • Consider doing another backup. • Test, Test, and test.
SYSMOD format ++ PTF (UY50707) /* 5665-28445-HDP3320- //UY50707 JOB 5665-50707-0,28445,MSGLEVEL=(1,1),CLASS=A */ . ++ VER (Z038) FMID(HDP3320) PRE (UY44382) SUP (UY43696,AY27240,AY27237,AY24733) /* ( DOCUMENTATION FOR THE PTF IS INSERTED HERE. ) */. ++ HOLD(UY50707) SYS FMID(HDP3320) REASON(DELETE) DATE(90146) COMMENT (THIS PTF CONTAINS A ++DELETE MCS FOR THE FOLLOWING LMOD: IEBCOPY SMP/E WILL NOT RESTORE THIS PTF.). ++DELETE IEBCOPY SYSLIB(LINKLIB).
SYSMOD format ++ JCLIN . //SYSGEN0 JOB 1,'SYSTEM GENERATION', // MSGLEVEL=1,MSGCLASS=A, // CLASS=A //SG22 EXEC LINKS, // PARM='NCAL,LIST,XREF', // UNIT='3380',SER=SYSRES,N=SYSX,NAME=LINKLIB,P1=' ', // MOD=,P2=' ',OBJ=MACLIB,CLASS=A //AOSU0 DD DISP=SHR,VOLUME=(,RETAIN),DSNAME=SYS1.AOSU0 //SYSLIN DD * INCLUDE AOSU0(IEBCFAMS) INCLUDE AOSU0(IEBCMSG) INCLUDE AOSU0(IEBCNVT)
Did I really do that? Did you do something you wish you hadn’t? – You did have a backup, right? – If you accepted something you need a non-SMP/E restore. – If you applied something, do you want SMP/E to RESTORE it? – Did you receive something you don’t want - REJECT it.
Restore gotchas ! • You will regress back to the last accepted levelset . • You must select every applied but not accepted sysmod . • No guarantee an apply can get you back to where you started from . New HOLDDATA may prevent some sysmods from being applied in your current environment.
Reject • Used mostly to cleanup the SMPMTS. • If you have room, don’t bother. • May have to reject a sysmod to receive it properly. – Damaged during download and you did not notice it. – On usermods , consider updating the REWORK value instead.
Namaskara! Thank you for not asking too many questions!!!!!!!!!!!