preloader
Welcome to karnipackaging
`Vendorinfo
ibmomvscommandsD OMVS,O to chekc all the current options of OMVS env. and also the parmlibs used from IEASYSxx
ibmomvssuper user batch — ensure that your line numbers are not present in the JCL from 72 to 80 column. Enables super user in batch. //STEP1 EXEC PGM=BPXBATCH, // PARM=’SH echo id | su’ //*TEPLIB DD DSN=SYS1.SCEERUN,DISP=SHR //STDERR DD SYSOUT=* //STDOUT DD SYSOUT=* /* //STEP1 EXEC PGM=BPXBATCH //STDERR DD SYSOUT=* //STDOUT DD SYSOUT=* //STDPARM DD * SH echo id | su; /*
IBMWebserverVer checkSTC IMW*
ibmabendsoc4As a programmer, one of the major challenges we face is in the area of Storage Protection. It is a major way that z/OS maintains integrity of the system. So what is a Protection Exception (S0C4) and how can it exist, especially in the execution of a Cobol Program. Some background is needed. There are 16 Storage Protection keys in z/OS, numbered 0-15. z/OS Subsystems use keys 0-7, and keys 8-15 are for Users (Batch, TSO). JES2 uses key 1, MQ uses key 7 etc. Check the Program Properties Table in the SCHED00 in Sys1.Parmlib for more information. CICS uses key 8 and can use key 9 if Storage protection is enabled for that region. So every z/OS 4k Page has a number of bits associated with it. 4 of them are the Storage Protection bits. So when a MOVE in any program wants to move Working Storage data onto a Page, the Storage Protection bit assigned to that page is compared with the Storage Protection bit in the PSW. If they match, then the move is allowed to happen. So if we are a batch Cobol program in key 8, how can that move fail with an S0C4. I’ll explain in the next part
NETC /SDSCAFC (CICS Application file control facility)Ver checkCheck in CICS region.
caCommon Servicescommandsto find the verison if ENF is running then issue the command /ENF STATUS
caCommon Servicescomponentsif we have tasks running with PGM=JVMLDMxx then we can say that CA Common services is using APACHE TOMCAT.
caCommon Servicesload module checkwe can use the below jcl if we are running any CA products to check on the load modules versions and also figure out if maintenance is applied or not. //STEP1 EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * CAMODID DSNAME(LIBSYS.LIBR.V44.LVL1.CALJLINK) DETAIL /* the module CAMODID is part of CA Common services.
caCommon Servicesagentto check if agent technology is running in ca-common services From a UNIX shell session or batch job with superuser privileges, issue “ps -ef” (or the z/OS command “D OMVS,A=ALL”) and verify that these processes are running: Event Management opr component requires caiopr, cailgr and newdaylog processes. Optionally, if store and forward is required, an oprsafd processing should be running. Star component requires stardaemon process Calendar component requires calendar process Java running class CA.Unicenter.comm.w2RmiServerImp logonserver.exe w2Tree.exe CaemRtS EMServer.exe Agent Technologies: Are all the required processes running? Full Agent Technology requires awservices, aws_orb and aws_sadmin processes to be running. From a UNIX shell session or batch job with superuser (su) privileges, issue “ps – ef” (or the z/OS command “D OMVS,A=ALL”) and verify that these processes are running.
ibmcdprecycleYou can use the ps -ef command to list all the java processes that are running and find the Process ID (PID) of the DataReceiver process. To shutdown the process submit kill “PID” 2. run the startup script in /opt/CDPz directory called startup_cdpz.bash
ibmcdpcommandsf cdpsmfde,display status — smf cdp status — tells us the no. of records that got recrods and sent for data streamer for ftp
ibmcdpissuesissue : on one system the custom written SMF70 records are being captured. the same policy used in other plex systems is capturing the recrods. Res: I was able to resolve the issue and the records are being captured now. we have smf exits 83,84,85,96 active on the MM99 system though not shown in D SMF,O output. But they are active through exit definition in PROGxx I believe. I have updated the HBO exit for all the 83,84,85,86 exits and then it started working.
ibmcdpissuesissue : Not able to get data on the splunk side when using REXX API. i ran the default REXX API itself. REs : In the meta data missed the line item APP/stream name
ibmcdpissuesissue: Datastreamer not able to establish connection with splunk server HBO6058E A connection to glat.mmm.com : 51401 cannot be established. REs : found that the TCPARMS had IPSECURE and FWSECURE turned one and so we were not able to connect to the splunk server.
ibmcdpissuesissue : IBM CDP not transferring data to splunk. we are running logforwarder and datastreamer and trying to send data to splunk. but data is not seen on splunk server. Res: splunk team update some java on splunk to java 8 and we were able to see some files. we will work for couple of more days and if we are able to see all the data, we can close this ticket.
ibmcdpprogram issues1. SUM( ) — is adding the last value again. Kind of doubling or adding one more time 2. Not able to use same condition for 2 differnt calculation in the same sections. Ex : the below condition fails with U0002 — so we need to create to seperate sections to calculate these values. ED_TIME = CASE WHEN SMF70CIX = 1 THEN SMF70EDT ELSE 0.00000000 END and TD_TIME = CASE WHEN SMF70CIX = 1 THEN SMF70PDT ELSE 0.00000000 END
ibmcdpjoblogto read joblogs directly use the CRLF splitter
ibmcdppolicyonly when a splitter option is selected we can select a subscriber to send the data
ibmcdpLogforwardererror when trying to start teh logforwarder. common stroage not available. Check if the log forwarder exits are enabled.
IBMcdpconfigregex filter. we cannot use $HASP100 as the Filter as “$” is the special char in Regex and it asserts position at the end of a line. So filter doesn’t found HASP100 in the line. You need to change the expression to: [$]HASP100
ibmcdpchecksLine entries — this message in the Data streamer task will tell us how many lines are being written to splunk when in every set of data that it writes.
ibmCEAsetupCEA – Common even adapter. It is a system task and is automatically started during the IPL. Check the IPL log to find the proc it is executing and look for the proc for its setup.
ibmcicslogonCESN– supports 8 char password. CESL supports password phrase.
ibmcicscommandsCEOT — display your terminal information.
ibmcicscommandsCMSG — send messages to other terminal users in CICS
ibmcicscommandsCMSG R=ALL,‘GOOD MORNING#TODAY IS FRIDAY FEB 1′,S
ibmcicscommandsCEDF — working on terminal and trying to debug an application
ibmcicscommandsCEDX — working in a web based application and trying to debug.
ibmcicscommandsset prog(xxx) newcopy — to update the program in cics memory
ibmcicscommandsCEDA/CEDB/CEDC — Activate,define,update,view
ibmcicssvc issueif we need to update or dynamically load a CICS SVC. Use the below jcl //SVCUPD EXEC PGM=DFHCSVCU,PARM=(‘SVC216=DFHCSVC’) //STEPIB DD DISP=SHR,DSN=**.SDFHAUTH
cloud compilercloud compilernotescloud compiler works in 2 ways: 1) we have our own compiler on a small system and install cloud compiler on all the remaining systems and it would send all our compile jobs to the small system and get back our compiled output to the submitting system. 2)we can install cloud compiler and setitup to use the vendors cloud system to do the compiles. here we install the product on ht mainfram and configure to send our compile jcl to vendor system through net and get the compiled output back to our system.
ibmcobolJCL To get a load module from COBOL source code. //STEP1 EXEC IGYCRCTL,PARM=RMODE,DYNAM,SSRANGE //SYSIN DD DISP=SHR,DSN=SYS5.CTS.JCL.SMF.CNTL(SMFJZIPP) //SYSLMOD DD DISP=SHR,DSN=SYS5.CTS.COBOL.SMF.LOAD(SMFJZIPP) //SYSPRINT DD SYSOUT=* //*
ibmCOBOLreserved wordsYou can get the full list from *.SIGYSAMP(IGY8RWRD) in V4.2 and *.SIGYSAMP(IGY8RWRD) in V6.2
ibmcobolperformanceThe ARCH parm is what we used for Cobol 6.2. Till 6.1 ARCH(10) was used and from 6.2 ARCH(12) can be used while doing the compiles and it really saves CPU if the code is having more computational statements rather than I/O Statements. This ARCH parm exploits z13, z14 Hardware Upgrades and changes at the hardware Level
ibmcobolmodernizationhttps://www.gotostage.com/channel/7df10b0b81334df9afe1838c006b1d94
CACommon ServicesVer checkLook for ENF* STC or CAS9 * STC – CAS9075I
CAcommon servicescomponentsCA Global Subsystem : is a support services component that provides a simplified communication interface. This interface lets various CA products communicate easily, seamlessly, and reliably, allowing quick access to information from various sources. CA GSS provides connectivity by using a collection of one or more REXX subroutines that are edited, compiled, and executed as a single program
CAcommon servicescomponentsCA Health Checker Common Service : provides a simple and consistent method for CA products to create health checks to run under the IBM Health Checker for z/OS. The IBM Health Checker for z/OS helps you identify potential problems in your z/OS environment by checking system or product parameters and system status against recommended settings
cacommon servicescomponentsCA Common Communications Interface : provides CA enterprise applications with a common communications software layer. This layer insulates the applications from dealing with protocol specifics, error recovery, and system connection establishment. Environments Supported Transparently / Peer-to-Peer Communication / Transmission Management / Optional Queuing of Received Data / Performance Optimization / Simplified Installation / CAICCI Generic Resources / CAICCI SPAWN
cacommon servicescomponentsCA Resource Initialization Manager: prepares your operating system environment for all CA applications and starts them.
cacommon servicesenfMODE(CICS,ON) does not establishes security intercepts in CICS region. ensure to use the CICSREL with parm or use the DD CAIENFLIB in the CICS region. this is important for CA-Top secret and CA ACF2.
Open systemscomparisionMainframe V/S OpenssytemHYPERVISOR (ALlows hosting multiple virtual computers on a physical computer. Hardware resources are shared and we can only share what is available) (Ex VM WARE, virtual box from oracle(free open soruce)) EQ z/VM — helps in enabling multiple systems running in a single Hardware. Container (docker) similar to zVM — helps in running different applications with thier own requirements irrespective of the hardware running. zVM does it only till the OS level (we can run zOS, zTPX, zLinux upon a zVM) but containers go a steps ahead and make applications independent of the hardware and os requirements. Both of the call their intances as IMAGES that are creted. Limitation for Docker you can only run the contrainer for a linux based appicaiton on a linux based server or a windows based applicaiton on a windows server running DOCKER .
ibmcompatibilitywebsitehttps://www.ibm.com/software/reports/compatibility/clarity/index.html website to check for hard ware and software compatibility for IBM products.
ibmconsoleMFAusually to suppress the message from display at a z/OS console, and to indicate that automation processing is not required. It can also issue commands, for example, to cancel the user or process. Specific: Action: Regular :
ibmconsoleMFAusually to suppress the message from display at a z/OS console, and to indicate that automation processing is not required. It can also issue commands, for example, to cancel the user or process. Specific: Action: Regular :
ibmconsoleMFADisable message flood checking — SETMF OFF enable message flood checking — SETMF ON
ibmconsoleMFAEnable the collection of message rate information. — SETMF MONITORON
ibmconsoleMFADisable the collection of message rate information. — SETMF MONITOROFF
ibmconsoleMFARe-initialize the counts, indicators and actions, and read the specified MSGFLDxx PARMLIB member.– SET MSGFLD=xx
ibmconsoleMFAModify the counts and parameters used by Message Flood Automation. — SETMF MSGTYPE=msgtype, keyword=value[,keyword=value]
ibmconsoleMFADisplay the counts and parameters used by Message Flood Automation. — D MSGFLD,PARAMETERS
ibmconsoleMFADisplay the status of the Message Flood Automation function. — D MSGFLD,STATUS
ibmconsoleMFADisplay whether intensive mode is active for the different classes of messages. — D MSGFLD,MODE
ibmconsoleMFADisplay message rate information collected by the message rate monitoring function. — D MSGFLD,MSGRATE[,n][,m]
ibmconsoleMFSMSGFLDxx suffix can be specified in CONSOLxx. MSGFLD is the parmlib for message flood automation.
ibmconsoledefinitionMultiple Console Support (MCS) consoles are devices that are locally attached to a z/OS system and provide the basic communication between operators and z/OS. MCS consoles are attached to control devices that do not support systems network architecture or SNA protocols. 99 is the maximum no. of consoles that can be defined for a system in sysplex. In general physical console devices attached to the Mainframe.
ibmconsoledefinitionSNA Multiple Console Support (SMCS) consoles are devices that do not have to be locally attached to a z/OS system and provide the basic communication between operators and z/OS. SMCS consoles use z/OS Communications Server to provide communication between operators and z/OS, instead of direct I/O to the console device. Consoles that are connected via TCP/IP and SNA to Mainframe.
ibmconsoledefinitionExtended Multiple Console Support (EMCS) –to have console beyond the limit of MCS. connected to TSO/E SYSLOG.
ibmconsoledefinitioncross-coupling services (XCF) providing signalling paths that allow MCS or SMCS consoles on different systems to communicate with each other. In a sysplex, you can define your MCS or SMCS consoles so that any MCS or SMCS console can receive messages from any system, and commands entered on any MCS or SMCS console can be processed on any system.
Open systemscontainerstheoryContainers are software that contains the necessary components to run in any environment without the need for physical components. It is portable and lightweight and streamlined to work in any environment. Dcocker Container Image : A light weight standalone executable software package that has everything needed to run the application irrespective of the hardware. Containers : Build, ship, deploy, scale with ease — is a technology that could help in building an appicaiton to be able to run on any system by packaging the required libraries and other dependent libraries for the application to run into one succinct manifest that can be version controlled, allowing for easy replication of your application across developers on your team and machines in your cluster. Each application may have multiple containers based on the requirements of the application. Examples : Amazon Elastic Container Service (Amazon ECS), Mirantis Kubernetes Engine (formerly Docker Enterprise), Kubernetes, IBM Cloud Kubernetes Service. Docker is one of the widely used container engine. Setup is Hardware (cpu-Hp, dell, windows) + Software(window, linux) + Container Engine (docker or other) + (continer- an application with libraries and dependencies along with it.) They have light OS instead of a ful OS packaged with the application.
open systemscontainerstheoryNo need to run full copy of an operating system. Unlike VMs container run directly on the kernel of a hosting operating system, which makes it lightweight and fast. Versioning of Images : Necessary controls to easily rollback to previous verison. Agility to deploy new applications: Application portability and Colocation of data (zcx will help to have the data from system developed applicaiton on z).
cacsmproduct isntallwhile installing the products we need provide file owner and group owner for the uss directory.. Check for the directory that you want to use in the ishell and properties for these values. Or try the command “id” in the omvs to get the group value.
cacsmproduct isntallwhile installing products if you have to provide the omvs path then make sure that the LLQ is different for the paths beings specfifed as the CSM looks at LLQ only to distinguish. (during Deployment)
cacsmproduct isntallwhile installaing for the OMVS segements that are going to get deployed give the HLQ for OMVS datasets in the Containername* (during deployment).
CACSMstartupSequence to start CA CSM tasks: Please shutdown the MSM Tomcat server, but also the CSM DB Server and the CSM MUF… Then start the MUF again… Wait until you see the message : DB00215I – CA Datacom/DB Version 14.0 (14.02) Then start the CSM DB server and wait until you see : DSV00049I-CA Datacom Server Version 14.02 Initialized-CSM31P60 Then start the CSM Tomcat server..
ibmcssmtpjcl//IEBGENER EXEC PGM=IEBGENER //SYSIN DD DUMMY //SYSPRINT DD DUMMY,SYSOUT=* //SYSUT2 DD SYSOUT=A,DEST=SMTP,DCB=(LRECL=80,RECFM=F) //SYSUT1 DD * HELO TECH.MMM.COM MAIL FROM: RCPT TO: DATA Date: Tue, 03/12/2019 From: abc to: xyz subject: a test mail Message1 Message2 QUIT /*
IBMdasdtapeif we have a tapedata set use CA-1 to check for the created date and created job
ibmdasdcommandsd u,vol=xxxxxx — to identify the unit address and state of any exsisting volume.
ibmdasdcommandsd sms,vol(xxxxxx) — to identify the unit address and state of any sms volume.
ibmstoragecommandsd sms — display the scds information and other info.
ibmdasdaliasIf the non VSAM data set has aliases that are defined using SYMBOLICRELATE parameter, the ALIAS entries are NOT deleted when you use the DELETE command. This way we can avoid to delete the alias and define it again with a new dataset. the symbol &PRODR is taken from IEASYMxx member DEFINE ALIAS (NAME(SYS1.PRODUCT) – SYMBOLICRELATE(‘SYS1.&PRODVR..PRODUCT’))
ibmdasdtracksdasd type and tracks 16695 then DASD_Model = ‘3390 Model 1’ 33390 then DASD_Model = ‘3390 Model 2’ 50085 then DASD_Model = ‘3390 Model 3’ 150255 then DASD_Model = ‘3390 Model 9’ 491400 then DASD_Model = ‘3390 Model 27’ 982800 then DASD_Model = ‘3390 Model 54’
ibmdasdtracks3390 – 1 track = 56664bytes = 55.3KB 1 cylinder = 15 tracks = 830KB
ibmdasdcommandshsend QUERY CDSVERSIONBACKUP — to the CDS backup dataset names and available no of backups
ibmdasdcommandshsend q cds –> query the CDS datasets for utilization
ibmdasdcommandshsend backvol cds –> to take backup of CDS and journal
ibmdasdcommandshsend query cdsversionbackup —> to check the latest qualifier used for backups
ibmdasdcommandshsend list dsn(‘dsname’) both term –> to check if the ds has any backup and migrated versiobs
ibmdasdcommandshsend recall ‘dsname’ –> for recalling ds
ibmdasdcommandshsend recover ‘dsname’
ibmdasdcommandshsend recover ‘dsname’ newname(‘new-ds-name’) –> to recover and rename
ibmdasdcommandswhile recalling a non-sms dataset, we need to provide the UNIT and VOL parameter as well. hsend recall ‘ds-name’ UNIT(3390) VOL(volser-name)
ibmdasdcommandsEXPDT next to a dataset to set a migration date
ibmdasdcommandsalter / managementclass — to change the mangement class of a dataset after creation — issue it next to the dataset
ibmdasdwebsite — cataloghttps://www.lascon.co.uk/ICF-Catalog-Structure.php
ibmdasdcatalogto define a new alias for a HLQ. /* IDCAMS COMMAND */ DEFINE ALIAS (NAME(HLQ) – RELATE(user catalog) – ) CATALOG(master catalog)
ibmdasdrecoverJob to recover any SMS dataset from backup. //STEP010 EXEC PGM=IKJEFT01 //SYSPRINT DD SYSOUT=* //SYSTSPRT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSTSIN DD * HSEND RECYCLE EXECUTE ALL PERCENTVALID(100) + ODS(A8N9VZZ.TSO.CNTL9) VOLUME(XXXXXX) /* • Do you have to specify the volume – or will it try to restore it back to the same volume by default? – No need to specify volume if it is SMS managed, but if it is non-SMS then yes, you need to specify the volser where you need to recall. • Does it automatically restore from the latest backup? What if you want an earlier one? – You can use the VERSION(version-number) parameter to recall from a particular version. • Can it overlay (replace) existing datasets or do they have to be deleted first if they exist? – Use the REPLACE parameter and it will overwrite the existing one. Please use this with caution since you will lose the current data.
ibmdasdismfLISTVOL — to list all the volumes of a storage group
ibmdasdparmlibthe arccmdxx can be used to specify the DFSMSdss dump type, frequency and other dump characteristics.
ibmdasdcommandThese incremental backups can be used to recover individual data sets using the HRECOVER command
ibmdasdcommandto backup a dataset — issue the command HBACKDS we can use it in ISPF or for more options try it in ISMF
ibmdasdcommandrecover * tovolume(original_volume) unit(unittype) fromdump(dumpvolume(tapenumber) applyincremental)
ibmdasddfhsmThe backing-up of data sets is determined through SMS storage group and management class routines. The HBACKDS command is used to create an incremental backup of a data set. The management class backup frequency attribute is used to define the number of days between backups for data sets. The management class ADM/USR backup attribute controls whether you have authority to enter DFSMShsm commands. HRECOVER command is used to reover a dataset from backup.
ibmdasddumpStorage group and copy pool SMS constructs contain various volume related dump attributes.
ibmdasdcommandDFSMSrmm commands F DFRMM,ABEND(tasktoken) F DFRMM,CANCEL() / HOLD () /RELEASE ()/ QUIESCE / CMD= /M=xx/ query active/ PDA=OFF/ON / PDALOG=OPPF/ON/SWAP F DFRMM,RESTART LISTENER/STOP LISTENER
ibmdasdtape init.job to init/Erase/scan tapes //tapeinit exec pgm=edginers //sysprint dd sysout=* //tape dd unit=(3390,,defer) //sysin dd * INIT VOLUME(xxxxx) LABLE(SL) ERASE VOLUME(yyyyy) RACK(aaaa) SCAN VOLUME(ccccc) /* by command /S LABEL,OPT=,U=,SOUT=’SYSOUT=a’ — The EDGINERS utility can also be initiated from a console using a special LABEL procedure supplied with the DFSMSrmm product. The procedure is invoked by specifying a start command. we will get a reply command and we need to reply R XX,INIT / ERASE /SCAN If the volume cannot be mounted, replying S will skip the processing of that volume.
ibmdasddfsms rmmbefore tapes can be considered for automatic initialization or erasure as part of inventory management – Their status needs to be set to initialize or erase, action pending
IBMDASDtypesDisk — rotating plates and an arm to read and write SSD — solid state drives. Better speed than the disk drives. SLC(Single Level Cell), MLC, eMLC, TLC
IBMDASDstorage systemhttps://community.ibm.com/community/user/ibmz-and-linuxone/blogs/destination-z1/2019/12/23/a-brief-history-of-mainframe-memory-technology
IBMDASDRAIDRedundant Array of Independent Disks (RAID) : Most companies will use disk subsystems, rather than individual disks. Intelligent use of the many disks within a storage subsystem can improve reliability and performance.
ibmdasdickdsfICKDSF can also be executed in ‘standalone’ mode for z/VM and z/OS. In this mode, ICKDSF is IPLed in a System z mainframe LPAR or z/VM image, and operated from mainframe consoles. This allows disks to be initialized in a new mainframe, or where there is no operational z/VM or z/OS system. It is ideal for disaster recovery.
ibmdasdickdsf//sysin dd * init unitaddress(0471) verify — initializes the 0471 with the old volume name init unitaddress(047A) VOLID(VOL001) noverify — initializes the o471 unit with a volume name as VOL001 – noverify generally used for new volumes. BOOTSTRAP IPLDD(SAMPLIB,OBJ) — IPL disk. SYS1.SAMPLIB loaded into the volume. NODSEXIST — if datasets exists on the volume the unit is not initialized. REFVTOC — the REFORMAT REFVTOC recreaes teh VTOC in its current location. REFORMAT UNITADDRESS(0471) VERIFY(VOL01l) VOLID(VOL020) — renames the disk from VOL011 to VOL020. the disk must be offline to be renamed. /*
ibmdasddfsmsdfp — storage polices when new datasets are created. dss — backup dataset and volume level hsm — managers dasd by moving less used data to a cheaper and slower storage mediums rmm — removable media manager — tapes tvs — allows sharing of vsam datasets.
ibmdasdcommandHBACKDS — to take hsm backup of a dataset.
ibmdasdMIGRAT2to find the tape volume to which the dataset is migrated when in MIGRAT2 status or to find out if there are any backups available for a dataset. hsend list dsn(/) both term
ibmdasddatasetsJob that helps in the movement of non sms datasets across volumes. //ZSMPT1 EXEC PGM=ADRDSSU //SYSPRINT DD SYSOUT=* //DASD DD VOL=SER=ZDBP01,UNIT=3390,DISP=SHR //OUT DD VOL=SER=ZDBP0A,UNIT=3390,DISP=SHR //SYSIN DD * COPY INDDNAME(DASD) OUTDDNAME(OUT) DELETE – DATASET(INCLUDE(#ECD001.JCL.CNTL))
ibmdasdcbruxentD SMS,OAM F OAM,D,OAM,L=INTERNAL-Z CBR1100I OAM status: 282 TAPE TOT ONL TOT TOT TOT TOT TOT ONL AVL TOTAL LIB LIB AL VL VCL ML DRV DRV DRV SCRTCH 1 1 0 0 1 0 220 220 219 333951 There are also 2 VTS distributed libraries defined. Category count scratch transition ENABLED. CBRUXCUA processing ENABLED. CBRUXEJC processing ENABLED. CBRUXENT processing OPERATOR-DISABLED. CBRUXVNL processing ENABLED.
CADatacomVer checkSTC — for all products.
CADatacomEnvironmentJob that helps us to identify the DATCAOM environment. //STATUS EXEC PGM=DBUTLTY //STEPLIB DD DSN=BEPCA7AD.CA7.BE07.MUF.LOADLIB, // DISP=SHR // DD DSN=ESLCA.DATACOM.AD14.CUSLIB, // DISP=SHR // DD DSN=ESLCA.DATACOM.AD.CAAXLOAD, // DISP=SHR //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSIN DD * COMM OPTION=STATUS /*
CADatacomEnvironment//REPORT EXEC PGM=DBUTLTY //STEPLIB DD DSN=XXXX.DATACOM.AD14.CUSLIB, // DISP=SHR // DD DSN=XXXX.DATACOM.AD.CAAXLOAD, // DISP=SHR //CXX DD DSN=XXXX.DATACOM.AD14.CXX, // DISP=SHR //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSIN DD * REPORT MEMORY=MVS — can list all the MUF that are running on a system and their version. REPORT AREA=CXX — provide all the databases name and their configuration specific to that CUSLIB. /* REPORT AREA=CXX,DBID=4000,TYPE=A — to provide database space stats alone.
CaDatacomupgradeDatacom/Ad from V14 to V15. https://knowledge.broadcom.com/external/article?articleId=198137 https://community.broadcom.com/mainframesoftware/communities/community-home/digestviewer/viewthread?GroupId=2035&MessageKey=a912bc8a-e7d3-4bf6-9c9e-62116d13ef90&CommunityKey=c66cac08-5724-4f3e-8734-56dffb11f900&tab=digestviewer
caDatacomAD / DB — system datasetsCXX — Contains the definitions of all databases accessible in this CA Datacom® environment. Catalog/Directory – metadata used at run-time LXX — Contains user transaction data (including data rows) used to support transaction back out and database restart (after a failure). transaction Log. FXX — Contains user transaction data (not including data rows) used to support fast database restart (after a failure). Force area – long running transactions RXX — Contains user transaction data (including data rows) used to support database recovery from a backup after a data loss. Recovery file – LXX goes here at SPILL time. Typically on a tape, most AD using products do not use PXX –- Statistics and Diagnostics Area (used for monitoring and debugging) The system data set names for CXX,FXX,LXX are known via the DBSIDPR DSN_XXX= when running with SIMPLIFY_MODE=YES. That is the case for all CA Datacom/AD sites. Then for the user data bases . When you run DBUTLTY INIT AREA= , DBID=nnnnn we attach that data set to the CXX and store the name of the data set in the CXX . When the MUF or DBUTLTY opens a database we fetch the name of the data set in the CXX and do a dynamic allocation for the file. You can see the names of the data sets by running a full CXX report on the DBID or a complete CXX report . Run DBUTLTY REPORT AREA=CXX to see all data set names.
caDatacomAD – system databasesCA Datacom® Datadictionary — Database 0002 — Contains the metadata definitions of all databases accessible in this CA Datacom® environment Data Definition Directory – DDD — Database 0015 — Contains the SQL metadata definitions of all databases that are SQL accessible in this CA Datacom® environment User Databases — Each user database is commonly referred to by its functional purpose and by its assigned database ID (DBID). There are one or more index areas and one or more data areas for each database. Each of these areas has one associated z/OS data set. To refer to the data sets making up the database, we typically use the z/OS DDNAME. The actual data set name depends on the site.
CAdatacomSystem Database DBIDs•0001, 0010 – Small sample databases used for install verification •0002, 0015 – Meta data dictionary used to house all data definitions •0006, 1006 – Navigational (CBS) query optimization databases •0016, 0017 – SQL Temporary table and work area databases •0003 – Dataquery product database •1000 – Dynamic system tables database similar to DB2 catalog with a variety of statistics, tuning and debugging information •0001 – 0020, 1000 – 1020, 2000 – 2020, 3000-3020, 4000-4020, 5000 – reserved
CADatacomDBUTLTYuse the command SET OPTION1=’DATANO=9999;DXXNO=9999;IXXNO=999′ to improve the performance of the DBUTLTY •Initialization (INIT) – Index and Data Areas •LOAD – Data Areas only, Index build automatically •Backup •Recovery •Reports •Sending commands to MUF •Making databases offline/online •Automated monitoring (AutoStatus, AutoCollect)
CadatacomMUFStandalone address space that manages the access to the databases •Utilizes buffering, memory resident data, etc. for high performance access •Synchronizes all update activity to allow row-level locking •Allows thousands of users to access the same table for update at the same time •Provide data integrity features: logging, restart (warm), and recovery •Symmetrical Multi-processing (SMP) •Highly zIIP enabled •Navigational and SQL access APIs
CAdatacomproducts.CA Datacom/DB is CA’s strategic Database management system for the mainframe platform. It is being widely used in the industry and many large corporations depend on it. 14 Different licensable options, each purchased separately •CA Datacom/AD is a restricted use version that is utilized by many CA products as their internal database today and even more products will use it in the future. 5 CA Datacom options packaged together: DB, DD, DQ, SQL, Server. All the power of the CA Datacom/DB products with only one limitation: Only allows CA product databases to be installed
CaDatacomAD / DBThough the same FMID’s are installed when installing these product there is a diffrence in the module. so, the datasets cannot be shared and we will get errors when starting MUF’s. When you start a Datacom Multi-User with card DATACOM DB or DATACOM AD a check is done to see if you run with the correct Datacom load library . If it does not match then the startup fails with DB00205E – MULTI-USER ERROR – 1074 . 1074 says: the specified libraries are not compatible with the MUF startup option DATACOM value. See DB00205E
CADatacominstallIn a non-AD environment where you run a full Datacom MUF, CA IPC is a required product and needs to be installed/upgraded separately. CA Datacom/DB/DataDictionary/CA Dataquery and SQL are installed/upgraded together and are on the same installation product pax. CA Datacom Server is also a separate product and installation/upgrade. CA IDEAL is a separate product and installation/upgrade. CA Datacom CICS Services is a separate product and installation.
CADatacomMUFIdentifying the MUFName and MUF stc that your product is working with. Check for the string MUFNAME in your product STC ouptut and we will know the MUF stc name that it is working with. Look for message CA7 : DB00101I – STARTED JOB-CA7ONL NUMBER-75664 CXX=UST7CXX MUFNAME=USTMUFAD CAL2D041I CA Datacom r14.0 MUF USTMUFAD STC27024 r14.0 connection LOCAL CA11 : DB00135I – CONNECT TO AD10STRT MUFAD14 STC27065 SYST M-14.0 I-14.0 DB00101I – STARTED JOB-CAL7 NUMBER-80789 CXX=AD14CXX MUFNAME=MUFAD14
CADatacomMUF1.How to identify if we are running the DATACOM/AD or DATACOM/DB I see both the messages in MUF stc. When starting , each Multi-User writes out message DB00201I – MULTI-USER ENABLED,CXXNAME=cxxname MUFNAME=mufname XX with XX being AD or DB . AD means this is a Datacom/AD Multi-user and you find card DATACOM AD in the startup cards . 2.How to identify what is the STC name for the MUF that my product is running. (CA7, CA11, MSM, CICS and so on). you can run DBUTLTY REPORT MEMORY=MVS to see all MUFS that run on the LPAR where you run this report . Each application connecting to a MUF uses a module DBSIDPR which has the name of the MUF in TARGET_MUF_LIST . Each application writes out a connection message to connect to the MUF like DB00135I and DB00101I with the name of the MUF it connects to and the Datacom version. 3. How to identify if we have a MUF that runs internal (I think a task starts and ends ) or external(long running STC) to the product. the only MUF that can run internal in the same address space as another product is the IMUF used by CA COMMON SERVICES ENF .
CADatacomShadow MUFI have Cal7 (ca11) STC running on 3 systems in sysplex and sharing datasets. I see the MUF task AD10STRT being started on a system at any given time. If we shutdown the system where AD10STRT is running, then I see another AD10STRT task starting automatically on another system in sysplex. Is it supposed to be running that way? That is because that MUF is running with a Shadow MUF that takes over when the primary MUF abends or gets ended. The MUF that is the Shadow MUF displays message DB02325I SHADOW MUF NOW WAITING . With a MUF that has a SHADOW MUF you you have 2 MUFNAMES in the DBSIDPR TARGET_MUF_LIST and CONNECT_ALLOW_PRIORITY=(LOCAL,XCF) if the Shadow MUF runs on another LPAR than the Primary MUF. The MUFs are then configured as primary/shadow MUF and have XCF enabled . Here in Use Case Videos you find a video that shows how to setup a Shadow MUF: https://techdocs.broadcom.com/us/en/ca-mainframe-software/database-management/ca-datacom/15-1/using/use-case-videos.html#
cadatacomdatasetsThe system data set names for CXX,FXX,LXX are known via the DBSIDPR DSN_XXX= when running with SIMPLIFY_MODE=YES. That is the case for all CA Datacom/AD sites. DBSIDPR DSN_XXX Then for the user data bases . When you run DBUTLTY INIT AREA= , DBID=nnnnn we attach that data set to the CXX and store the name of the data set in the CXX . When the MUF or DBUTLTY opens a database we fetch the name of the data set in the CXX and do a dynamic allocation for the file. You can see the names of the data sets by running a full CXX report on the DBID or a complete CXX report . Run DBUTLTY REPORT AREA=CXX to see all data set names.
cadatacomdatasetshttps://knowledge.broadcom.com/external/article/144564/two-ways-to-rename-ca-datacom-database-f.html
cadatacomcloneDBUTLTY has a function called CXXCLONE to clone an existing environment. Example 2 in our documentation is what you need . So you are creating a new MUF in your sandbox , meaning that a new CUSLIB is needed and that you need to configure DBSIDPR with a new CXXNAME/MUFNAME and DSN_XXX=new HLQ for the new data sets . Then you run : 1. DBUTLTY BACKUP on the CXX that needs to be cloned in that source MUF environment 2.Using the new CXX data set in the JCL and the new CUSLIB , you run DBUTLTY in your sandbox with SYSIN cards INIT AREA=CXX,DATACOM=DB,CXXNAME=new cxxname 3.Run DBUTLTY in the new sandbox environment using the new CUSLIB with SYSIN cards SET OPTION1=MUF_NOT_ENABLED CXXCLONE DDNAME=x,STATUS=NO_CHANGE,OPTION=ALTER,OPTION2=sourceHLQ*newHLQ where DDNAME refers to the cxx backup data set from 1. 4.Run DBUTLTY in the sandbox to init the LXX/FXX . See STEP1I and STEP1J in CABDLOAD(BDNEW01) 5.You use IEBGENER to copy all data sets ( not the CXX itself) from the source HLQ to the new HLQ . You also need to copy the VLS/IDEAL BDAM files or you run VLSUTIL to BACKUP in the SOURCE environment and FORMAT/RESTORE in the sandbox . 6.Start the MUF in the sandbox with the new CUSLIB . Databases 006 and 17 should be VIRTUAL. 7.Run DBUTLTTY using the new CUSLIB with sysin card LINK DBID=1-5000 8.Start the new CICS in the sandbox with the newly copied VLS/IDEAL BDAM files and the new CUSLIB/CABDLOAD and of course all CICS tables need to be updated with the CICS definitions for all products
ibmDb2offloadDFSMShsm has issued a Statement of Direction to support TCT Full volume dump for FRBACKUP and FRRECOV. This will enable Db2 PiT System Level Backups to be offloaded to a TS7700 Object Store with none of the data passing through z/OS!
IBMDB2errorou need to find the error messages that show someone putting in the wrong password, if this is put in by a DB2 connection you will see 10:38:42 22JAN D2PBDIST ICH408I USER(P#00252 ) GROUP(D#825660) NAME(NPSA – PSAR 10:38:42 22JAN D2PBDIST LOGON/JOB INITIATION – REVOKED USER ACCESS ATTEMPT Then you can at the log at that time and find where that came from by looking for the following message. You can then take the LUWID from that message and put it into the attached spreadsheet and it will give you the IP address that the bad password came from. D2PBMSTR DSNL030I -D2PB DSNLTSEC.30 DDF PROCESSING FAILURE D2PBMSTR FOR D2PBMSTR LUWID=A90A09F2.G88A.D92901AFB26A D2PBMSTR REASON=00F30088 D2PBMSTR THREAD-INFO=P#00252:*:*:*:*:*:*:<::169.10.9.242.2186.
IBMDb2 query monitorVer checkSTC
ibmdfsmsdssdumpADRDSSU sample for dumping datasets: //STEP1 EXEC PGM=ADRDSSU //DASDOUT DD DISP=(NEW,CATLG,DELETE),DSN=SMPE.IBM.CDP.DUMP, // SPACE=(CYL,(500,20),RLSE) //SYSPRINT DD SYSOUT=* //SYSIN DD * DUMP DATASET(INCLUDE(SMPE.IBM.CDP.V1R1.SHBO* , – SMPE.IBM.CDP.ZSCALA.V3R1.SGLA*, – SMPE.IBM.CDP.V1R1.ZFS)) – TOLERATE(ENQF) – OUTDDNAME(DASDOUT) //* //SYSIN DD * DUMP DATASET(INCLUDE(SMPE.CAI.SYSVIEW.V16.D1009.CNM4*) – EXCLUDE(SMPE.CAI.SYSVIEW.V16.D1009.CNM4ZFS))- OUTDDNAME(DASDOUT) – TOLERATE(ENQF) //*
ibmdfsmsdssrestoreADRDSSU sample for restoring datasets //STEP1 EXEC PGM=ADRDSSU //DASDIN DD DISP=SHR,DSN=SMPE.IBM.CDP.DUMP, // UNIT=SYSDA //DASDOUT DD DISP=SHR,VOL=SER=TCH304,UNIT=SYSDA //SYSPRINT DD SYSOUT=* //SYSIN DD * RESTORE INDD(DASDIN) OUTDD(DASDOUT) – DATASET(INCLUDE(SMPE.IBM.CDP.**)) – TOLERATE(ENQF) – CATALOG – RENAMEU(SMPE.IBM.CDP.**, SYS2.IBM.CDP.**) /*
CADisk backup and restoreVer checkPanels
cadispatchonlinewe can update the onlin retention period in option 1: REPORT DEFINITION and select the report and update retention days.
cadispatchcommandsdcmt d ar — to check the file sizes on the login page.
cadispatchcommands/F SPL0,STAT,X — commad to list the status of the SPLx — look in CADZSPL0 task for the SPLx value. This would tell us the MAXDS value and current olv records. Check the MAXDS value and the CAPTIVE= value. this has to comedown for the MAXDS usage to comedown. MAXDS value cannot be increased by a command.
cadispatchcommandsDCUF SHO USERS ALL — list all the users
cadispatchcommandsDCMT V LTE VTMLT051 RES DEL — logoff dispatch
cadispatchcommandsDCMT DISPLAY STAT SYSTEM
CADispatchcommandsDSOPTN — to check if we are using internal or external security
CADispatchFile size inc 22) Migrate the Archive Area.- review documentation for details. Run the job CA.DISP.SAMPJCL(DSEXARX) use the command DCMT D AR in the dispatch to list the current file sizes and update the job with increased size if this job fails do not try to re-run the job we need to delete the current files restore the files from backup and then re-run the job again. 3) Migrate additional areas – only needed IF you want to migrate other areas – which you probably wont. None for now. 4) DSEXDBEX – Rebuild Database load modules CA.DISP.SAMPJCL(DSEXDBEX) 5) Rebuold modules for OLVO only reqions – this step would ONLY run if you are running OLVO regions none for now.
CADispatchfile size inc 36) Complete backup of the new files CA.DISP.SAMPJCL(DSEXBR01) 7) Run the status job CA.DISP.SAMPJCL(DSEXSTAT) Check for the increased sizes of the files required. 8) Copy the load modules from CA.**.CADSLOAD.WORK to CA.DISP.CADLOAD and 9) Modify Utility members. AR-AREA — DSEXARBL, DSEXARCL, DSEXBDEL, DSEXBR04 10) restart the DIPATCH tasks.
cadispatchfles fullif OLV files are full do not simply migrate them. First check if there is space in archive files. if the archive files are full. then we need allocate bigger archive files. Complete the pending archive files and then automatically olvs files get archived as per the rules.
CADispatchfile size increase************ Increase the size of archive file************************* 1) Shutdown Dispatch and other dispatch taks. move the task out of automation 1) Complete backup of existing databasets – this must INCLUDE the Dispatch load library (CADSLOAD) BRing down dispatch and run the job OPDSPD01 and dispatch load backedup as CADSLOAD.WORK here we have 2 load libraries. S*.DISP.CADLOAD and CA.DISP.BE07.CAILIB– copied both to CA.**.CADSLOAD.WORK 1)Backup the librareisusing ADRDSSU S*.DISP.SAMPJCL(ADRDDUMP)
ibmdocswebsitehttps://watsonwalker.com/
ibmDRtechnologywe use storage replication, most commonly with Hitachi or SRDF using Vmax or now Powermax from DellEMC
ibmdrpprcwhen pprc is avaialble and we want to do a DR for few lpars in sysplex sharing DASD then it is better to do the stopping nd startng of PPRC at LCU level.
ibmdumpcommand dump/D DUMP displays the current dump setup for dataset or logstream and the naming convention of dump datasets. /D D,O display the options for different dumps that can be captured. sdump, sysabend, sysudump and so on Dd clear,dsn=xx dd clear,dsn=all /CD SET,SDUMP,MAXSPACE=5000M — command to increase the space for a dump to be captured. /DD DUMP,ADD,VOLUME=xxxxx to add a volume to capture dump datasets.
ibmdumptypesSLIP DUMP — Snapshot of virtual storage a program being used. Transaction DUMP — dump virtual storage areas of interest/uses the IEATDUMP macro to obtain a representation of virtual storage. Abend Dump — requested via a jcl when a task cannot complete successfully. SVC (Supervisor call) Dump — this is the equivalent of users snap dump for a contriol program. Slip Dump — trigger a dump based on a specific message. Standalone Dump — dump taken for real and part of virtual storage when a system stops working.
ibmdumptypesThe three ddnames that can be used in JCL as DD stat. to indicate which type of abend dump you want to use are: SYSUDUMP which is formatted dump of user storage associated with the failing task. SYSABEND which is a formatted dump that contains the same information as SYSUDUMP, plus LSQA and the IOS control blocks. SYSMDUMP which is an unformatted dump of the address space, including the system areas.
ibmdumpslipslip set,enable,lpamod=mod0x,comp=0c4,errtyp=prog,jobname=axxxxx,action=svc,end
ibmdumpcommand DUMPwe can specify the options for svc dump in IEADMCxx. *07 IEE094D SPECIFY OPERAND(S) FOR DUMP COMMAND — appears when a SVC dump is requested. we can reply with following options: U — dumps MASTER SCHEDULER addr space. SDATA=(area) — SDATA=(CSA,NUC) — dumps CSA and NUCLeus storage areas. STOR=(xxxxxxxx,yyyyyyyy) — allows you to specify a range, or multiple ranges of virtual storage that you require to be dumped STRLIST=(STRNAME=structurename) — dump any structure. ASID=(xxxx,yyyy) —
ibmdumpcommand DUMPSVC dump command Dump COMM=(title for the dump) / D TITLE=(title for the dump) — to start the dump. Dump COMM=(xxxx),PARMLIB=xx — takes an SVC dump with the options specified in PRAMLIB IEADMCxx if we dont provide any parmlib then we get teh message *07 IEE094D SPECIFY OPERAND(S) FOR DUMP COMMAND we cna reply R 07,JOBNAME=ABC or R 07,JOBNAME=ABC,SDATA=(PSA,NUC,SQA) R 07,TSONAME=XXXXXX — to dump a userid IEA911E will be issued if the dump data set was preallocated. In this instance, IEA611I is issued, indicating that the dump data set was dynamically allocated. use the CHNGDUMP command to change the dump options CD SET,SDUMP,MAXSPACE=8000M — to increase the svcdump maxspace by 8000M.
compuwareecccommandsrefresh parmlib for CMSC task — /f cmsc,parmlib refresh LMCLxx/FAVMxx/DDSNxx
IBMEducationwebsitehttps://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3/en/homepage.html
ibmeducationwebsitehttps://www.ibm.com/it-infrastructure/z/software-trials
CAEndevourVer checkPanels
RocketEOSLicenseexpiration date of the EOS 360 license at the bottom of the EVT syslog (alternatively, you can view the RSDLOUT dd of the EVT job/STC) so there really is no need for a batch utility to get this information.
RocketEOSLicensein the EVT log check the RSDLOUT DD messages for the expiration date.
RocketEOSLicenseissue the command PROFILE and select system profile
compuwarefileaidcommandsTSO XVJALLOC in the fileaid panels would provide information on the allocations for fileaid.
compuwarefileaidcommands/F CMSC,parmlib refresh famv00
ibmftpcommandsmainframeA to mainframeB dumped file. Connect to MainframeA from MainframeB and get the file. quote site recfm=u lrecl=0 blksize=27998 Type e mode b get ‘dump file on mainframeA’ ‘dump file on mainframeB’ (replace — ensure to create the mainframeB file upfront with the same attribtues as dump file on MainframeA.
IBMFTPmessagesEZYFS56I – A client logged into the server. — check this message for any problem determination
IBMFTPmessagesEZYFS57I – A client login to the server failed.
ibmftpcommandsto get a ps dataset from a to b when logged on to B … mput ‘a file name’ ‘b file name’
ibmftpcommandsto get a pds dataset from a to b when logged on to B … mput ‘a file name(*)’ ‘b file name’ — when prompted use S to stop prompting for each member. Also we can use TYPE E and MODE B before the put/get commands to transfer the files in non bin format.
ibmFTPcommandsquote site lrecl=80 recfm=fb blksize=800 volume=xxxxx — for any dataset to be created during FTP. quote site recfm=U lrecl=0 blksize=27998 cylinders pri=50 sec=10 — to specify space.
ibmFTPcommandsmkd — to create a dataset through ftp. It takes the attributes from the quote site command.
ibmftpsearch orderFTP search order for ftp parms : $HOME/ftp.data userid.FTP.DATA /etc/ftp.data SYS1.TCPPARMS(FTPDATA) data set tcpip_hlq.FTP.DATA file
ibmftpfilesystemto find the filesystem mounted for a path issue the command df .
ibmftpsetupjcl to check the connectivity setup of maintframe //TESTJOB1 JOB CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1),NOTIFY=&SYSUID //NSLOOKUP EXEC PGM=BPXBATCH, // PARM=’PGM /bin/dig eapi.broadcom.com’ //STDOUT DD PATH=’/tmp/&SYSUID..bpxbatch.stdout’, // PATHOPTS=(OWRONLY,OCREAT,OTRUNC), // PATHMODE=SIRWXU //OUTSTEP EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //INPUT DD PATH=’/tmp/&SYSUID..bpxbatch.stdout’, // PATHOPTS=(ORDONLY), // PATHDISP=DELETE //OUTPUT DD SYSOUT=*, // DCB=(RECFM=V,LRECL=256) //SYSTSIN DD * OCOPY INDD(INPUT) OUTDD(OUTPUT) /*
ibmftpstatusquote stat — we can check for jes interface level.
ibmftpjessubmit a job — quote site filetype=jes get ‘Dataset(member)’ member.txt — to submit a job in dataset(member) and get the output ftp’ed to PC in name member.txt put filename.txt — submit job form pc to mainframe. job should be userid + 1 character like A or B or anything, if the username used during the ftp session is “a93lnzz” to get the output automatically when you use the get command. If you want to submit the job with different Jobname and still if you want the output of the job then JESINTERFACELEVEL should be set to 2 (which in most environment security people wont allow) To find the jes interface level you can issue the below command after connect to the ftp server. quote stat Then if you see the output it should look something similar to below 211-JESINTERFACELEVEL is 1 we can also use the command DELETE jobnumber to delete a job in JES queue.
ibmftpjes30 CS50458 is logged on. Working directory is “CS50458.”. ftp> quote site jesjobname=* 200 SITE command was accepted ftp> quote site filetype=jes 200 SITE command was accepted ftp> quote site jesowner=cs50458 200 SITE command was accepted ftp> dir 200 Port request OK. 125 List started OK for JESJOBNAME=*, JESSTATUS=ALL and JESOWNER=CS50458 JOBNAME JOBID OWNER STATUS CLASS CS50458 TSU07605 CS50458 OUTPUT TSU ABEND=622 3 spool files CS50458 TSU07592 CS50458 OUTPUT TSU ABEND=622 3 spool files CS50458 TSU07472 CS50458 OUTPUT TSU ABEND=622 3 spool files CS50458 TSU07955 CS50458 ACTIVE TSU 250 List completed successfully. ftp> get TSU07605 200 Port request OK. 125 Sending all spool files for requested Jobid 250 Transfer completed successfully. ftp: 38573 bytes received in 1.34Seconds 28.72Kbytes/sec.
ibmftpcommandsConnect to Mainframe from PC for a file. To download the file from mainframe to PC : Get ‘FIIE.ON.MAINFRAME’ D:\MYFILES\TEST.TXT To Upload the file to mainframe from PC : PUT D:\MYFILES\TEST.TXT ‘FILE.ON.MAINFRAM’ to upload a files in a folder : lcd localfolder / mput * and give y to the files we want to upload
ibmftpcommandscommad to change the local working directory after connecting to FTP. LCD C:\Users\a93lnzz\Desktop\cts\smf
ibmftpcommandsJCL to include date in the FTP ouput file. Not workign. //STEP1 EXEC PGM=EZACFSM1 //SYSIN DD * put ‘BELLDS.DS26460A.FTP’ AKDIP.ESW.OR.&LYYMMDD.&LHHMMSS qui /* //SYSOUT DD DSN=&&T,DISP=(,PASS),UNIT=VIO, // RECFM=FB,LRECL=80 //STEP2 EXEC PGM=FTP,PARM=’whatever’ //OUTPUT DD SYSOUT=* //INPUT DD * ip address id pw ascii path /* // DD DSN=&&T,DISP=(OLD,DELETE)
ibmftpdocMAXPDSFTP determines the number of PDS members numbers to be considered before converting the inputfile into a PS file.
ibmftpsecurethe parm “SECURE_FTP REQUIRED” in your FTPDATA parmlib used while satrting the FTP DAEMON task ensues that we use some secure FTP tools like Filezilla and not command prompt FTP to connect to the mainframe from PC.
ibmftpload moduleftp statements to transfer a load module. logging into the target system from source system. //STEP1 EXEC PGM=FTP //SYSPRINT DD SYSOUT=* //SYSIN DD * target ip userid password lcd ‘xxxx.IBM.CDP.V1R1.SHBOLOAD’ — is the local file you want to ftp quote site LRECL=32760 RECFM=U BLKSIZE=32760 PDSTYPE=PDSE quote site directory=10 volume=eslpl0 mkdir ‘ESLIBM.CDP.V1R1.SHBOLOAD’ cd ‘ESLIBM.CDP.V1R1.SHBOLOAD’ mPUT * // //*
ibmftpftps and sftpFTPS is FTP with SSL for security. It uses a control channel and opens new connections for the data transfer. … SFTP (SSH File Transfer Protocol/Secure File Transfer Protocol) was designed as an extension of SSH to provide file transfer capability, so it usually uses only the SSH port for both data and control
ibmftptheoryFTP and FTPS uses the task FTPD* and the SYSFTPD dd points to the FTPDATA member that has the parms. If we have TLS authentication as yes the regular FTP will not work. SFTP uses ssh and it has a tasks sshd* running on the system.
ibmftpactive/passiveActive mode: server initiates data connection to the client, Passive mode: client initiates data connection to server If you need a passive ftp connection then check your parms fwfriendly and epsv4 one of them has to be set to TRUE.
ibmftpcommandsiconv -f ISO8859-1 -t IBM-1047 TESTJCL2 > TESTJCL2.txt — convert file to ascii in unix.
ibmftpftps and sftpFTPS (File Transfer Protocol with support for Transport Layer Security (SSL/TLS)), FTP (File Transfer Protocol) and SFTP (SSH File Transfer Protocol) are basically protocols that grants remote file transfer capabilities between a client and a server.
ibmftpftps and sftpWhat is FTPS? Concern about internet security grew during the 1990s. In response, Netscape created the Secure Sockets Layer (SSL, now known as TLS) protocol to protect communications over a network. SSL was applied to FTP to create FTPS. Like FTP, FTPS uses two connections: a command channel and a data channel. You can choose to encrypt both connections or only the data channel. FTPS authenticates your connection using a user ID and password, a certificate, or both. When connecting to a trading partner’s FTPS server, your FTPS client will first check if the server’s certificate is trusted. The certificate is considered trusted if either the certificate was signed by a known certificate authority (CA) or if the certificate was self-signed by your partner and you have a copy of their public certificate in your trusted key store. Your partner may also require that you supply a certificate when you connect to them. If your certificate isn’t signed by a third-party CA, your partner may allow you to self-sign your certificate, sending them the public portion beforehand to load into their trusted key store. User ID authentication can be used with any combination of certificate and/or password authentication.
ibmftpftps and sftpWhat is SFTP? While FTPS adds a layer to the FTP protocol, SFTP is an entirely different protocol based on the network protocol SSH (Secure Shell). Unlike both FTP and FTPS, SFTP uses only one connection and encrypts both authentication information and data files being transferred. SFTP provides two methods for authenticating connections. Like FTP, you can simply use a user ID and password. However, with SFTP these credentials are encrypted, giving it a major security advantage over FTP. The other authentication method you can use with SFTP is SSH keys. This involves first generating a SSH private key and public key. You then send your SSH public key to your trading partner and they load it onto their server and associate it with your account. When they connect to your SFTP server, their client software will transmit your public key to the server for authentication. If the public key matches your private key, along with any user or password supplied, then the authentication will succeed. User ID authentication can be used with any combination of key and/or password authentication
ibmftpcommandslcd — to check the local current working directory.
ibmftplogsWhen OMVS starts it executes all the commands in /etc/rc from where SYSLOGD is generally started as “export _BPX_JOBNAME=’SYSLOGD1′ /usr/sbin/syslogd -f /etc/syslogd.conf &” and in SYSLOGD we have the satemetns for log file allocaitons for FTP, SSH, ssylogd and the backup statements. The -N parameter specifies that the file should be # automatically archived and then re-initialized when an archive event # occurs. syslog.conf file ahs the archive time parms too. we can also use *.INETD*.*.* /var/log/%Y/%m/%d/inetd — this would create new files as per settings.
ibmftpstcsshd starts and ends typically and in general. A forked copy of the daemon will be left running, which is normal
ibmftpsend filesend pax file from a to b — from a ftp to b cd to b locaiton bin put ‘file on a’ ‘file on b’
ibmftpsetupif we have the parm AUTH set to SECURED in FTPDATA then we can only connect using SECURED FTP tools from open systems. if we hav ethe AUTH parm set to ALLOWED we can use commnad promot (non secured) to connect and send / receive files.
ibmftpconvdefault convertion that happens during FTP. Got the below updates from IBM. So, it is EBCDIC IBM-1047 to ASCII IBM-850. Let me know if this change is getting us the results. “ As you are running an FTP batch job, you are using the z/OS FTP client function and will connect to the remote FTP server in the PC. There many ways to specify a character translation to the FTP client but if you did not customize anything to do so, the STANDARD translation table (STANDARD.TCPXLBIN) will be used. In this case, the character translation is between EBCDIC ibm-1047 and ASCII ibm-850. You may need to use more appropriate code pages or translation tables, and this can be specified to the FTP client in the following search order: 1. Data set specified in the SBDATACONN configuration statement in FTP.DATA 2. Data set specified in the SBTRANS configuration statement in FTP.DATA 3. user_id.FTP.TCPXLBIN 4. hlq.FTP.TCPXLBIN 5. user_id.STANDARD.TCPXLBIN 6. hlq.STANDARD.TCPXLBIN 7. The same translation tables established for the control connection I would recommend to use the SBDATACONN statement. It can be used for both FTP client and FTP server. In the SBDATACONN statement, you can either indicate a translate table that you may customize or precise the desired code pages of the translation. If you use the z/OS FTP client you can code this SBDATACONN statement either in the related FTP client FTP.DATA or within a locsite subcommand. Such as: locsite SBDATACONN=(IBM-1047,IBM-819) You have to determine which code page is used on each side, in particular on PC side. You can find many samples of translation tables in both SEZATELX and SEZATCPX for specific national usage.
ibmftpbatchuploading multiple files to mainframe from PC using batch ftp. 1. Download all the files to PC. 2. rename the file names to 8 chars without extn (to be saved as members else not required). we can use SHIFT+Rightclik to open the windows command prompt in the directory we are in. 3. remove the extensions by issuing teh command ren *.BIN *. 4. issue the command dir > myoutput.txt — then we will get the output of the dir command in myoutput.txt file in your current working directory. 5. open an excel sheet and open the myouput.txt file and use space as delimiter. 6. use some logic and create the put statements using the concatenate function better get it as Put filename ‘mainframe filename(member)’ 7. create ftp.txt file and add the following statement and the put statements generated in teh excel file. open ipadress userid password cd mainframe file hlq (for some reason it is taking userid as HLQ by default attached to your CD location) lcd localfile loction. binary 8. issue the command ftp -s:ftp.txt > ftplog.txt — in command prompt ensure that you are in the ftp.txt file location. this will run the command and produce the log in ftplog.txt in the location the commnd is run. or you can also save this command in a file and rename it as ftpstart.bat and double click it to run.
ibmftpdebugIf you could recreate the issue please collect following trace. userid is the task that FTPD1 STC is associated with. F FTPD1,DEBUG=(ALL,USERID(US0551A2)) F FTPD1,DUMP=(21,USERID(US0551A2)) resubmit client script D GRS,RES=(SYSDSN,mvsdatasetbname) When trace is done, turn off trace by command F FTPD1,DEBUG=(NONE) F FTPD1.NODUMP Note that the FTPD server trace will route to syslogd daemon facility
ibmftpchange passwordcommand to change password using cmd ftp. user userid oldpassword/newpasswrd/newpassord
cageneralwebsitehttps://support.broadcom.com/product/product-lifecycle-details.html?segment=MF life cycle of CA products. https://support.broadcom.com/group/ecx/productlifecycle?
BMCgeneralsupporthttps://webapps.bmc.com/support/faces/az/supportlisting.jsp
compuwaregeneralsupporthttps://mainframesupport.force.com/gateway/s/product-support-dates
ibmhardwareMSULarge Systems Programming Reference — has the details of the hardware and the MSU capacity of all models available
ibmhardwarechip statusD M=CHP(2A) — chip status
ibmhardwareprocesserCPACF — CP Assist for crypto graphic function.
ibmhardwareCUoDCapacity upgrade on demand. allows the customer to initiate a permanent increase in processing capacity. if the capacity is required only for a short term then we can have IBM’s On/Off Capacity on demand configured. (On/Off CoD)
ibmhardwareCBUCapacity Backup Upgrade : can help provide reserverd emergency backup capacity for all processor configurations.
ibmhardwarewebsitewebsite that lists the IBM MF hardware and the types. models https://www-01.ibm.com/servers/resourcelink/lib03060.nsf/pages/lsprITRzOSv2r3?OpenDocument
ibmIMSversionissue the command /f xxxx,display version — xxxx IMS connect stc. Display the version of IMS we are running.
ibmiodfcommandsD IOS,CONFIG — display the IODF — does the hardware and software update.
ibmiodfcommands/ACTIVATE iodf=xx,test — test a new IODF for any errors
ibmiodfcommands/ACTIVATE iodf=xx,soft=novalidate, — activates only the software part of systems IODF updates and will not validate the
ibmipcsinvocationissue the command TSO IPCS to check if we get the panels.
ibmipcsispf invocationwhen invoking IPCS if you run into an error with respect to allocating the DDIR dataset on a volume then try the command TSO %BLSCDDIR VOLUME(VSAM01) — volume has to be a volume that we can allocate the DDIR dataset. the ddir by defatult uses SYS1.DDIR if noprefix is set in your profile or usierd.ddir if prefix is set to userid.
ibmiplparmlibif you want to change the IEASYM/PARMLIB statement midway of IPL due to some issue. Try the below command setload t1,ieasym,dsn=sys5.iplparm,vol=ziodf7 — this command will look for LOADT1 in SYS5.IPLPARM and relook into the IEASYM parm. setload t1,parmlib,dsn=sys5.iplparm,vol=ziodf7 — this command will look for LOADT1 in SYS5.IPLPARM and relook into the PARMLIB stat. setload ipl,ieasym — this command will look for the load at the time of IPL.
ibmiplnotesOut of habit, LOAD CLEAR (not RESET CLEAR) It’ doesn’t matter with z/OS though (or OS/390 before that). Though you can do RESET clear after you shut down the LPAR and that is the same as doing LOAD CLEAR when you IPL. z/OS clears the storage regardless. I’m not sure the last time it matter… probably before MVS/XA.It matters when IPLing stand alone dump not to clear storage. Whatever you problem was, doing LOAD CLEAR wasn’t it. z/OS manual doesn’t even mention clear because it’s irrelevant. https://www.ibm.com/support/knowledgecenter/SSLTBW_2.3.0/com.ibm.zos.v2r3.ieag100/loadss.htm z/OS basics mentions that z/OS clears all central storage to zeros. https://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.zsysprog/zsysprogc_systemIPL.htm
ibmiplhardware loadThe initialization process takes place in the following order: 1. Power on the computer. 2. IML is automatically initiated. 3. Hardware such as control processors, storage, and devices are powered on and checked. 4. IML completes tasks. 5. HMC screen is displayed on the console. 6. Central processing complex is ready to IPL.
ibmiptracetraceIP VERBX MTRACE — last messagest that are issues and not captured… due to sisues.
ibmiptracetraceIP ST W — when the wait state is issued.
ibmiptracetraceIP SYSTRACE ALL PERFDATA TIME(LOCAL) — summary of the task using srbs
ibmispfcommandsto give a command use ZEXPAND and write the command in the POP UP panel. If it has been activated on the system. it works in the member and not outside of a member.
ibmispfcommandshide lines — xx line command hides the lines
ibmispftraceISPDPTRC– this command is issued in 6 and it would start captring the trace of panels that we would use. Once you have used the panels to test re-issue the command to end the tace and display the resuts.
ibmispfsetupthe ISPSTART command displays the default primary panel specified in the DEFAULT_PRIMARY_PANEL keyword in the ISPF configuration table. This keyword is typically set to ISP@MSTR.
ibmispfkeysuse a PFKEY setting to ZEXPAND using the KEYS command. We can issues lenghtier tso commands.
ibmispfjobcardISERDIT MACRO for job card. ISREDIT MACRO SET Y=&SYSUID — not used here but can be used to get better results. ISREDIT LINE_AFTER 0 = ‘//”&SYSUID”A,JOB TEST,’TEST’,REGION=0M,’ ISREDIT LINE_AFTER 1 = ‘// CLASS=A,MSGCLASS=X,’ ISREDIT LINE_AFTER 2 = ‘// NOTIFY=&SYSUID’ ISREDIT LINE_AFTER 3 = ‘/*JOBPARM L=9999’ ISREDIT LINE_AFTER 4 = ‘//*’
ibmispfallocTSO ALLOC FI(ddname) DA(‘dataset name’) SHR REUSE
ibmispfcommandsLine commands BNDS : set boundaries for the text flow MASK : repeat the chars every time we insert a line. TABS : Creates tabs for a line and use the same for all line. TE : To be able to write paragarphs without any intereption. TS : To update a paragraph of sort.
ibmispfx allX ALL — to hide all lines F abc all — shows all lines having the string ABC DEL X ALL — to delete all hidden line DEL NX ALL — to delete all non-exclued lines. Sx — line command to show hidden line. S1 — opens up one hidden line. Needs to be given on the Hidden line. X ALL ‘ ‘ 1;DEL X ALL;SAVE — deletes blank lines. HIDE X : to hide all the xcluded lines. FLIP : This command will flip the excluded lines for the non excluded lines.
ibmispfpfkeysto see the pfkeys issue the command PFSHOW on command line. to hide the PF keys issue the command PFSHOW OFF
ibmispffindFIND P’###’ — To find a string of 3 numeric characters FIND P’.’ — To find any character that cannot be displayed CHG P’@@##’ P’>>==’ — To change an alphabetic, alphabetic, numeric, numeric string so that the alphabetic characters become uppercase characters and the numeric characters are unchanged
ibmispfcommand tableoption 3.9 list the current command tables. We can create a new user command tabe and update the commands in the user command table. Issu the command TSO ISPCCONF provide a dataset with VB 255 and PDS with a member. continue from there to use the defaults or update any. select option 5.Modify ISPDFLTS and Other DM Settings to create a new table.
OrcalejavajspJava code can even be directly embedded into an HTML file, and compiled and run when the HTML file is requested. These are known as Java Server Pages (JSP).
OrcalejavaservletIn IBM terms, a servlet is a Java program that uses the Java Servlet Application Programming Interface (API) to access data on the mainframe.
OrcalejavaappletA Java program that runs in a web browser that has been java configured.
ibmjclsyntaxuse dsn=&&abc,disp=(new,pass,pass) — to create a temp dataset and pass it to the next step.
ibmjclsyntaxuse SYSTEM=xxxxx in the job card to specify on which system the job has to run in a JES2 MAS environment.
ibmjclidcamsjob to delete the members of a PDS if the PDS is held by other running tasks //A93LNZZ$ JOB TEST,’TEST’,REGION=0M,CLASS=A, // MSGCLASS=T,PRTY=15,NOTIFY=&SYSUID //STEP1 EXEC PGM=IDCAMS //DD1 DD DISP=SHR,DSN=SYS1.FILEAID.V17R02.SXVJLOAD //SYSPRINT DD SYSOUT=A //SYSIN DD * DELETE – ‘SYS1.FILEAID.V17R02.SXVJLOAD(*)’ FILE(DD1) delete ‘sys2.tet.tet’ purge — delete a nonexpiring dataset.
ibmjclidcamsREPRO //STEP1 EXEC PGM=IDCAMS //DD1 DD DISP=SHR,DSN=SYS1.FILEAID.V17R02.SXVJLOAD //DD2 DD DISP=SHR,DSN=SYS8.COMPWARE.FAMVS.V17R02.SXVJLOAD //SYSPRINT DD SYSOUT=A //SYSIN DD * REPRO INFILE(DD2) OUTFILE(DD1) REPLACE
ibmjclgdgGDG cretion //STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE GDG(NAME(SYS3.OPSCCHK.SYSR.COMDOUT) – LIMIT(7) – NOEMPTY – SCRATCH) /*
ibmjcltemp//SORTOUT DD DSN=&&TEMP,DISP=(NEW,PASS,DELETE), // UNIT=SYSDA, //SORTIN DD DISP=(OLD,DELETE,KEEP),DSN=&&TEMP
ibmjclutilityjcl example to use variables in sysin // EXPORT SYMLIST=(RM1DT,LPAR,VER) Multiple variables separated by ‘,’ // SET RM1DT=161213,LPAR=abc,VER=V12 //DELETE1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD *, SYMBOLS=JCLONLY DELETE ALCSS.NONP.DCS.CADF.D&RM1DT.&LPAR..&VER IF MAXCC LT 12 THEN DO SET MAXCC = 0 END //*
ibmjclproc / multiple runs//SMFUS36D JOB SMF,’MFSYSPG’,REGION=0M,CLASS=U, // MSGCLASS=T,PRTY=15,NOTIFY=&SYSUID //L30W036D PROC HLQ1=HLQ1,LPAR=LPAR // EXPORT SYMLIST=(HLQ1,LPAR) //SETA SET HLQ1=&HLQ1,LPAR=&LPAR //SYSEDEL EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD *,SYMBOLS=JCLONLY DELETE &HLQ1..&LPAR..L30W036D.SMF70.EXTRACT DELETE &HLQ1..&LPAR..L30W036D.SMF723.EXTRACT //STEP2 EXEC pgm //STEP3 EXEC pgm // PEND //SYSE EXEC L30W036D,LPAR=SYSE,HLQ1=SYS8.SMF //SYSF EXEC L30W036D,LPAR=SYSF,HLQ1=SYS8.SMF //SYSG EXEC L30W036D,LPAR=SYSG,HLQ1=SYS8.SMF //BE07SMFR EXEC PGM=IKJEFT01,COND=(5,LT) //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * SUBMIT ‘SYS5.CTS.JCL.SMF.CNTL(SMFUS38D)’ SUBMIT ‘SYS5.CTS.JCL.SMF.CNTL(SMFUS39D)’ SUBMIT ‘SYS5.CTS.JCL.SMF.CNTL(SMFUS40D)’ /*
ibmjcldata and timeuse D&LMMDDYY. T&LHHMMSS. — to get today’s time and date.
ibmjclutility//TERSEQ EXEC PGM=TRSMAIN,PARM=PACK //SYSPRINT DD SYSOUT=* //INFILE DD DSN=LCL3M.BE07.SYSLOG.DAILY.G6218V00, // DISP=SHR //OUTFILE DD DSN=A93LNZZ.SYSLOG.MAR26TH, // DISP=(NEW,CATLG),DCB=(DSORG=PS,RECFM=FB,LRECL=1024), // SPACE=(CYL,(100,100),RLSE)
ibmjclutility//SEARCH EXEC PGM=ISRSUPC, // PARM=(SRCHCMP,ANYC,IDPFX,NOPRTCC) //NEWDD DD DSN=your.input.dataset,DISP=SHR //OUTDD DD SYSOUT=A //SYSIN DD * SRCHFOR ‘string'[,t][,startcol][:stopcol] SRCHFORC ‘string'[,t][,startcol][:stopcol] /* It will return maxcc = 1, if it finds the text in the specified PDS, otherwise it return zero
ibmjclutilityIEHMOVE Moves or copies sequential datasets.
ibmjclutilityIEHPROGM Deleting and renaming datasets; catalog or uncatalog datasets other than VSAM.<
ibmjclutilityIEHCOMPR Compares data in sequential datasets.
ibmjclutilityIEBEDIT Used to copy selected parts of a JCL. For Example, if a JCL has 5 steps and we require to execute step 1 and 3 only, then a IEBEDIT JCL can be coded with a dataset which contains the actual JCL to be executed. In the SYSIN of IEBEDIT, we can specify STEP1 and STEP3 as parameters. When this JCL is executed, it executes the STEP1 and STEP3 of the actual JCL.
ibmjcl//MATEKSD JOB MSGLEVEL=(1,1),NOTIFY=&SYSUID //* //* EXAMPLE TO SHOW IF CONDITION IN JCL //* //STEP01 EXEC PGM=IFCOND1 //IFSTMT1 IF STEP01.RC = 0 THEN //STEP02 EXEC PGM=IFCOND2 //STEP03 EXEC PGM=IFCOND3 // ENDIF //STEP04 EXEC PGM=IFCOND4 //STEP05 EXEC PGM=IFCOND5 //IFSTMT2 IF STEP05.RC = 04 THEN //STEP06 EXEC PGM=IFCOND6 // ELSE //STEP07 EXEC PGM=IFCOND7 // ENDIF //STEP08 EXEC PGM=IFCOND8 //*
ibmjclutilityThis basic example uses IEBUPDTE to add and replace JCL procedures to the data set named MY.PROCLIB: //ADDPROC1 JOB 1,SMCHUGH,MSGCLASS=X // EXEC PGM=IEBUPDTE //SYSPRINT DD SYSOUT=* //SYSUT1 DD DISP=OLD,DSN=MY.PROCLIB //SYSUT2 DD DISP=OLD,DSN=MY.PROCLIB //SYSIN DD DATA ./ ADD LIST=ALL,NAME=MYJOB1 //STEP1 EXEC=SUZNX1 //PRINT DD SYSOUT=A // (more JCL for MYJOB1) //SYSUDUMP DD SYSOUT=* (last JCL for MYJOB1) ./ REPL LIST=ALL,NAME=LASTJOB //LIST EXEC PGM=SUZNLIST // (more JCL for this procedure) //* LAST JCL STATEMENT FOR LASTJOB ./ ENDUP /*
ibmjclutilityIn this example, a block of three logical records is inserted into an existing member, and the updated member is placed in the existing partitioned data set. //UPDATE JOB … //STEP1 EXEC PGM=IEBUPDTE,PARM=MOD //SYSPRINT DD SYSOUT=A //SYSUT1 DD DSNAME=PDS,UNIT=disk,DISP=(OLD,KEEP),VOL+SER= //SYSUT2 DD DSNAME=PDS,UNIT=disk,DISP=(OLD,KEEP), VOLUME=SER=111112 //SYSIN DD * ./ CHANGE NAME=RENUM,LIST=ALL,LEVEL=01,SOURCE=0 ./ NUMBER SEQ1=15,NEW1=20,INCR=5,INSERT=YES (Data statement 1) (Data statement 2) /
ibmjclstcto have a job that can run as an STC. we can these jobs added to IEFJOBS DD in the MASTER Jcl. then we can issue the /START ABC. The ABC would have the required job card.
ibmjclsrch procwhen we issue the /start xxx in the console. the system checks the IEFJOBS and then IEFPDSI and then JES2 proc concatenation to start the job or proc.
ibmjclcommandjcl to issue MVS and JES2 commands — just a job card and command statement can be used and run commands. //jobcard //MVSCMD COMMAND ‘D symbolS’ //MVSCMD COMMAND ‘STOP SYSVIEW’ //JESCMD COMMAND ‘$D JES2’ //*
ibmjclcommandjes command can also be issued /*$D SPL //A93LNZZ$ JOB TEST,’TEST’,REGION=0M,CLASS=A, // MSGCLASS=T,PRTY=15,NOTIFY=&SYSUID,SYSTEM=SYST //MVSCMD COMMAND ‘D SYMBOLS’ //STEP1 EXEC PGM=IEFBR14
ibmjclcommandjes command can also be issued /*$D SPL /*$VS ‘I SMF’ —- can be used to issue MVS commands. //A93LNZZ$ JOB TEST,’TEST’,REGION=0M,CLASS=A, // MSGCLASS=T,PRTY=15,NOTIFY=&SYSUID,SYSTEM=SYST //MVSCMD COMMAND ‘D SYMBOLS’ //STEP1 EXEC PGM=IEFBR14
ibmjclIKJEFT01LISTC ENT(‘ibmuser.reports’) — listcat all the entries EX ‘vendor.clist(rexxtest)’ — execute rexx SEND ‘REXX pgm has run ‘ user(abcd) — send messages to a user if one command fails all other after that commands still run. we can use IKJEFT0A to stop exection if one command fails.
ibmjclaliascreate an alias for load module //LKED EXEC PGM=HEWL,PARM=’LIST,AMODE=31,RMODE=ANY,RENT’ //SYSLIN DD * SETCODE AC(1) INCLUDE SYSLIB(TCCENTCB) ALIAS IGYCRCTL(CEESTART) ALIAS TCCENTCB(CEESTART) ENTRY CEESTART NAME TCCENTCB(R) /* //SYSUT1 DD UNIT=SYSDA,SPACE=(1024,(200,20)) //SYSPRINT DD SYSOUT=* //SYSLMOD DD DSN=userid.yourname.LOAD,DISP=OLD //SYSLIB DD DSN=*.SYSLMOD,DISP=OLD
ibmjclkeywordsSCHENV=xxxx — would allow the job to run any jobclass and it would override the default SCHENV for that job class
ibmjclrenamejcl to rename a member of a pds //A93LNZZ$ JOB TEST,’TEST’,REGION=0M,CLASS=T, // MSGCLASS=T,PRTY=15,NOTIFY=&SYSUID,SYSTEM=SYST //STEP1 EXEC PGM=IEHPROGM //DD1 DD VOL=SER=ZSPILL,DISP=OLD,UNIT=3390 //SYSPRINT DD SYSOUT=* //SYSIN DD * RENAME VOL=3390=ZSPILL,DSNAME=A93LNZZ.JCL.PROD, X NEWNAME=IEHCHK, X MEMBER=IEHCHK1 /*
ibmjclregionto make the pgm run in a specific region space //ABC job 123,’yugi test’, REGIONX=(512K,1G) — This allows you to specifically define memory amounts below the line storage (16MB) and below the bar (above 16MB and below 2GB). In the example below, the first sub-parameter (512K) indicates the amount of memory to be assigned below the 16 MB line. The second sub-parameter indicates the amount of memory to be assigned above the 16 MB line, but below 2 GB (the bar).
ibmjclnotifygenerally we use notify to send the end of job message to a user. //ABC job ….. if you want to send that as an email //NOT1 NOTIFY email=’ypothuru.cw@mmm.com’,type=email if you want to send the job end message to multiple users then code //NOT1 NOTIFY user=xyz1,type=msg //NOT2 NOTIFY user=xyz2,type=msg using when conditions //NOT1 NOTIFY user=xyz1,type=msg // when='(RC=4 | RC=8)’
ibmjcldynamic dsn//jobname proc //iefproc exec pgm=iebgener //sysut1 dd ddname=iefrder //sysut2 dd sysout=* //sysin dd * now you can supply teh iefrder as follows /S jobname,DSN=filename,disp=shr and it get replaced when the proc is started.
ibmjclxmitXmit is used to send files form one node to another connected node. //STEP1 EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * XMIT xxxxx.yyyyyyy PDS DSNAME(‘xxxxxxx.JCL.PROD’) /* xxxxx — node name of the system that we are planning to send the data. yyyyyy — username.
ibmjclreceiveRECEIVE is used to receive any files that got transmitted to that system by another nodes in the system complex. //* Job to receive the transmitted files. //* syn: RECEIVE INDSN(‘dataset name transmitted’) //* : DA(‘name of the dataset to used used for receving’) //* //STEP1 EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * RECEIVE USERID(A93LNZZ) DA(‘xxxxxxx.JCL.PROD.RECV’) /*
ibmjclrename//step1 exec pgm=ikjeft01 //systsprt dd sysout=* //systsin dd * rename ‘abc.xyz’ ‘abc.def’ — to rename a pds rename ‘abc.**’ ‘abc.def.**’ — to rename mutiple datasets with the same hlq rename ‘abc.xyx(123)’ (456) — to rename mebmer of a pds /*
ibmjclregionREGION : REGION parameter to specify the amount of central or virtual storage that the step requires 0M : can get us a maximum of 2G if that much of space is available below the bar. Which is not available at any time. If no REGION parameter is specified, the system uses an installation default specified at JES initialization. It can also check the IEFUSI and IEALIMIT exits. Region parm by default is specified for a user when creating an ID in racf(picked when logging in by default). It can also be defined with JOBCLASS(TSU).
ibmjclcondJob Card–COND=(value,parm) — Value — is the one that is looked to stop the job. Parm specifies the condition for the value. Step — COND=(value,parm,stepxx,even/only) Value : 4,8,16… Prameter : Greater than(GT), Less than (LT), Greaterthan or equal (GE), Lessthan or equal(LE), Equal(EQ), Noteqal(NE)
ibmjclcondcond on JOB statement if the RC of any step satifies the condition then all the remaining steps will not be executed. On a step we can use only or even for each step and verify it with previous step RC.
ibmjclif..then..else//job //step1 exec pgm= // IF RC>=08 THEN // …. // ELSE //STEP04 exec pgm= //…. // ENDIF
cajclcheckinvocationcan be done by !JCK or EJCK — generally but different sites might have different ones.
ASGJclprepVer checkMostly Panels
IBMJES2proclib$D jobclass(stc),proclib — you can issue this command to identify the proclib concatention that JES2 uses to search for a stc while starting.
ibmJES2setupto identify the systems particiapting in JES2 MAS — /$D MEMBER
ibmjes2commandsfind the name of the running (job/stc/tsu) with the task number /$d stcxxxx, /$d tsuxxxx, /$D jobxxxx
ibmJES2ddif we have an include statement in jes2 proc then the system looks for the member in IEFPDSI DD concatenation in MSTJCLxx proc.
ibmJES2ddif we have an include statement in proc then the system looks for the member in JES2 proc DD concatenation.
ibmJES2commandsif a job is in input and not getting into execution queue try $S jxxxx — xxxx is the job number.
ibmJES2commands$P XEQ — To prevent JES2 and WLM-controlled initiators from selecting work.
ibmJES2commands$S XEQ — To allow JES2 and WLM-controlled initiators to select work
ibmJES2jcl, submit jobJcl to submit a job in a step. //STEPXXXX EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * SUBMIT ‘MY.JCL(MEMBER)’ /*
ibmJES2jclCOND parm in JCL step. COND=(4,LT) read it as follows: If 4 is less than any condition code issued so far, DON’T execute this step.
ibmJES2commands$POJOBQ,ALL,PROTECTED,DAYS>7 — deletes all the jobs from sdsf that are greater than 7 days.
ibmJES2init$Si1-3,c=F — to start init 1,2,3 in class F
ibmJES2init$si1-3 — to start init 1,2,3
ibmjes2jobclassto modify jobs class SWA to below or above. /$t jobclass(x),swa=above/below.
ibmjes2commandscheck jes2 mas — $D MEMBER
ibmjes2resourceZJC — Zone Job Container — The JOBGROUP statement defines a job group. This identifies the name and attributes of the group. JOBGROUP definition starts with a JOBGROUP statement and ends with an ENDGROUP statement. Data for job groups is stored in a data area called a ZJC. $D GRPDEF — display the group defitnition like no. of ZJC, Free, warn. $T GRPDEF,xxxx=yyyy — to update the ZJC…
ibmjes2resourceVTMB — VTAM buffers : SNABUF on TPDEF
ibmjes2resourceTTAB — Trace Tables : TABLES on the TRACEDEF statement
ibmjes2resourceTGS — SPOOL space/track groups : TGSPACE=(MAX=) on the SPOOLDEF statement
ibmjes2resourceTBUF
ibmjes2resourceSMFB — System management facility buffers : BUFNUM on the SMFDEF statement
ibmjes2resourceNHBS — NJE header/trailer buffers : HDRBUF on the NJEDEF statement
ibmjes2resourceLBUF — Logical buffers : BELOWBUF on the BUFDEF
ibmjes2resourceJQES — Job queue elements — this would be the no. of jobs in the jes2 queue. jobs that can be in the JES2 job queue at any given time. This value includes all TSU, STC jobs, and batch jobs $D jobdef — look for JOBFREE, JOBNUM and JOBWARN values these are releated to the JOB Queue $T jobdef we can update these values. we can also delete any old jobs in output queue. /$P OJOBQ,ALL,PROTECTED,DAYS>7
ibmjes2resourceJOES — Job output elements : JOENUM on the OUTDEF statement $D OUTDEF — dispay the definition of the JOES. $T OUTDEF — to update any values. we can use the command /$P OJOBQ,ALL,PROTECTED,DAYS>7. Which would also release JOES.
ibmjes2resourceJNUM —of assignable job numbers (speci®ed through the RANGE= parameter) that have been used for jobs submitted at the local node . check the value with $d jobdef. JES2 assigns as JOBIDs to jobs which originated on the local node. these are the starting and ending number that JES2 / Master assings for any tasks starting in local node. like STC12345, JOB99999 — the number depends on the RANGE parm values. we can delete unwanted jobs in the queue if you are reaching your highest range number and no JOBNUMARN is above 80 or 90%. we can delete any old jobs in output queue. /$P OJOBQ,ALL,PROTECTED,DAYS>7
ibmjes2resourceICES — VTAM® sessions $D U,TP — displays the displays the status of all lines and the JES2/VTAM interface. $D TPDEF — to display the JES2 teleprocessing characteristics. Look for the SESSIONS parameters for the available VTAM sessions. $T TPDEF — to update the numbers.
ibmjes2resourceCMDS — : CMDNUM on the CONDEF statement — no. of JES2 commands that can be queued. $D CONDEF $T CONDEF
ibmjes2resourceCMBS — Console message buffers : BUFNUM on the CONDEF statement
ibmjes2resourceCKVR — Checkpoint versions : NUMBER on the CKPTDEF statement
ibmjes2resourceBUFX — Extended logical buffers : EXTBUF on BUFDEF
ibmjes2resourceBSCB — Bisynchronous buffers : BSCBUF on TPDEF
ibmjes2resourceBERT — Block Extension reuse tables defined in the checkpoint : BERTNUM on CKPTSPACE $D CKPTSPACE ST CKPTSPACE
ibmjes2status$jD DETAILS — lists all resource status (TBUF, CMBS, BERT, BUFX)
ibmjes2command$JDHISTORY — history of jes2 resources in hourly interval. $JD HISTORY(BERT) or any other resource gives the details of that resource alone.
ibmjes2commandsto purge multiple jobs with name /$po jq,jm=
ibmjes2stagesInput -> Conversion -> Processing -> Output -> Hardcopy -> Purge.
ibmjes2checkponint$D PERFDATA(CKPTSTAT) — checkpoint statistics
ibmjes2commandto issue command at specfic intervals /$ta(id number)
ibmjes2keywordsSCHENV=xxxx — would allow the job to run any jobclass and it would override the default SCHENV for that job class
ibmjes2job$t jxxxx,schenv=yyyy — to change a running jobs scheduling env.
ibmjes2lineline(nnnn).jt(n) — job transmitter line(nnnn).st(n) — sysout job transmitter line(nnnn) — NJE/RJE SNA, BSC, TCP/Ip lines.
ibmjes2SAPIThe SYSOUT Application Program Interface (SSI function code 79) allows JES to function as a server for applications needing to process SYSOUT data sets residing on JES spool. Use of the SAPI SSI call allows a user-supplied program to access JES SYSOUT data sets independently from the normal JES-provided functions (such as print or network). Users of this function are application programs operating in address spaces external to JES. SAPI supports multiple, concurrent requests from the applications’ address spaces. Each issuer of the IEFSSREQ macro is referred to as an “application thread.”
ibmjes2scheduling//sched1 jobgroup //job1 gjob //job2 gjob // after name=job1,when=(rc=0) //job3 gjob // after name=job1,when=(rc=8) //job4 gjob // after name=job1 — we can use after, before, concurrent // after name=job3 //sched1 endgroup //job1 job ….. // schedule jobgroup=sched1, // holduntil=’+3:00′ //step1 exec pgm=iefbr14 //* defines a group of jobs and they can scheduled based on few simple conditions.
ibmjes2commandJES2 EDS — electronic email distribution services. uses zOSMF to send the emails. Start and addr space $EDSQnnnn job when ever a email request is done in the NOTIFY parm of JCL. $DS($EDSQ*) — command to display any jobs and their status related to the emails. EDS message queue entries in the JES2 checkpoint (ESQs). • $EDSQnnnn system jobs. Each email message queue has an associated $EDSQnnnn job. . a customized subject line can be con®gured by using the NFY_SUBJECT keyword of the JOBDEF JES2 command or initialization statement
IbmJes2CommandTo start a job that is in input status for some reason try the command $sjjobnumber
ibmJes2stagesinput — reads the input data, assigns a job identifier, places the job jcl onto DASD datasets called spool. conversion — reads the jcl, analyzes for any erros and if no erros converts to machine language. if any errors stop procssing and send the job for output processig. processing — send jobs for execution on zos. ouput hardcopy — printing. purge
ibmjes2dup jobsyou can configure JES2 to allow jobs of the same name to execute at the same time, the DUPL_JOB parameter in the JES2 initialization deck controls this. you could enter the $D DUPJOB command
ibmjes2startIf you need more control during a JES2 startup, then consider using the S JES2,PARM=CONSOLE command. This will read and process existing JES2 initialization statements and then prompt the operator for any additional statements before initialization takes place. This allows you to include a new statement to be used as part of this initialization or override a previous statement that has been entered.
ibmjes2alternatewe can have 2 jes2 running at the same time 1) Create JES2A proc wth just one or 2 proclibs. 2) remove teh RJE and NJE and any start command in the parm file 3) Create a small checkpoint and spool datasets and update jes2 parm. 4) Update the CONCHAR character to a new PREFIX for new JES2 5) Define the alterate JES in subsystem table. SETSSI ADD,SUB=JES2A 6) Ensure XCFGRPNM is set to unique value for JESXCF, as a MASDEF member. 7)
Open systemskubernetesKubernetesKubernetes is a kind of orchestration tool for container manipulaiton/confiugraiton/implementation. How it runs : MASTER(Hardware + OS — funcitons controls Worker nodes) + (Worker nodes(Hardware –> OS (windows/linux) –> docker Engine –> Kube-Proxy –> Kubelet–>(container) –> service(exposes the container application to network)) Master has a functionality (Kubernetes API server + scheduler + controller manager _ etcd) Multiple of worker nodes are controlled by the Master. KUBECTL tool is used to communicate with the Kubernetes API server running in the MASTER. Kubernetes is from google. other tools for container orchestration are Docker Swarm (docker), MESOS (apache)
IBMlearningwebsitehttps://www.slideshare.net
calearningwebsitehttps://community.broadcom.com/education/communities/community-home/librarydocuments?communitykey=bd92ecf3-d291-44ae-87ef-f17f7697397e&tab=librarydocuments&LibraryFolderKey=&DefaultView=
CALicenseLicenseFor all CA products Identify the CA common services initialization proc and look for KEYS DD. You can also check the IPL SYSLOG and the statements in KEYS DD are written to SYSLOG if the task is started under MSTR.
macro4Licenseviewissue the command LMVIEW as line command against a Macro4 license key member to check the license information. Generally the license is in unreadable format.
caLicensewebsitehttps://techdocs.broadcom.com/content/support/en_us/product-content/recommended-reading/technical-document-index/ca-licensing—lmp-listing.html — product corresponing to lmp key.
ibmlinklistdynamicLNKLST UNDEFINE NAME(LNKLSTAA) — to ensure the new linklist name is not available LNKLST DEFINE NAME(LNKLSTAA) COPYFROM(CURRENT) LNKLST ADD NAME(LNKLSTAA) DSN(SYS1.TS55.SDFHLINK.CHCK) — make any changes. VOLUME(TCH301) LNKLST ACTIVATE NAME(LNKLSTAA) — actiating the new linklst LNKLST UPDATE,JOB=* — updating all active tasks to use the ative linklst LNKLST UNALLOCATE — you cna use unallocate to free lnklst dataset from XCF enqueue LNKLST ADD NAME(LS01) DSN(SYS1.TS55.SDFHLINK.CHCK) VOLUME(TCH301) LNKLST ACTIVATE NAME(LS01) LNKLST UPDATE,JOB=* yOu can issue these commands one after the other in the log or you can create a member PROGxx in your PARMLIB concatenation and issue the command /SET PROG=xx to update.
ibmlinklistdynamic/setprog LNKLST,DEFINE,NAME(LNKLSTAB),COPYFROM(CURRENT) /setprog LNKLST,DELETE,NAME(LNKLSTAB),DSN(SYS2.SYSVIEW.&CASYSV..CNM4BLOD) /setprog LNKLST,DELETE,NAME(LNKLSTAB),DSN(SYS2.SYSVIEW.R142.CNM4BLOD) /setprog lnklst,add,name(lnklstab),dsn(SYS2.SYSVIEW.&CASYSV..CNM4BLOD),volume(tch303) /setprog LNKLST,ACTIVATE,NAME(LNKLSTAB) /setprog LNKLST,UPDATE,JOB=* /setprog LNKLST,UNDEFINE,NAME(LNKLSTAB)
ibmlogrlogstream structureOnce the data in the structure reaches the defined highoffload threshold, this data will be offloaded to offload datasets (LOGR.ATR.PLEX1.xxxxx.A00000nn). The logstream data on the structure will also be written to offload datasets on disconnect (when RRS is shutdown for example).
ibmmainframejclhttps://github.com/billrain/MainframeJCL
ibmmanualswebsitehttps://www.ibm.com/docs/en/zos/2.5.0?topic=zos-mvs
MackenneyMAPR-IILicense
ibmmvscommands/RO *all,D A,l — issue the D A,L command to all the systems in the sysplex
ibmmvscommands/RO T=10,*all,D A,l — issue the D A,L command to all the systems in the sysplex — waits for 10 seconds for the response
ibmGRScommandscheck if a dataset is shared across systems : d grs,res=(*,datasetname)
ibmmvsutilityADRDSSU restore utility: //STEP1 EXEC PGM=ADRDSSU //DASDIN DD DISP=SHR,DSN=SYS5.CTS.IBMCDP.DUMP, // UNIT=SYSDA //DASDOUT DD DISP=SHR,VOL=SER=TCH304,UNIT=SYSDA //SYSPRINT DD SYSOUT=* //SYSIN DD * RESTORE INDD(DASDIN) OUTDD(DASDOUT) – DATASET(INCLUDE(IBM.CDP.**)) – CATALOG – RENAMEU(IBM.**, SYS2.**) /*
ibmzospage datasetjcl to add page dataset. //DEFPGSPC EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE PAGESPACE ( – NAME(SYS1.SYST.PAGE5L) – CYLINDERS(800) – VOLUME(PAGET1)) /*
ibmzospage datasetcommand to add a page dataset /PA page=defined page dataset name.
ibmzospage datasetPD DRAIN,PAGE=SYS1.SYST.PAGE5L — Drain a page
ibmzospage datasetPD REPLACE,PAGE=(SYS1.SYST.PAGE5L,SYS1.SYST.PAGE7L) — Repalce a page dataset.
ibmmvscommandscancel a task in starting status : /C STARTING,A=asid
CANetmastercommandsTo see all the attributes which are available to Netmaster (but you might not be collecting on them) logon to NM issue /monattr then issue showall from command line
canetmasterlevel/level — to know the current running version
canetmaster$$SYSPRO NMDIAGto check the system profile and the diagnostics of our task.
canetmasterbestpractieOne STC as FOCAL and other systms tasks as SUBORDINATE so all the tasks can be see under FOCAL
canetmaster== to goback to primary menu
canetmaster/encsum — encryptions summary data
IBMnetworkcommandsD NET,MAJNODES — list all the majnodes
IBMnetworkcommandsd net,appls — status of application major nodes.
IBMnetworkcommandsD NET,ID=xxxx — lists information for a specific node.
ibmnetworkcommandsD net,topo — display topology database.
IBMnetworkcommandsV NET,ACT,ID=…
IBMnetworkcommandsV NET,INACT,ID=…
IBMnetworkcommandsS NET,,,(LIST=E1) — this will start the net stc and it will look for ATCSTRE1 in the VTAMLST DD concatenated datasets.
IBMnetworkcommandsS NET,,,(01) — this will start the net stc and it will look for ATCSTR00 in the VTAMLST DD concatenated datasets.
IBMnetworkcommandsD NET,VTAMOPTS — lists all the options.
IBMnetworkcommands/D NET,ID=applid — displays the connectivity sataus.
IBMnetworkcommandsv net,act,id=applid,status=u — activate the node and all the sub-ordinate nodes of the mentioned ID.
IBMnetworkstartupstart vtam –> looks for ATCSTRxx in the VTAMLST DD datasets and looks for ATCCONxx in ATCSTRxx and starts major nodes
IBMnetworkcommandsd net,rsclist,id=* — list all the minor nodes and the corresponding major nodes.
ibmnetworkcommandsd net,directry,id=xxxx,scope=nsearch — searches the network for the resoruce mentioned in ID.
ibmnetworkcommandsf net,directry,function=delete,id=xxxx — deletes the xxxx resoruce from central directory — directory again conducts a update function whenever it detects a change. Topology Database Update (TDU).
ibmnetworkcommandsto get the acb of a tso session issue the command D NET,TSOUSER,ID=xxxxxxx
ibmnetworkportTSO NETSTAT PORTLIST — list all the connections.
ibmnetwork/MODIFY RESOLVER,DISPLAY — to get the active TCPPARMS dataset.
ibmnetworkprofileto update the entries in PROFILE member of TCPPARMS dataset. VARY TCPIP,,O,USER99.TCPIP(OBEYFIL2)
ibmnetworksearch orderlist summarizes the resolver search order 1. GLOBALTCPIPDATA statement 2. /etc/resolv.conf file 3. userid.TCPIP.DATA 4. SYS1.TCPPARMS(TCPDATA)
ibmnetworkporttso netstat (port xxxx — to check if a port is active or not. / tso netstat conn (port xxxx
ibmnetworknameserver//TESTJOB1 JOB CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1),NOTIFY=&SYSUID //STEP1 EXEC PGM=PING,PARM=’PROXY.COGNIZANT.COM’ //SYSTCPT DD SYSOUT=* lists a lot of information : res_init Resolver values: Setup file warning messages = No CTRACE TRACERES option = No Global Tcp/Ip Dataset = USER.TCPPARMS(TCPDATA), Default Tcp/Ip Dataset = None , Local Tcp/Ip Dataset = TCPIP.TCPIP.DATA Translation Table = TCPIP.STANDARD.TCPXLBIN, UserId/JobName = IBMUSER Caller API = TCP/IP Sockets Extended, Caller Mode = EBCDIC System Name = S0W1 (from VMCF) , UnresponsiveThreshold = 25 (G) DataSetPrefix = TCPIP , Hostname = RDZUT0 (G) TcpIpJobName = TCPIP (G) DomainOrigin = RTP.IBM.COM (*) NameServer(s) = None (*) NsPortAddr = 53 (G) ResolverTimeout = 30 (G) ResolveVia = UDP (G) ResolverUdpRetries = 1 (*) Options NDots = 1 (*) SockNoTestStor (G) AlwaysWto = NO (G) MessageCase = MIXED (*) LookUp = DNS LOCAL
ibmnetworknameserverTSO NSLOOKUP to get the details of lookup server.
ibmnetworkresolverF RESOLVER,REFRESH — if any updates to TCPDATA parms, IPNODES in SYSX.TCPPARMS dataset.
ibmnetworkresolverf resolver,refresh,setup=yugi001.jcl.cntl(resolver) — you need create members RESOLVER with links to TCPDATA and IPNODES if changes are being made. example : DEFAULTTCPIPDATA(‘TCPIP.TCPPARMS(RESLVCF)’) — this activates all the data in TCPIP.TCPPARMS(RESLVCF).
ibmnetworkcommandsD TCPIP,TN3270,TELNET,CONN
ibmnetworkcommandsD TCPIP,,NETSTAT,DEV — list the osa activity. We can check the packets transfer status.
ibmnetworktelnettso telnet ip port to check the connectivity.
ibmnetworktheoryNon-Repudiation : a situation in which we need to confirm that a transaction has happened by both the parties at each end of the transaction. A sender to not deny that he has sent the packet and a receiver not to eny that he has received the packet.
ibmnetworktheorytcp/ip includes firewall filtering, virtual private network(vpn), and transport layer security(tls) capabilities as part of the protocol stack itself and to encrypt network traffic.
ibmnetworktheorydifferent layers in a Network between the end pointss : Application(telnet, ftp, SMTP), transportation((TCPIP/UDP) (uses SSL/TLS secuirty contorls)), network(IP/ICMP), datalink and physical(end point port connection (lanport or wifi for PC and OSA card for mainframe)).
ibmnetworktheorylink layer protocols : Ethernet (standard define by IEEE 802.3), Token Ring, Fibre Distributed Data interface (FDDI), Asynchronous Transfer Mode(ATM) and other protocols. OSA Card can support the 802.3 suite of standards (802.3ae) in the form of 10 Gbps.
ibmnetworktheoryMAC address — every host has to be identified to the network so they can locate each other. This is done by MAC (Media access control) address.
ibmnetworktheoryIP — is the standard for routing packets across interconnected networks.
ibmnetworkstartupD NET,VTAMOPTS,FUNCTION=VTAMINIT — we will get all the startup options used.
ibmnetworktlstrls display — D NET,TRL — The DISPLAY TRL (transport resource list) command provides information about the active TRL major nodes or about a single TRLE (transport resource list entry).
ibmnetworktypesFTPS (File Transfer Protocol with support for Transport Layer Security (SSL/TLS)), FTP (File Transfer Protocol) and SFTP (SSH File Transfer Protocol) are basically protocols that grants remote file transfer capabilities between a client and a server.
ibmnetworknotesUDP (User Datagram Protocol) is an alternative communications protocol to Transmission Control Protocol (TCP) used primarily for establishing low-latency and loss-tolerating connections between applications on the internet
ibmnetworknotesPort forwarding is a type of interaction between two applications, usually TCP/IP applications, that talk to each other using an SSH connection. SSH intercepts a service request from a client application on a host, creates an SSH session carrying the request to the other side of the SSH connection
ibmnetworkconnectivityfrom our local system — using internet — tcpip on mainframe — telnet server (tn3270) — vtam (sna application)– appl (tso,cics)
ibmnetworknodesadjacent nodes : D NET,ADJSSCPS
ibmnetworkconnectivityTSO — Telnet client(pc tn3270 software) –> TCPiP (stc) — > Telnet server (tn3270 stc) –> VTAM(stc) –> TSO node definition.
ibmnetworknpf – (network print facility)Route the JES or VTAM print data from your system to printers in the tcp/ip network. Lets you decide where and how output will be printed through the use of routing and options file. We can use options to check on the routing and otpions definitions if we dont know the fields values to be used to list then run an simple IDCAMS job to copy the ROUTING, OPTIONS VSAM files to a dataset and we can check for these values.
ibmnetworktls applications-D TCPIP,,N,TTLS — to check what applicaitons are using at-tls
ibmnetworkport check-D TCPIP,,N,CON,PORT=990 — to check the port activity -d TCPIP,tcpip stc,N,CON,MAX=all —- to check all the current acitve port connectivity on the system.
ibmnetworkcommandsto check the restricted applications d tcpip,tn3270x,obj,type=arappl — restricted application as in tn3270 profile. d tcpip,tn3270x,obj,type=uss — Unformatted system serverices table name provided from the tn3270 profile
ibmnetworkcommandsto check the userid lu and other details – d net,id=userid,u
ibmnetworkarchitecturTCPIP — (telnet,ftp,smtp,socket protocol) –> TCP UDP –> (IP ARP RARP ICMP) –> Datalink –> Physical OSI (Open systems interconnect) — Applicaiton –> presentation –> session –> Transport –> Network –> Datalink –> physical SNA (Systems network architecture) — (Transaction services –> NAU services management –> Data flow control )–> Tansmission control –> path control –> Datalink control –> physical .
ibmnetworkcommunication serverCommunication Server — comprises of VTAM, TCPIP and CSM (Common storage manager managed by VTAM) is used by TCPIP for I/O buffering
ibmnetworktcpipTCP/IP can work with other protocols, such as FTP, Telnet, TN3270, and HTTP servers, enabling communication to occur between applications running on basically any operating system.
ibmnetworkcommandsd net,csmusr — provides the % of I/O buffer used by TCPIP and VTAM.
IBMnetworkTN3270Tn3270 clinet running on the PC does the conversion of datastreams into ASCII or EDCDIC. TN3270 server performs ASCII/EBCDIC codepage conversions for line mode connections.
ibmnetworkTN3270all sessions have to be initiated from the tn3270 client. Even a printer session must be started from the client work station before SNA session can send print data over the printer session.
ibmnetworktn3270z/OS Communications Server has implemented the possibility of using a shared ACB for Telnet logical units (LUs) as a way to reduce extended common storage area (ECSA) usage. for each OPEN ACB issued by the TELNET process, VTAM allocates control blocks in ECSA
ibmnetworktcpip comdsTCPIP (D TCPIP,,NETSTAT,): HOME (base IP addresses) DEV (list out the devices that TCPIP talks to the rest of the world over) CONFIG (similar to doing a VTAMOPTS in VTAM) CONN (show all of the active connections to the applications) PORTL (shows the ports that have been pre-defined to TCPIP) SOCKETS (similar to doing a SESSIONS in VTAM)
ibmnetworktcpip comdsD TCPIP,,OMPROUTE,OSPF,LIST,ALL (list all of the OSPF connections – this also shows the Neighbors that the OSA defs knows about) D TCPIP,,OSAINF,INTFN=interface-name (List out what connections the interface is directly talking to) D TCPIP,,SYSPLEX,VIPADYN (shows all of the VIPA connections – similar CPCP in VTAM) d net,cpcp
ibmnetworkvtam comdsVTAM: (D NET,): VTAMOPTS (Base setup for the start up of VTAM) CPCP (get the other Connection Points that this VTAM talks to) MAJNODES (and, maybe, display a couple of them later) ISTLSXCF,E (XCF connection names. Once you have a list do a D NET,ID each entry) TRL (then display (,ID=) for each entry to find out what portion go to either OSA or directly to IP) CDRSCS (watch the MAX= count) COS (name of the default Class Of Serice table) GROUPS (line groups – will also show XCA names as well as defined lin RTPS (HPR pipes) TRACES (what traces are in effect at this point in time – typically used for diagnostic use w/ IBM) USERVAR (alternate name for VTAM resources ie – UK01T can be accessed typing UK93TS)
ibmnetworkvtam comdsStatistics reporting (to be used in either diagnostics or for finding out performance settings): BFRUSE (list out where the internal buffer storage is for VTAM on that Lpar) CSM (Common Storage Mgmt – storage used between VTAM & TCPIP) SESSIONS,LIST=COUNT (total number of active sessions on this Lpar) STATS,TYPE= (complete statistical read-out. TYPE=VTAM or CFS) Added displays for any Network Node Lpar (refer to VTAMOPTS parm=NODET ADJCLUST (this is for Network Nodes only) ADJSSCPS (this is for Network Nodes only) DIRECTRY (used to show APPN dynamic connections to Appl locations – other parms) STATIONS (X-dmn Link stations) SRCHINFO (summary rpt for subarea and APPN searches)
ibmnetworkftp trace//LLV152 EXEC PGM=FTP, FTP APPS CONSOLIDATED FILES // PARM=’ENVAR(“_CEE_ENVFILE_S=DD:SYSENV”)/(EXIT=0016′ //SYSENV DD * GSK_TRACE=255 GSK_TRACE_FILE=/full/path/gskssl.trc //SYSPRINT DD SYSOUT=* the gskssl.trc would be in unreadable format.. we need to issue the command gsktrace /full/path/gskssl.trc>gsksll.txt to read the file in normal fomat
IBMNETworkftp TraceFrom z/OS perspective, you can collect SSL trace which will show you the FTP server’s certificate chain. Are you using ATTLS or native TLS FTP? Please collect GSKSRVR trace as follows: (1) Bring up GSKSRVR. A sample is provided in the SGSKSAMP library if it isn’t already in the PROCLIB concatenation.. (2) Start GSKSRVR component trace with LEVEL=255 TRACE CT,WTRSTART=GSKWTR TRACE CT,ON,COMP=GSKSRVR when these commands are issues we get a reply message and we need to reply as below. R nn,JOBNAME=(jobname),OPTIONS=(LEVEL=255),WTR=ctrwtr,END where jobname is for your FTP server e.g FTPD1 if running native TLS FTP. If using ATTLS, then specify TCPIP’s jobname. (3) Recreate the problem (4) Stop GSKSRVR component trace and send us the trace dataset. TRACE CT,OFF,COMP=GSKSRVR TRACE CT,WTRSTOP=GSKWTR,FLUSH
ibmNETworkftp trace>>>When you start the GSKSRVR trace, a message will pop on the console with reply no. You reply to it. Example: TRACE CT,WTRSTART=GSKWTRA ITT038I ALL OF THE TRANSACTIONS REQUESTED VIA THE TRACE CT COMMAND WERE SUCCESSFULLY EXECUTED. … TRACE CT,ON,COMP=GSKSRVR *3673 ITT006A SPECIFY OPERAND(S) FOR TRACE CT COMMAND. R 3673,JOBNAME=(TCPIP),OPTIONS=(LEVEL=255),WTR=GSKWTRA,END Therefore in above example, nn is 3673. Note in your case, JOBNAME would be the FTPD jobname e.g.FTPD1 since you are not running
ibmNETworkOSAThe Open Systems Adapter (OSA) is actually a network controller that enables the mainframe to communicate with a number of LANs by using network protocols such as SNA and TCP/IP. The z/OS Communications Server resides within the mainframe and through OSA Express communicates with local users in LANS and those using the 3270 emulation software. Remote users can also access the mainframe using OSA express, routers, firewalls and general internet capabilities. The Communications Storage Manager provides shared I/O data flow involved in the communication process.
ibmNETworkcommandd net,cdrms — display cross domain resource managers
ibmNETworkcommandtso tracerte ipaddr. to check the different server that the network would go through before connecting to the ip addr.
ibmNETworkTLSThere is no “disabling” TLS because it is always available to you. Functions can support the TLS protocol directly. While the NETSTAT TLS report shows uses of TLS, it being empty does not mean that TLS is not being used. With TLS, your application will need to code in calls to invoke System SSL services. AT-TLS avoids this and provides encryption and decryption along with policy-based security.
ibmNETworkwebsiteTo view records of processes using TLS, you might consider using zERT. https://www.ibm.com/support/knowledgecenter/SSLTBW_2.3.0/com.ibm.zos.v2r3.halz002/security_zert.htm
ibmNETworkwebsiteUnless your application is using TLS or AT-TLS to encrypt and decrypt data transmissions, ports will not be secured by default.
ibmNETworkosaOSPF_interface — is generally in /etc/omproute.conf
ibmnetworkmac addressfor any mac address of a hardware on mainframe. Go to the SE of the mainframe in HMC and check in advanced facilites.
ibmnetworktcpip errorsnot able to connect to a system.. check in tcpip for any OSA card issues and if the chpids are offline we need to make them online. d tcpip,,netstat,dev VARY TCPIP,,START,OSAF5F
ibmnetworkd net,cpcp — adjacent connection
ibmnetworkdirectoryd net,directory,id=domaind.applid
ibmnetworkCSM memoryif any issues with communicaiton in TCP/ip .. we can check the memory using teh command D NET,CSM
ibmnetworkCSM memoryThese commands can be used to increse the CSM. F NET,CSM,ECSA=240M F NET,CSM,FIXED=320M Also, the perm parm changed in SYS1.PARMLIB(IVTPRM00)
ibmnetworklogonfirst screen when connected to a IP for logon. Check TN3270 for Port(as specified inpcom/mocha) spefici definiton in the PROFILE dataset pointed by PROFILE DD look for USSTAB between BEGINVTAM and ENDVTAM lines. look for the module that USSTAB points to in the NET task libraries. this module brings up the initial screen when connected to an IP. we need to check and make note for the source code.
ibmnetworkcheckcheck connectivity between systems V NET,DIAL,ID=applid of the applicaiton or system that you are trying to check. — this would also activate any connections.
ibmnetworktcpipd tcpip,,n,config — gives details of the tcp/ip configuration.
IBMOMVScommandsdf -v in OMVS lists all the directries and files and their owners. df -p pathname or df -p . (takes current lcoation) location will list the filesystem that we are mounted. df -kP filesystem name — will list the free space in the file system in Kbytes df -PKv . — to know the filesystem that the current path is mounted on. check the dot after PKv
ibmomvscommandschmod -R 777 /products/ca — changes the access permissions to RWXRWXRWX for the directory ca and its sub folders.
ibmOMVScommandsMOUNT FILESYSTEM(‘SMPE.CAI.VANTAGE.V14.D0814.ZFS’) TYPE(ZFS) MOUNTPOINT(‘/products/Vantage/v14/install’) — to mount a file system through TSO command
ibmOMVScommandsecho $PATH — to know the path from where the commands are getting executed.
ibmOMVScommandsDISPLAY OMVS,FILE — current mounted file systems.
ibmOMVScommandsfind / -name “*.c” — search for file .c in / directory
ibmOMVScommandsuse unset command to remvoe an environment varaible from omvs.
ibmomvsbatch jobBatchjob to mount a file. //MOUNT EXEC PGM=IKJEFT01 //SYSTSPRT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSTSIN DD * MOUNT FILESYSTEM(‘#zfsdsn’) + TYPE(ZFS) MODE(RDWR) PARM(‘AGGRGROW’) + MOUNTPOINT(‘-PathPrefix-usr/lpp/IBM/+ cdpz/v1r1m0’) //*
ibmomvspermissionThere are four kinds of ‘permissions’ encoded by the file permission bits: r Read permission- Are you allowed to read the file/directory? w Write permission- Are you allowed to write to the file/directo x Execute permission- Are you allowed to execute the file? x Lookup permission- Are you allowed to traverse the directory?
ibmomvscommandschmod +x filename — this is for the 4th permission – traverse the diretory.
ibmomvspermissionLookup permission is an alternative. If myuser issues: chmod a+x /u/myuser chmod a+r /u/myuser/public then every user on the system will be able to read myuser’s public directory, but will not even be able to list(ls) /u/myuser
ibmOMVSunzipto unzip a file in omvs. jar -xvf /Directory/File.zip x – means extract/unzip v – verbose command output f – file name is included
ibmomvsconvertIconv -f ISO8859-1 -t IBM-1047 file1 > file2 to conver ascii to ebsidic format files. iconv -f ISO8859-1 -t IBM-1047 directory/* > targdirectory/* to conver ascii to ebsidic format files for a entire directory.
ibmomvstaggingchtag -tc IBM-1047 ant — to change the tagging of a file in omvs.
ibmOMVScopycp ZWESIS01 “//’zwes_loadlib(ZWESIS01)’ — command to copy a file to mainframe dataset.
ibmOMVScommandscommand to provide access to a folder or a file for an individual user in unix env. setfacl -m user:cdpuser:rw- /products/cdp/datastream/wkdir — provides read andwrite access to user CDPUSER for folder /products/cdp/datastream/wkdir setfacl -m user:a8g45zz:rwx $(find /projects/c21ct/workdir/C21CT55T/JVMSRV01) — provides access to exsisting files too. setfacl -m group:admins:r-x,group:dirgrp:rwx /u/ProjectX — provide Read and Execute authority for group admins and read, write and execute authority for grousp dirgrp. Note : we need to have FSSEC to be active for setfacl to work. setfacl -m default:group:admins:r-x,default:group:dirgrp:rwx /u/ProjectX — this sets default and will give these permission for any subsequent files /folders created in this path. setfacl will give permission to only that folder or file.
ibmOMVScommandscommand to list specific individual access to a folder or a file in unix. getfacl /products/cdp/datastream/wkdir — provides the access list for owner,group,other and alos the if any indiidual user access is provided. getfacl -d /products/cdp/datastream/wkdir –to list defulat access provided.
ibmOMVScommandssetfacl -D a /etc/inetd.conf — to delete the individual premissions as modified by the SETFACL command
ibmOMVScommandsto set a varible value ” export PATH=/var/zowe/zowerun/nodejs/bin/:$PATH ” — adds the path /var/zowe/…./bin to PATH varaible.
ibmOMVScommandsrm -R folder name — removes all the files and the folder rm -Rf foldrename — removes all the files even if they are read only files for the user.
ibmomvscommandsgzip -d perl-5.24.0_b007.180202.tar.gz in /usr/lpp/perl — to produc a tar file from .gz file — gzip is a software and needs to be installed and entry updated in /etc/profile
ibmOMVScommandstar -C /usr/lpp/perl -xovf perl-5.24.0_b007.180202.tar — it unzipped all the executables into /usr/lpp/perl. bin,lib,share folders are created. Tar is a software and needs to be installed.
ibmOMVSissuesatoe_getcwd error: EDC5134I Function not implemented. — check if the userid running the scirpt has the OMVS home setup.
ibmOMVSbashto read a file in bash script . ${variable}
ibmomvsbatch jobmount a file system using batch job. Use pgm=ikjeft01 OSHELL /usr/sbin/mount -t ZFS -f PLEX.OLD.AGGR002.LDS0002 /service2 — mounts the file PLEX.OLD.AGGR002.LDS0002 on /service2 locaiton.
ibmomvspaxto pax a folder (1)go to the folder page /u/a93lnzz or /products/cdp pax -wzvLf /tmp/project.pax.Z ./ pax -wzvLf “//’PROJECT.ARCHIVE'” ./ — dumpt the a93lnzz or cdp folder to PROJEC.ARCHIVE dataset. (2)If you are migrating a file system that contains additional file systems mounted below it, the default settings on the pax command also copies the files and directories that are contained in those file systems. To avoid this, you can either specify the pax -X option, or unmount the lower file systems before issuing the pax command.
ibmomvsunpaxto unpax a file we cna use cd to the locaiton where we want to unpax copy the pax file to this location. pax -rvf paxfilename — to unpax
ibmomvscommandCOPY using pax command pax -rw
ibmomvsIDto know the id and gid when in omvs issue the command “id” uid=32360(A93LNZZ) gid=901826380(D#826380) groups=101(AOPADMIN),0(CHOR@F01),100(C01@OPER)
ibmOMVSautomountin general the automount is specified to be started in /etc/rc as /usr/sbin/automount. Automount gets the location of the Automount filesystem to be used as specified in /etc/auto.master.
ibmomvsfile conversionto convert ascii to ebcdic format iconv -f UTF-8 -t IBM-1047 filename.log > filename.ebcdic
ibmomvsenvironmentto find the current current environment varibale values — use env use env HOME=/u/ — to change the environment variable HOME value.
ibmomvschagne userto can work as a different user in OMVS you can use the command SU – username
ibmomvsdatadate to check the current date and time
ibmomvspermissionchmod -w /file locaiton — to remove write permissions for a file or folder.
ibmomvscreate and edit.oedit report.log — opens the report.log file in ispf mode and we can edit it. Ex report.log — opens the report.log file in command mode. Issue I to inset lines and when completed issue ‘.’ to inform end of file and then ‘X’ to terminate writing.
ibmomvscopy•Copy a PDS member into a z/OS UNIX file, shown here in the OMVS Shell •Copy a sequential data set into a z/OS UNIX file cp “//’turbo.gammalib'” dir1 •Copy a PDS to a z/OS UNIX directory •Copy a z/OS UNIX file into a sequential data set or PDS member — cp -F bin cdpconfigv2.d03032021.pax.z “//’sys5.cts.cdp.configv2.zip'” — for zip files cp filename “//’mvs file name'” — regular files •Copy executables between MVS and z/OS UNIX
ibmomvssharing file systemif we have SYSPLEX(YES) specified in the BPXPRMxx member then the file systems are shared in that sysplex environment. We would also need the BPXCMDS couple datasets defined and activated. If one system in the sysplex is shutdown and IPLed the mounts that are shared cannot be updated for that system alone.
ibmomvsoptionsD OMVS,O — display the options specified by the BPXPRMxx members.
ibmomvsmount/usr/sbin/mount -f SYS5.CTS.OMVS.SHARE.ZFS /products/share -t ZFS -o ’AGGRFULL(90,5)’ — mounts the file system and at the same time tries to expand when it is almost full. In OMVS
ibmomvsmountTSO command — MOUNT FILESYSTEM(’OMVS.PRV.AGGR004.LDS0004’) MOUNTPOINT(’/etc/zfscompat1’) TYPE(ZFS) MODE(RDWR) PARM(‘AGGRFULL(90,5)’) /bin/tso “mount filesystem(OMVS.ZFS.F96) mountpoint(’/u/d96’) type(zfs) mode(read)”
ibmomvsmountin a shared environment we can find the omvs file system using system by listing all the file systems. D OMVS,F
ibmomvsownerwe can find the owner of a file by issuing the command df -v when in the folder.
ibmomvsunmountomvs command to unmount a file system – /usr/sbin/unmount -f SYS5.CTS.OMVS.SHARE.ZFS
ibmomvscopycp RLp /products/chorus/cetjr3m0/dply/cetjr3m0 /products/share/ — R-copies all the files and p uses the same format and owner and group. L to copy over the symbolics in the files.
ibmomvslistls -al — to list hidden files also.
ibmomvsuser loguserlog would be in .sh_history file of /u/userid — you need to use the command ls -al to list the hidden files.
Ibmomvscommandsls -ld — list directory entries.
ibmomvscommandsls -EL — extended attrubutes for apf authrized and, program controlled and shared address space.
ibmomvscommandsextattr +a /usr/sbin/sshd — to set extended attribute for apf authroization.
ibmomvsconceptProgram control is the concept of having “trusted” applications — we can a file program control attribute by issuing the command extattr +p /usr/sbin/sshd
ibmomvscommandsOMVS command to check the resolver: HOST google.com
ibmomvsstartup/SYSTEM/etc/rc — has all the statemetns for starting different tasks under OMVS. Executed with the start of OMVS. it would have statements to start SYSLOGD, CRON and others like # Start the cron daemon _BPX_JOBNAME=’CRON’ /usr/sbin/cron & # next two lines _BPX_JOBNAME=’SYSLOGD’ /usr/sbin/syslogd -c -i -D 0755 -F 0664 & As explained in Using & at the end of a command, using the & at the end of a command starts the command in the background and the _BPX_JOBNAME environment variable assigns a job name
ibmomvssyslogdsyslogd has all the log file locations defined.
ibmomvsmountThe next thing to do is mount this new intermediate file system at /u. The mount can be performed from an ID that has superuser authority by: v Using the usr/sbin/mount REXX exec from the shell v Using the TSO MOUNT command v Using the mount shell command v Using the ISHELL File_Systems pull-down v Adding an entry to the BPXPRMxx member in SYS1.PARMLIB so that it will be mounted when the system reIPLs.
ibmomvsStartup1USS has two hats it needs to wear. An MVS hat to interact with the MVS system and the second hat to interact with Unix side USS. Together the OMVS and BPXOINIT each manage a different aspect of USS. OMVS interfaces with MVS and BPXOINIT starts and helps manage processes running in USS. OMVS starts the UNIX file system services on the mainframe. The OMVS address space is the ‘MVS’ hat. It is started first and establishes the layer USS layer that communicates and co-ordinates resources with the MVS side of the zOS system. At IPL time, the OMVS address space processes the BPXPRMxx member and performs all tasks it contains (setup filesystems, limits, networking, mounts.. etc). After IPL, it helps to manage interprocess communication, inter-system filesystem sharing, resource/storage management OMVS starts and invokes BPXOINIT during the IPL. BPXOINIT address space (started by the OMVS STC) initializes the UNIX environment. BPXOINIT is the first ‘unix’ process to run in the system (it is PID 1). among other things also invokes 2 tasks ETCINIT and ETCRC.
ibmomvsStartup2ETCINIT is started by the BPXOINIT address space. What ETCINIT does is invoke the USS shell command ‘/usr/sbin/init’. The init command reads the file /etc/init.options and will perform some environment setup before it fires off the initialization script /etc/rc. ETCRC executes the commands in /etc/rc which has the statements to initialize the daemons like SYSLOGD, inetd and so on. SYSLOGD has the statements that help us to find the logs for ftp, sshd, fdrupstream and so on. The inetd daemon provides service management for a network. For example, it starts the rlogind program whenever there is a remote login request from a workstation. sshd starts and ends typically and in general. A forked copy of the daemon will be left running, which is normal. Sshd is for SFTP environment. ftp* tasks setups the environment for the ftp protocol it can be normal ftp or secure ftp using TLS. FTPS is for secured ftp over tcpip using TLS. Inetd — INETD is a daemon that listens for incoming TCPIP requests (on specific ports) and then launches applications to handle those incoming requests. Newer servers do not tend to use INETD anymore. FTP, SFTP and SSHD can all run as standalone servers, we may not be running these daemon. BPXAS fork task starts every time there is an OMVS activity by users or app. the banner page that we see at the start of the omvs is all in /etc/profile
ibmomvsresolverin BPXPRMxx RESOLVER_PROC(procname|DEFAULT|NONE) Specifies how the resolver address space is processed during z/OS UNIX initialization. The resolver is used by TCP/IP applications for name-to-address or address-to-name resolution. In order to create a resolver address space, a system must be configured with an AF_INET or AF_INET6 domain. DEFAULT Causes an address space named RESOLVER to start, using the system default procedure of IEESYSAS. The address space is started with SUB=MSTR so that it runs under the MASTER address space instead of the JES address space. NONE Specifies that no address space is to be started. If you are using z/OS Communications Server IP, the resolver must be started before TCP/IP can be started. TCP/IP does not initialize until the resolver address space is started. procname The name of the address space for the resolver and the procedure member name in the appropriate proclib. procname is one to eight characters long. The procedure must reside in a data set that is specified by the MSTJCLxx parmlib member’s IEFPDSI DD card specification.
ibmomvsstcThe inetd daemon provides service management for a network. For example, it starts the rlogind program whenever there is a remote login request from a workstation.
ibmomvsdaemonsz/OS UNIX supplies these daemons: – inetd—the network daemon – rlogind—the remote login daemon – cron—the clock daemon – uucpd—the UUCP daemon The syslogd daemon, which is used to route messages, is shipped with TCP/IP and is documented in their library.
ibmomvsdaemonsINETD is a daemon that listens for incoming TCPIP requests (on specific ports) and then launches applications to handle those incoming requests. Some older style daemons like rlogind and otelnetd use INETD to front end the TCPIP port listening, but if you do not need these services running you likely do not have a need to run INETD. However, newer servers do not tend to use INETD anymore. FTP, SFTP and SSHD can all run as stand alone servers. It is possible that you are not running the INETD daemon because you do not need to use services like rlogind or otelnetd. You can check to see if it is running with the mvs console command ‘D OMVS,A=ALL’. or from the OMVS shell with the command ‘ps -ef | grep inetd’ Note: this requires UID 0 authority for complete results
ibmomvssshd/usr/sbin/sshd -v localhost –to identify the protocol thet sshd is running.
ibmomvsdebuggingSteps for setting up syslogd to debug sshd: Before you begin: You need to have superuser authority in order to start the syslogd daemon. Perform the following steps to set up syslogd to debug sshd. 1. Create the syslogd configuration file /etc/syslog.conf. a. Create directory /tmp/syslogd. mkdir /tmp/syslogd b. Add a configuration statement in /etc/syslog.conf. Example: daemon.debug /tmp/syslogd/server.logfile Result: Writes debug messages with facility daemon to /tmp/syslogd/server.logfile. c. Set the permission bits. chmod 644 /etc/syslog.conf d. Create the log file. touch /tmp/syslogd/server.logfile 2. Start syslogd /usr/sbin/syslogd -f /etc/syslog.conf & 3. In the sshd configuration file, /etc/ssh/sshd_config , add keywords “SyslogFacility” and “LogLevel”. The default SyslogFacility is AUTH. The default LogLevel is INFO : Example: SyslogFacility DAEMON LogLevel DEBUG3 4. In the sshd configuration file, /etc/ssh/sshd_config update the sftp subsystem entry to enable sftp debugging: Subsystem sftp /usr/lib/ssh/sftp-server -f DAEMON -l DEBUG3 5. To force syslogd or sshd to reread its configuration file and activate any modified parameters without stopping, issue: kill -s SIGHUP PID where PID is the process ID of syslogd or sshd. When you are done, you have set up syslogd and sshd for debugging
ibmomvsbatch//STEP1 EXEC PGM=BPXBATCH //STEPLIB DD DSN=SYS1.SCEERUN,DISP=SHR //STDERR DD PATH=’/u/userid/std.err’, // PATHOPTS=(OWRONLY,OCREAT,OTRUNC),PATHMODE=SIRWXU //STDOUT DD PATH=’/u/userid/std.out’, // PATHOPTS=(OWRONLY,OCREAT,OTRUNC),PATHMODE=SIRWXU //STDPARM DD * sh echo ls -l; cd /u/usreid/; rm -rf *; cp /u/userid/cdpconfig.pax.z /u/useridcdpconfig/; chmod -R 777 /u/userid/cdpconfig/; | su pwd; /*
ibmomvssubmit job/bin/submit. This is a standard z/OS UNIX command in at least z/OS 1.12 and above. This can submit from a z/OS UNIX resident UNIX file or from “stdin”, if no file is specified in the UNIX command line.
ibmomvscommandsw — tells you who’s logged in, and what they’re doing. Especially use the ‘idle’ part. This allows you to see whether they’re actually there typing away at their keyboards right at the moment.
ibmomvscommandsfinger username — provides lot of info on user
ibmomvsKill/Stopkill /stop a process. Issue the command /D OMVS,A=ALL. Find the PID od the process that you want to kill. issue the command kill pid to stop teh task.
ibmomvscommandsif condition in omvs if —-stat —- then — stat –else — fi
ibmomvskeywordstest
IBMomvstimeTZ varibale has current time zone being used by the system. we can find its value by issuing env command. this can be used to list all of hte environment varibale values for your logon.
ibmomvsprocessto start a process in omvs but dont want to wait for it to complete. we cna start it using the command nohup “command” as the command runs we can do f2->subcommand and quit to go out of OMVS but the process would be running. the nohup creates a log as nohup.out in the folder where we issued the nohup “command”
ibmomvsprocessto terminate a process. pppp is the PID of the process. get it form /D OMVS,A=ALL kill -s term pppp F BPXOINIT,TERM=ppp to restart a process kill -s SIGHUP pppp to kill a process kill -s kill pppp kill -HUP `cat /etc/syslog.pid` — to recycle syslogd
ibmomvsbatch//STEP1 EXEC PGM=BPXBATCH //STEPLIB DD DSN=SYS1.SCEERUN,DISP=SHR //STDERR DD SYSOUT=* //STDOUT DD SYSOUT=* //STDPARM DD * sh su; cd /u/A93LNZZ; mv cdpconfig.pax.d612.z /products/cdp/cdpconfig/cdpconfig.pax.d612.z; pax -rvf /products/cdp/cdpconfig/cdpconfig.pax.d612.z; /* //* Note : ensure not to have any line number at the end
ibmomvswebsitessh and jcl https://www.ssh.com/manuals/server-zos-user/60/ch06s01s02.html
ibmomvscommandto create a unix file symbolic link use the command ln -s exsistingfilename symbolicname — to create a new file. see to that the sybmolicname file is not present. use “unlink ‘symbolic name’ ” to remove the link.
ibmomvschange ownerchown -R john:build /tmp/src — (R all files and directories, john (owner) build(group) /tmp/src (path)
ibmomvsuser changeto run the commands and another user issue the command : We need to have access to SURROGAT CLASS BPX su -s xxxxxx — (xxxxx is the username you want to run the command with) FSUM5027 su: User is not a surrogate of “BPXROOT”. — check if the users are surrogate of each other.
ibmomvsmkdirmkdir -p /install/bin — it creates “install” directory if not already created. and then created the bin directory.
ibmomvssuper user batch — ensure that your line numbers are not present in the JCL from 72 to 80 column.//UNPAXDIR EXEC PGM=BPXBATCH //STDOUT DD SYSOUT=* //STDERR DD SYSOUT=* //STDIN DD PATH=’/xxxx/Vantage/unzip.sh’,PATHOPTS=(ORDONLY) /* echo chmod -R 775 /xxxx/Vantage/v14/download | su; echo cd /xxxx/Vantage/v14/download | su; echo ls -l; echo pax -rvf /xxxxVantage/v14/download/DVD0000000001761.pax.z | su
ibmomvstheoryThe z/OS UNIX kernel is linked to WLM so that when a z/OS UNIX program runs, and requests that another program is to be executed – through a fork or spawn function, WLM uses an IBM-supplied procedure, BPXAS, to start a new address space so that the program can run.
ibmomvszos and unix compareProgramming — zOS (REXX and CLIST) — UNIX (Shell Scripts and REXX) Data Management — zOS (DFSMShsm, ISPF) — UNIX (tar cpio, pax) job management — zOS (SDSF, SYSVIEW ) — UNIX (ps, jobs, kill) Submit a job — zOS (submit command in TSO) — UNIX (submit, corntab) Compile — zOS (Compiler, LINK) — UNIX (c89, c99, cc, c++, cxx, make) debugging — zOS (zOS debugger) — UNIX (dbx) Editing Data — zOS (ISPF) — UNIX(ed and vi)
ibmomvscommandcmp file1 file2 — compare 2 files in a directory
ibmomvsformat1023 char for path name length 255 char for a file or directory name
ibmomvscommand_BPX_JOBNAME=’SYSLOGD’ /usr/sbin/syslogd -f /etc/syslog.conf -c -u & — assigns a job name of SYSLOGD to the task that starts. if we issue the command “/usr/sbin/syslogd -f /etc/syslog.conf -c -u &” alone then our “useridxx” gets assinged as the job name. issue the command /D OMVS,U=userid to check for all the tasks started by the user and are running in OMVS.
ibmomvssleepJOb to run for a long time using sleep command. //STEP1 EXEC PGM=BPXBATCH //STEPLIB DD DSN=SYS1.SCEERUN,DISP=SHR //STDERR DD SYSOUT=* //STDOUT DD SYSOUT=* //STDPARM DD * sh su; sleep 10 /*
ibmomvsfile systemD OMVS,FILE,O — list the default system owned file systems D OMVS,FILE,O=sysname — specific system file systems. D OMVS,FILE,N=OMVSSPA.* — file systems with matching names.
ibmomvscreateCreate a zfs file in omvs zfsadm define -aggregate a93lnzz.zfscre.test.zfs -cylinders 10 5
ibmomvscommandzfsadm fileinfo path (file or directory). command to list a file info. zfsadm fsinfo path (file or directory). — Displays detailed information about a zFS file system, which is also known as a zFS aggregate.
ibmomvspermission bitsdefault permission bits for direcotries and files. By default, we are having 777 permission bit for directories and 666 for files. So, the files will be 666. Also, there is another catch here the umask value set in our profile. Here we have usmak 0022(there are only certain octal value that we can spcify, check chmod commnd for the octal values), so every time a directory or file is created the umask is subtracted from default permission bits and the directory or file is created.
ibmomvsGIDif we have 2 RACF groups and we want to provide different access to users in the groups for a OMVS folder then follow the steps 1) In omvs create a folder and assign the owner(ID) as first group with required access. CHOWN owner(uid):group(gid) path 2) Issue the command in OMVS setfacl -m default:group:”gid of 2nd Group” :rwx /foldername. – this will provide rwx access to the 2nd group.
ibmomvsuserid with $When the OMVS shell sees a string that begins with a $ in the command stream, it will be interpreted as an environment variable. What you can do is escape or insulate the $294237 from the command interpreter. Two ways to do that are: chown -R \$294237:2308 c21ct #uses the escape character to insulate $294237 from being interpreted chown -R ‘$294237:2308’ c21ct #uses quotes to insulate $294237:2308 from being interpreted
ibmomvsuser name issueWhen the OMVS shell sees a string that begins with a $ in the command stream, it will be interpreted as an environment variable. What you can do is escape or insulate the $294237 from the command interpreter. Two ways to do that are: chown -R \$294237:2308 c21ct #uses the escape character to insulate $294237 from being interpreted chown -R ‘$294237:2308’ c21ct #uses quotes to insulate $294237:2308 from being interpreted
ibmomvsunique setupsetup for a group to work with folders. 1. Create a Unique Group or Use one of the Nazih Groups: C21C@ALT or C21S@ALT 2. Connect all those userids to one of the selective groups: a. TSO CONNECT xxxx GROUP(xxxx) 3. Create separate Unix Home Directories for those 5 Userids a. zFS Create Directories ( New or Add Subdirectories to Existing zFS Directory) 4. Assign userids to New unique UID’s : Perform the following Commands: a. TSO ALU xxxx OMVS(HOME(‘/u/xxxxx’) Unique b. TSO ALU xxxx OMVS(UID(xxxx))  Unique 5. Perform the following commands: 6. CHMOD 770 /u/xxxxx  For Each userid change permissions that only Owner+Group a. can access directory 7. CHOWN -Rf userid:Group /u/xxxx  Will depend on the Group you decide above
ibmomvsvairablestypeset -x — lists all the default varibales and their values for your logon.
ibmomvsftpd1START FTPD, which runs for a few seconds, fires up FTPD1 as a “UNIX job”, then ends. FTPD1 stays up (visible in SDSF) until explicitly stopped. This is how z/OS emulates UNIX processes. Some are invoked by fork() which leaves the ‘parent’ task running. All invoked this way will terminate when the invoking task ends.Others (like FTPD) are invoked by spawn() which leaves the process running even when the ‘parent’ goes away. These are better managed by modifying USS address spaces (OMVS) to terminate, or through the shell. ork()’ed address spaces should not terminate when the parent terminates. If z/OS UNIX does this, it is not standard UNIX functioning. spawn() is simply a simplier way to fork() and exec() in a single call.
ibmomvsfilesystemfile system expansion command : expand su zfsadm grow -a ‘omvs.syse.tmp’ -size 0 /usr/lpp/dfsms/bin/confighfs -x n filepath (n=spce in M / T / C)
ibmomvsskulkercopy the /sample/skulker to the /bin or /usr/bin … we cna use the command skulker -r /directory -days old. this would go and delete all the files that are older than 10days in /directory and sub directories.
ibmomvscommandCommand to backup hfs files using dfdss — HBACK ‘/u/xxxxxxx/*’ Backup my home directory — HRECOVER /u/xxxxxx/ims15.pax’ Recover a file — HLIST filename ‘/u/xxxxxxxx/ims15.pax’ BCDS Query the Backup Listing of the file — HLIST fIlelevel ‘/u/xxxxxxx/’ BCDS Query on File Level versus Filenames
ibmomvsconversionConverting a file system from hfs to zfs  Allocate a New zFS Filesystem: OMVS.PLEX2.ROOT.Y05D158.ZFS • Access USS Environment and make sure that there is a directory exists as : /newroot • Mount the New Filesystem under /newroot
ibmomvsconversionSteps to convert a file system. Access the USS environment: 1. su 2. cd / 3. pax -wr -pe -XCM ./ /newroot Unmount the new filesystem: • Unmount filesystem(‘OMVS.PLEX2.ROOT.Y05D158.ZFS’) immed From Sysview – Issue the following command: • /f omvs,newroot=omvs.plex2.root.y05d158.zfs,cond=yes If everything completed successfully then update the PARMLIB Member: BPXPRMF0 FROM: ROOT FILESYSTEM(‘OMVS.PLEX2.ROOT.Y05D158’) TYPE(HFS) MODE(RDWR) AUTOMOVE TO: ROOT FILESYSTEM(‘OMVS.PLEX2.ROOT.Y05D158.ZFS’) TYPE(ZFS) MODE(RDWR) AUTOMOVE
ibmomvscommandif someone reports you that they are experiencing zFS Hangs or there are Quiesce messages then you can do the following: Through the USS environment, issue the following command and this would display the quiesce filesystems if there are any: zfsadm aggrinfo — https://www.ibm.com/docs/en/zos/2.1.0?topic=detector-steps-diagnosing-resolving-zfs-hang
IBMOMVScommandto define a symbolic for a file cd /usr/lpp/dp1g; ln -s /products/db2v11/base db2_base; ln -s /products/db2v11/jdbc db2_jdbc; ln -s /products/db2v11/mql db2_mql;
ibmomvsdynamicto dynamically unmount and mount a file system. unmount filesystem(‘file system name’) remount(read)
ibmomvsconversionconverting a file system from hfs to zfs SYS1.SAMPLIB(ISPBTCH) — has a JCL that can be used for conversion.
ibmomvsunmount and mount dynamically. Mount the current filesystem: OMVS.ZZZZ.ROOT as READ only: • Issue the following command from ISPF Option 6 on xxxx and YYYY System: • Unmount filesystem(‘OMVS.ZZZZ.ROOT’) REMOUNT(READ) • The above should not impact any users since this filesystem has been utilized at 97% and there are no Users that does RW to this filesystem directory level
ibmomvsdirectoriesvar — Contains dynamic data that is used internally by products and by elements and features of z/OS. dev — Contains files that are used when logging into the shell environment, and during program compilation. etc — Contains files that are customized for your environment. bin — Contains program files for various system commands. lib — Contains shared libraries needed by programs in /bin.
IbmomvsCharacter Special filethese files are an interface for an I/O device and appears in your file system as if it were and Ordinary file. some examples — NULL file, terminal file.
ibmomvsFIFOused to cpature the output from one process and act as input for another process.
ibmomvstheoryINODE : each file has a unique identification number that can be used to refer to the file instead of its name.
ibmomvstheoryA path name can be up to 1023 characters long, including all directory names, file names, and separating slashes
ibmomvscommandCMP — command to compare 2 directories or files. CMP jan_totals_216 jan_totals_217
ibmomvstheorya file/directory name can be 255 char long.
ibmomvssyslogdexport _BPX_JOBNAME=’SYSLOGD’ — jobs get started with name syslogd /usr/sbin/syslogd -c -i -D 0755 -F 0664 & — -c enables SYSLOG task to create any files / flders that are not available. — it is also specified in the SYSLOGD STC as a parm SYSLOGD — we can check how it started by issuing the command D OMVS,ALL -if started under omvs we can see SYSLOGD in the list. we can write the statements for backup of the logs like as ” *.err /var/log/%Y/%m/%d/errors” — configuration uses date stamps in the names of directories of log files to organize log files by year (%Y), month (%m), and day (%d) — Variable substitution occurs using the Language Environment® C function strftime()
caopsmvsbatchto run a opsmvs command in batch — //step1 exec pgm=ox,parm=’aoi.ops.rexx3m(tapechek) tape_chek — tape_chek is the argument passing to the tapechek rexx
caopsmvsbatchwrite the OPSMVS rexx in a dataset and execute it in batch using PGM=IKJEFT01 and SYSIN as OX ‘dataset(mem)’
caopsmvsrexxsample OPSMVS rexx to issue a command. VAR = OPSCLEDQ() ADDRESS ‘TSO’ “OPSCMD C(F TERAP02,D CP DETAIL) WAIT(5)” DO I=1 TO QUEUED() PULL LINE SAY LINE END EXIT
caopsmvspanelsto check what are the rule datasets in the OPSMVS panels check the option 4.5.1 it would display the dataset naming convention.
caopsmvssearchto search for a string in OPSLOG issue the command PRO.
caopsmvsinvocationPress END to return Syntax error in keyword: WS — Value of Y is not valid: PARSE OF COMMAND FAILED, RC=18 *** TSO OPSV -> 0 -> 1 -> AOF REXX WorkSpace ===> 1725800
caopsmvsadd a task to opsmvs controla) TSO OPSMVS — o1pen ops view b) 2: editors c) 6 Table Edit Relational Table Editor for RDF d) Enter e) identify the resource tables that are to be updated. (in general COMMON and LOCAL). Browse the SSM_MANAGED_TABLE f) take a backup of the table using I line command to rename and then C line command to copy to a new table. g) use the line command to EDIT the table, we can insert a new line and add all the required fields 10) check the corresponding table_act for the rexx that would be used with these tables based on the conditions.
ibmparmlibMSTJCLxxThe MSTRJCL suffix needs to mentioned in IEASYSxx member using parm MSTR=xx. If the MSTRJCL parameter is not specified, the system uses the MSTJCL00 parmlib member. If the system does not find the MSTJCL00 parmlib member, it uses the default master JCL in the MSTJCL00 module in SYS1.LINKLIB.
CAPDSMANVer checkPDSMAN STC – PDSM0PR
caPDSMANcheckTo check if a dataset is being monitored by PDSMAN. //PDSM34 EXEC PGM=PDSM34,PARM=’SYS1.PARMLIB’ //PDSMRPT DD SYSOUT=* //SYSIN DD
caPDSMANutilityutility to delete, rename, recover and purge old versions. //S1 EXEC PGM=PDSM32 //PDSMPDS DD DSN=TEST.LOAD,DISP=SHR //PDSMRPT DD SYSOUT=A //SYSIN DD * PURGE PREVONLY //
caPDSMANutilityto delete members of a dataset //* JOB TO DELETE MEMBERS OF DATASET USING PDSMAN //STEP1 EXEC PGM=PDSEASY //SYSPRINT DD SYSOUT=* //SYSIN DD * MSL A93LNZZ.JCL.PROD D * /*
ibmperformancecpu _busyCPU_Busy = SM70PDT/1000000, If calculation CPU_BUSY% =( (CPU_BUSY) /( SMF70INT * no. of CP’s) )* 100
ibmperformancecpu _busyCPU busy time, in seconds. Calculated as SMF70ONT/1000 – SMF70WAT/4 096 000 000, or in LPAR mode, VALUE(SMF70PDT/1 000 000, SMF70EDT/1 000 000) – SMF70WAT/4 096 000 000 if wait completion enabled, else VALUE(SMF70PDT/1 000 000, SMF70EDT/1 000 000). — we can check any RMFCPU report to see if WAIT COMPLETION is enabled or NOT.
ibmperformancermfwe can get LPAR level usage MSU report as below. Dump SMF70 alone from SMF dump and use it as input for the below job. //POST EXEC PGM=ERBRMFPP //MFPINPUT DD DISP=SHR,DSN=SYS8.SMF.SYSE.L30W036D.SMF70.JUL17.EXTRACT //MFPMSGDS DD SYSOUT=* //PPOVWREC DD DSN=SYS8.SMF.SYSE.DASHBORD.RMFPOST.CPU.RPT, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(10,10),RLSE) //SYSPRINT DD SYSOUT=* //SYSIN DD * NOSUMMARY DATE(07162019,07162019) OVERVIEW(RECORD) OVW(LDMLP00(LDEFMSU(SYSE))) OVW(LDALP00(LACTMSU(SYSE))) /*
ibmperformancermfwe can get a complete cpu report along with CEC definitions and Lpar defined capacity : SMF 70 dump is input. //STEP01 EXEC PGM=ERBRMFPP,REGION=0M //MFPINPUT DD DISP=(SHR),DSN=GSMVSE.SMF.PLEXPROD.SYST.VTS1SAVE(0) //PPRPTS DD SYSOUT=* //SYSIN DD * NOSUMMARY DATE(09032007,09032007) RTOD(0000,2400) SYSOUT(K) REPORTS(CPU) //
capmocommandsissue command MAIN to return to the main menu.
capmocommandsf pmo,checklib=datasetname — it lets us know if the dataset is managed by PMO or not.
capmocommandsf pmo,d=datasetname — it removes the dataset from PMO monitoring and rebuilds the hash tables.
capmocommandsf pmo,exclprvt=datasetname — it removes the dataset from PMO monitoring
caPMOsetupin the PMO PARMS member (PMOPARM DD in the STC) — we can specify the time limit that is automatically refreshes the LLA datasets that are updated. LLAPRMLB=xxxx.&SYSNAME..PMOPARMS.LLA — if you want to dynamically refresh LLA then we need to update the parm in the ibrary pointed by LLAPRMLIB
capmousecaseIf you have a severe paging problem on your system, you can manually specify the private libraries that CA PMO will manage instead of allowing CA PMO to select them automatically. Methods for handling paging constraints are addressed in the installation and tuning instructions.
capmocommandsF PMO,M=member name — deletes the members entry from PMO management.
ibmpprccommandscommand to check the status of PPRC. CQUERY DEVN(X’0C04′) –> this is to query a device and check whether it is mirrored. CQUERY DEVN(X’0F40′) PATHS —> queries paths established for volume 0F40 CQUERY DEVN(X’0F40′) LINKINFO –> to check the PPRC linkage
ibmpprcmessagemessage is IEA494I, this will come out if a PPRC Suspend occurs
ibmpr/smPR/SM is included with IBM Z mainframes, it does not run under any operating system. PR/SM divides a CEC into LPARs, and can share CPUs, memory, channels, and OSA connections amongst them. PR/SM and z/VM are similar; both can share channels, OSA connections, and CPU amongst one or more guest systems. z/VM is an operating system that can run under PR/SM. PR/SM is a feature of the IBM Z mainframe.
caqfetchcommandf qfetch,d=dataset — deletes a dataset from qfetch monitoring
caqfetchcommandf qfetch,inclprvt=dataset,vol=volume — add a dataset to qfetch monitoring
Chicago softQucikrefLicenseIn the quickref panels issue the command QINFO to identify the expiration date. At present you need to upload the license key in BIN format to mainframe to the license dataset. If already running you can check for it in the QINFO display.
ibmracfcommandsto list a class RL classname parm || RL DIRSERCH * ALL
ibmracfcommandsRLIST classname resourcename AUTHUSER — lists all the user access for the resource in that class.
ibmracfcommandsSETROPTS RACLIST(FACILITY) REFRESH SETROPTS GENERIC(class-name) REFRESH — refresh the class after changes are made.
ibmracfcommandsPERMIT resourcename CLASS(classname) ID(userid) ACCESS(READ) — to permit specific user for a resource in a class.
ibmracfkeyringRACDCERT ID(ring-owner) ADDRING(keyringname) RACDCERT ID(ibmuser) ADDRING(key_ibmuser) — Create a keying for IBMUSER
ibmracfcertificateRACDCERT CERTAUTH LIST(SERIALNUMBER(023456)) RACDCERT CERTAUTH ALTER(LABEL(‘GeoTrust Global CA’)) TRUST — Enabling the trust
ibmracfcertificateRACDCERT ID(ibmuser) CONNECT( CERTAUTH LABEL(‘GeoTrust Global CA’) RING(key_ibmuser) USAGE(CERTAUTH) ) RACDCERT ID(GPMSERVE) CONNECT(SITE LABEL(’SYST SITE CERT’) RING(DDSSERVERKEYRING) USAGE(PERSONAL) DEFAULT) — to mark the certifacate usgae as Default. The irrsitec user ID is defined in USER profiles that are supplied with RACF® and cannot be defined by your installation. the certificate names are case sensitive. please ensure to check and then use the names in the command.
ibmracflistRACDCERT LISTRING (List key ring) — list key ring. RACDCERT LISTRING (ringname) ID(ring-owner)
ibmracfcommandsPERMIT IRR.DIGTCERT.LIST CLASS(FACILITY) ID(USER2) ACCESS(READ) PERMIT IRR.DIGTCERT.LISTRING CLASS(FACILITY) ID(USER2) ACCESS(UPDATE) — to permit users to check all the key ring and not just his own.
ibmracfcommandsRACDCERT EXPORT(LABEL(‘zOSMFCA’)) DSN(IBMUSER.ZOSMFCA.CERT) certauth format(PKCS12DER) password(‘123456’)
ibmracfcommandssetropts classact(rdatalib) — to activate a class
ibmracfcommandssurrogat BPX.SRV.* to imitate another user in OMVS. Once we have access we can issue the command ” su -s newuser ” and act like the new user.
ibmracfcommandsralter started zowesvr1.* stdata(user(izusvr))
ibmracfcommandsrdefine started zwesis01.* stdata(user(izusvr))
ibmracfpermissionMVS.MCSOPER.* and CL(OPERCMDS) — to permit users with sdsf command display authority
ibmracfpermissionCLASS(TSOAUTH) and JCL — to permit a user to submit a job
ibmracfkeyringa. Create self signed certificate authority (CA) certificate: RACDCERT CERTAUTH GENCERT SUBJECTSDN(CN(‘JES2 Subsystem CA’) O(‘JES2 CA Org’) OU(‘JES2 CA Unit’) L(‘Poughkeepsie’) SP(‘New York’) C(‘US’)) WITHLABEL(‘JES2_CA’) NOTAFTER(DATE(2027-05-31)) b. Create client certificate for JES2 EDS use, signed with CA certificate created previously: RACDCERT ID(JES2USER) GENCERT SUBJECTSDN(CN(’JES2 Client’) O(’JES2 Client Org’) OU(’JES2 Client Unit’) L(’Poughkeepsie’) SP(’New York’) C(’US’)) WITHLABEL(’JES2_Client’) SIGNWITH(CERTAUTH LABEL(’JES2_CA’)) c. Add JES2 client certificate to JES2 key ring: RACDCERT ID(JES2USER) CONNECT(ID(JES2USER) LABEL(’JES2_Client’) RING(JES2EDS) DEFAULT))
IbmracfkeyringGenerate a certificate: RACDCERT SITE GENCERT + SUBJECTSDN(CN(‘ xxx.xxx.com ‘) + OU(‘Company’) + O(‘Company’) + L(‘Saint Paul’) + S(‘Minnesota’) + C(‘US’)) + SIZE(2048) + KEYUSAGE(HANDSHAKE DOCSIGN DATAENCRYPT) + notbefore(date(2022-01-01))- notafter(date(2040-09-11))- WITHLABEL(‘SYST TN3270 Site Cert’) + signwith(certauthlabel(‘xx Issue 1 Sha2’)
ibmracfcertficateto export a certificate from one system to the other when having shared datasets. 1. On owing system issue the command, it should create the copy of the certificate on SYSQ to a file. a. RACDCERT EXPORT(LABEL(‘Cloud Compiling Self Signed’)) DSN(‘sys5.cts.cc.cert. export’) 2. ON rquired system issue the command, a. RACDCERT ID(TCPIP) ADDRING(CloudCompiling) b. RACDCERT ADD(‘SYS5.CTS.CC.CERT.EXPORT’) ID(TCPIP) TRUST WITHLABEL(‘Cloud Compiling Self Signed’) c. RACDCERT ID(TCPIP) CONNECT(SITE LABEL(’ Cloud Compiling Self Signed’) RING(cloudcompiling) d. SETROPTS RACLIST(DIGTCERT, DIGTRING) REFRESH
ibmracfsurrogatto be able submit jobs on behalf of another user using USER=xxxx on the job card we need to get access to userid.SUBMIT in SURROGAT class.
ibmracfsmf80 reportwe can use smf80 smfdump data to produce a racf violation report. use the below job. //RACFRW2 EXEC PGM=IKJEFT01 //SORTWK01 DD UNIT=3390,SPACE=(CYL,(100,100)) //SYSPRINT DD DISP=SHR,DSN=report.SMF80 //SYSTSPRT DD SYSOUT=T //RSMFIN DD DISP=SHR,DSN=dump.SMF80 //SYSTSIN DD *,DLM=XX RACFRW SELECT VIOLATIONS PROCESS EV LOGON EV ALLSVC EV ALLCOMMAND SELECT AUTHORITY(SPECIAL OPERATIONS AUDITOR) PROCESS EV ALLSVC EV ALLCOMMAND SELECT REASON(CLASS SPECIAL CMDVIOL) PROCESS EV ALLSVC EV ALLCOMMAND LIST SORT(USER) END DLM
IBMRACFDB2 wrong passwordou need to find the error messages that show someone putting in the wrong password, if this is put in by a DB2 connection you will see 10:38:42 22JAN D2PBDIST ICH408I USER(P#00252 ) GROUP(D#825660) NAME(NPSA – PSAR 10:38:42 22JAN D2PBDIST LOGON/JOB INITIATION – REVOKED USER ACCESS ATTEMPT
ibmracfGIDto assign a OMVS GID to a RACF group. we can use the following commands ALTGROUP SECADMIN OMVS(GID(336)) — manually assigning the GID if we have the list of GID noted down. ALTGROUP C21S@ALT OMVS(AUTOGID) — this will assign a GID automatically if the AUTOGID function is enabled.
longperlresearchWebsitehttp://www.lookupmainframesoftware.com/ — ISV comparision site.
IBMREXXcommandsTo display a panel — ADDRESS ISPEXEC “DISPLAY PANEL(LICHKP2)” and display a panel and select the options “ISPEXEC SELECT PANEL(PARMPAN1)”
IBMREXXcommandsTo browse a member — ADDRESS ISPEXEC “BROWSE DATASET(‘”DS”(LICEXPDT)’)” browse a member based on the system name we are running it on. ST=MVSVAR(‘SYSNAME’) DS=SYS5.CTS.TOOL.PARMLIB.COLLECT ADDRESS ISPEXEC “BROWSE DATASET(‘”DS”(“ST”PARM)’)” exit
IBMREXXcommandsTo edit a member — ADDRESS ISPEXEC “EDIT DATASET(‘”DS”(LICEXPDT)’)”
IBMREXXcommandsLibdef to add a dataset to ISPPLIB — “ISPEXEC LIBDEF ISPPLIB DATASET ID(‘SYS5.CTS.LICHK’)”
IBMREXXcommandsTo break from a program and execute a funciton use CALL. IF a=0 then CALL ABC ABC is a funciton here. And we can have a set of statements in ABC
IBMREXXLoopUse a END command to END a DO Loop. Do …… END
ibmrexxcommandsto open a file to read the content : “ALLOC F(INFILE) DSN(‘my.seq.dsn’) SHR REU”, “EXECIO * DISKR INFILE ( FINIS STEM MYFILE.” , “FREE F(INFILE)”
ibmREXXcommandsto write to a file: “ALLOC FI(LNAME) DA(‘MY.PS.WRITE’) SHR”, “EXECIO * DISKW LNAME(STEM ARRAY. FINIS”, “FREE FI(LNAME)”
ibmREXXcommandsSUBWORD(‘I am a hero’,2) — to get the remaining string from a specific word position.
ibmREXXcommandsWORD(String,n) — WORD(‘(I am a hero)’,2) /* returns ‘am’ */
ibmREXXcommandsWORDPOS(‘am a’,’i am a hero’) /*returns 2*/
ibmrexxcommandsa DO / FOR loop can be ended with a LEAVE instruction.
ibmrexxcommandscall a funciton. CALL ABC arg1 arg2 … write the code for function as ABC: … RETURN
ibmREXXcommandsLASTPOS(needle,string,start pos) — returns the last position of needle in the string starting at “start pos”)
ibmREXXsubmit a jobsubmit a job through rexx /* REXX */ ADDRESS TSO “SUBMIT ‘SYS5.CTS.PARMREXX($1CMDCJC)'” EXIT
ibmrexxclistgiving % infront a clist when executing in ISPF, It causes ISPF to bypass its search through the program libraries and search only the CLIST libraries for the commands
ibmrexxscriptsscritp to generate and submit a job through rexx /***************REXX*****************/ ADDRESS ‘TSO’ “ALLOC DA(‘SYS5.A8S59ZZ.TEST(TEST2)’) FI(INPUT) SHR REUSE” “EXECIO * DISKR INPUT (STEM VAR. FINIS” “FREE FI(INPUT)” DO I=1 TO VAR.0 PARSE VAR VAR.I GDGBASE GDGBASE = STRIP(GDGBASE) GDGBASE = WORD(GDGBASE,1) QUEUE “//A8K53ZZ$ JOB TEST,’TEST’,REGION=0M,CLASS=T, ” QUEUE “// MSGCLASS=T,PRTY=07,NOTIFY=&SYSUID ” QUEUE “//GDGSTEP1 EXEC PGM=IDCAMS ” QUEUE “//SYSPRINT DD SYSOUT=* ” QUEUE “//SYSIN DD * ” QUEUE ” DEFINE GDG(- ” QUEUE ” NAME(SYS8.STUPOUT.”||GDGBASE||”.DAILY) – ” QUEUE ” LIMIT(7) – ” QUEUE ” NOEMPTY – ” QUEUE ” SCRATCH) ” QUEUE “/* ” QUEUE “// ” QUEUE “$$” X = OUTTRAP(‘LOG.’) “SUBMIT * END($$)” X = OUTTRAP(‘OFF’) PARSE VAR LOG.2 JOB JOBID MESSAGE SAY JOB JOBID MESSAGE END EXIT
ibmrexxjobcard/* REXX */ TRACE I @LINE1 = “//”USERID()”A JOB TEST,’TEST’,REGION=0M” @LINE2 = “// CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)” @LINE3 = “// NOTIFY=”USERID()”” ADDRESS ISREDIT ‘MACRO’ ‘LINE_AFTER 0 = “&@LINE1″‘ ‘LINE_AFTER 1 = “&@LINE2″‘ ‘LINE_AFTER 2 = “&@LINE3″‘ “LINE_AFTER 3 = ‘//*'” EXIT
ibmrexxsystem valueswe can use the function MVSVAR to collect system name,zos name, version and many other values.
ibmrexxpull from usercommand to get values from a user. SAY “Enter the parmlib member you are lookin for ” parse pull parm
ibmrexxlibdefsample libdef program./* REXX */ to add a dataset for SYSPROC/SYSEXEC concatenation. TRACE I DA=SYS5.CTS.TOOL.PARMLIB ADDRESS ISPEXEC “LIBDEF ISPPLIB DATASET ID(‘”DA”.PANEL’)” ADDRESS TSO “ALTLIB DEACTIVATE APPL(EXEC)” ADDRESS TSO “ALTLIB ACTIVATE APPL(EXEC) DA(‘”DA”.EXEC’)” ADDRESS ISPEXEC “SELECT PANEL(PARMPAN1)” ADDRESS ISPEXEC “LIBDEF ISPPLIB” ADDRESS TSO “ALTLIB DEACTIVATE APPL(EXEC)”
ibmrexxdateX = DATE(‘N’,’03112′,’J’); SAY X — julian to regular date
ibmrexxinsert data into a file using rexx “execio * diskr ddname (finis)” /* stack the dataset contents */ qn=queued() do qn /* process stacked data */ parse pull r queue r if pos(‘whatever you are looking for’,r)>0 then queue ‘ inserted data’ end “execio” queued() “diskw ddname (finis)” /* rewrite dataset */
ibmrexxpds memberto check if a ps or a pds member is available. ISOK=SYSDSN(‘LQ.SLQ.TLQ(SAMPLE)’) IF ISOK = “OK” THEN address ispexec “Browse Dataset(‘LQ.SLQ.TLQ(Sample)’) ” Read more: http://ibmmainframes.com/about43384.html#ixzz6OIduCYKv
ibmrexxpds memberto check if a dataset is pds FC = LISTDSI(dsname) IF SYSDSORG ¬= ‘PO’ THEN ITERATE LISTDSI can be used to get the Created, referenced and other values that we see when we give “I” next to a dataset /* REXX */ DINFO = LISTDSI(‘A93LNZZ.JCL.PROD’) CDATE = SYSCREATE — give the dataset creation date SAY CDATE EXIT
ibmrexxselect statmentSELECT WHEN expression THEN instruction WHEN expression THEN DO instruction END WHEN expression THEN instruction ⋮ OTHERWISE instruction(s) END /* — should be on a seperate line */ else we will get errors /*Incomplete DO/SELECT/IF*/ No need to use DO if multiple instrucitons
ibmrexxtime zone varibale/* REXX Calculate the local timezone from MVS system variables.*/ day_different = mvsvar(‘SYMDEF’,’LYR4′) – mvsvar(‘SYMDEF’,’YR4′) if day_different = 0 then day_different = mvsvar(‘SYMDEF’,’LJDAY’) – mvsvar(‘SYMDEF’,’JDAY’) hours_different = mvsvar(‘SYMDEF’,’LHR’) -, mvsvar(‘SYMDEF’,’HR’) + 24 * day_different min_different = right(abs(mvsvar(‘SYMDEF’,’MIN’) -, mvsvar(‘SYMDEF’,’LMIN’)),2,’0′) sign = substr(‘+-‘,(hours_different < 0)+1,1) return sign || right(abs(hours_different),2,'0')min_different
ibmrexxcompareARG FULLSTNAME FULLNAME1 SAY FULLSTNAME SAY FULLNAME1 TRACE I “ALLOC FI(NEWDD) DA(“FULLSTNAME”) REUSE SHR” “ALLOC FI(OLDDD) DA(“FULLNAME1″) REUSE SHR” “ALLOC FI(SYSIN) DA(‘SYS5.CTS.JCL.CNTL(CMPSYSIN)’) REUSE SHR” “ALLOC FI(OUTDD) DA(‘A93LNZZ.JCL.TEST(CMPSYOUT)’) REUSE SHR” PARMS = “LINECMP,DELTAL,SEQ” ADDRESS LINKMVS ‘ISRSUPC PARMS’ /* ADDRESS ISPEXEC “SELECT PGM(ISRSUPC) PARM(“PARMS”)” */ SAY RC RETRC = RC “FREE FI(NEWDD OLDDD SYSIN OUTDD)” RETURN RETRC
ibmrexxcall/returnCALL ABC x1 x2. — call a function ABC, we can pass values x1 and x2 to the function. outval = C — the returned value can be saved in a variable. ABC: — start of fucntion abc ARG x1 x2 — x1 and x2 are read by the funtion. c = x1 + x2 Return C — return the value C to the call.
ibmrexxedit macro through rexx/* rexx edit macro to change values */ ‘ISREDIT MACRO’ ‘ISREDIT C’ curval newval ‘ALL’ ‘ISREDIT save’ ‘isredit end’ Then, invoke the editor from your exec: CALL alloc_tempfile /* allocate tempfile */ “address ispexec edit dataset(“tempfile”) imacro(changer)”
ibmrexxtso commandrexx to capture the output of tso command TRACE ‘o’ PARSE ARG tsocmd cmdrc=0 IF tsocmd¬=” THEN DO x=OUTTRAP(‘tsoresp.’) ADDRESS ‘TSO’ tsocmd cmdrc=rc x=OUTTRAP(‘OFF’) DO i=1 BY 1 WHILE i<=tsoresp.0 QUEUE tsoresp.i END END EXIT cmdrc
ibmrexxispf panelswe can invoke panels without going out of the current panel. invoke browse panel when editing some member and comeback to the edit panel. this rexx add’s new shortcuts to the ISPCMDS command table. so we can use these commands. * Rexx */ zctverb=”BR” zcttrunc=”0” zctact=”SELECT PGM(ISRBRO) PARM(ISRBRO01) SCRNAME(VIEW)” zctdesc=”BROWSE SCREEN” Address ISPEXEC “TBADD ISPCMDS” zctverb=”ED” zcttrunc=”0” zctact=”SELECT PGM(ISREDIT) PARM(P,ISREDM01) SCRNAME(EDIT)” zctdesc=”EDIT SCREEN” Address ISPEXEC “TBADD ISPCMDS” Exit
ibmrexxcpu capcity/* REXX */ rct = c2d(storage(d2x(c2d(storage(d2x(c2d(storage(10, 4))+604), , 4))+228), 4)) say ‘CEC MSU capacity=’c2d(storage(d2x(rct+32), 4))’;’ , ‘defined LPAR MSU capacity=’c2d(storage(d2x(rct+28), 4))
ibmrexxcapturecapture tso command output. /* REXX */ /* */ /* AUTHOR: MARK ZELDEN */ /* */ /* TRACE ?I */ arg TSOCMD address ISPEXEC “CONTROL ERRORS RETURN” address TSO ddnm = ‘DD’||random(1,99999) /* choose random ddname */ junk = msg(off) “ALLOC FILE(“||ddnm||”) UNIT(VIO) NEW TRACKS SPACE(5,5) DELETE”, ” REUSE LRECL(140) RECFM(F B) BLKSIZE(8960)” junk = msg(on) /* */ /* issue tso commnd and trap output */ /* */ junk=outtrap(LINE.) TSOCMD junk=outtrap(‘off’) /* */ “EXECIO” line.0 “DISKW” ddnm “(STEM LINE. FINIS” address ISPEXEC “LMINIT DATAID(TEMP) DDNAME(“||ddnm||”)” address ISPEXEC “BROWSE DATAID(“||temp”)” address ISPEXEC “LMFREE DATAID(“||temp”)” junk = msg(off) “FREE FI(“||ddnm||”)”
ibmrexxunix/* REXX */ — REXX that uses unix environemtn to stop the execution for 5 sec. address syscall sleep 5 EXIT
ibmrexxsdsfmvs commands through rexx Well, we could always do this via REXX. We can run it in batch under IKJEFT01 or foreground. For instance – xc = ISFCALLS(“ON”) PARSE PULL com Address SDSF “ISFEXEC /”com” ” xc = ISFCALLS(“OFf”) If we want to see the output, we cud put a DO loop to list isfulog. stem variable which wud be capturing the data.
ibmrmftypesRMF 1 — post processor (produce reports). Periodically writes performance data to SMF records 70-78. RMF II — screen shot of a single addr. space and resource use / RMF III — called as workload dealy monitor. Sessions are used to check the performance of users or jobs, how fast they are running (workflow) and any delays that have been encountered along the way.
ibmrmfcpu reportRMF CPU report based on 70:79 smf records //RMFPP EXEC PGM=ERBRMFPP,REGION=0M //MFPINPUT DD DISP=SHR,DSN=MMM.SMF.SYSR.RMF.G3515V00 //MFPMSGDS DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSIN DD * REPORTS(CPU) /*
ibmrmfoptionsIf you do not specify a MEMBER option, RMF uses a particular default parmlib member for each type of gatherer session: ERBRMF00 for Monitor I — has the sysnc parm that specifies when to sync the records with SMF. ERBRMF01 for Monitor II ERBRMF04 for Monitor III These members are supplied with RMF, as are two alternative members: ERBRMF02 for Monitor I ERBRMF03 for Monitor II
ibmrmfcommands/F RMF,D ZZ — dispalys the options used with Monitor-1 and ERBRMFxx suffix values used.
ibmrmfddrApplication programs can retrieve sysplex wide RMF data through the RMF Distributed Data Server (DDS). In this process, the application program sends a HTTP request to the RMF DDS, which in turn gathers the information required from the RMF instances running on the sysplex members. The RMF DDS then returns the response to the application in the form of an XML document.
Macro4rmfddr collectionhttps://www.ibm.com/support/pages/apar/OA54982 — the jcl that comes with apar can be used to collect the DDR. the module GPMCSVM3 is use with the job.
ibmrmfinvocationISPF access for RMF Check for SYS1.SERB* files and add them to your SYSPROC, IPSMLIB and plib and so on issue the command TSO RMF to invoke rmf panels. issue the commadn TOS RMF UTIL to invoke rmf utility panels.
ibmRMFDDR collectionibm rmf GPMSERVE “GPMSERVE is a STC that is run on MF — RMF-DDS-Server Once we enable this and we have RMF running on the system we can use weblinks to collect many metrics http://system.xxx.com:8803/gpm/perform.xml?id=8D0420&RESOURCE=SYSTEM ,*,PROCESSOR — this would giveus the value of DDR metric 8D0420(MVS view of CP utilization) for system.”
ibmrmfDDR collectioncheck the dataset SYS1.SERBPWSV and search for DDR to find out under which metric this DDR gets collected.
ibmrmfDDR collectionhttp://xxxx.yyyy.com:8803/gpm/perform.xml?id=8D2540&RESOURCE= ,cecmodel,cpc — cec cpu %
ibmrmfDDR collectionhttp://xxxx.yyyy.com:8803/gpm/perform.xml?id=8D30E0&RESOURCE=lparname ,*,PROCESSOR — no of jobs waiting
ibmrmfaccessThere are several monitoring tools and applications that can be used to monitor RMF data using a workstation: z/OSMF is a management console that amongst other things, can access most RMF Monitor III information and save custom views of this data. RMF Performance Monitoring (RMF PM) obtains RMF data available through the RMF Distributed Data Server (DDS). It allows you to define scenario based templates called PerfDesks that whenever opened, will obtain RMF data according to the performance monitoring requirement. Client/Server Enabling (RMFCS) allows you to access RMF Monitor II and Monitor III reports using the ISPF Batch GUI feature. Previously created Postprocessor reports that have been saved in XML format can be downloaded to your workstation and displayed in a browser, using RMF XSL stylesheets.
ibmrmfcheck delay of a jobSteps to check for delay of a job. 1. Invoke RMF monitr ISPF interface 2. Select option 3 RMF Monit III 3. 2 – JOBS 4. provide jobname in JOBNAME field and select 5 JOB “delay caused by primary reason” 5. At the bottom of the screen in the “JOB PERFORMANCE SUMMARY” look for “% delayed for ” PRC — waiting for processor / DEV — Waiting for I/O / STR — Waiting for storge / OPR — operator action such as tapemount / ENQ for ENQ. we can also check “Primary delay” field.
ibmrmfreportspost processor reports Interval Reports : displays sysplex performance for each interval for which data has been gathered. Duration reports : contain data,which is summarized over longer periods of time. Summary, exceptions and overlay reports: allows you to create reports you need to manage the system performance. Overview records : these can be fed into workstation spread sheets. web browser data : reports created in xml format allowing them to be displayed through web browser.
CARoscoeVer checkROSCOE STC – ROS001I
ibmrrsunderstandingLet me first give an overview of RRS logstreams and their usage. RRS has 4 mandatory logstreams ATR.gname.RM.DATA Contains list of all RMs registered to RRS and current status with RRS Cannot tolerate dataloss! Recommended to use logstream duplexing ATR.gname.MAIN.UR Contains active local URs Generally minimally used ATR.gname.DELAYED.UR Contains active URs RMs can set option so all (local or sysplex) URs are logged here Majority of all URs will be logged here ATR.gname.RESTART Contains URs associated with RMs that terminated and have not yet restarted Cannot tolerate dataloss! Recommended to use logstream duplexing RRS has 2 optional logstreams ATR.gname.ARCHIVE Contains all completed URs Not recommended to use in a dasd-only environment for performance reasons Must set AUTODELETE(YES) and RETPD(n) on definition to ensure data is only retained for desired n days before it is autodeleted. ATR.gname.METADATA For use by RMs to store any desired metadata. Not currently exploited
ibmrrscheckto check the status of RRS. To look at the current status of the RRS logstreams, you can issue: D LOGGER,L,LSN=ATR* (name of the logstream) This will tell you whether any of the logstreams are in a dataloss condition. RRS also has displays that can be issued to check status details. D RRS,RM shows the current state of Resource managers with RRS — if the status is RESET no need to worry the task might not be using RRS now. D RRS,UREX shows any RRS URs (representing transactions) that may be hung or delayed and where they are waiting.
ibmrrscheck – Dataloss conditon.IXG251I IKJ56228I DATA SET LOGR.ATR.PLEX1.DELAYED.UR.A0000002 NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED *039 ATR202D GAP FOUND IN ATR.PLEX1.DELAYED.UR. REPLY RETRY OR ACCEPT TO ACCEPT THE DATA LOSS We get these error message when the logstream backup datasets are missing. We either have to restore these datasets and then try a RETRY. if there is no way to have these datasets restored. then check all the systems in the sysplex for any such messages and reply ACCEPT. if you get the message again reply ACCEPT again it could be because the system had processed some records and was looking for the above dataset by the time we reply to this WTOR. We can try that for a couple of times. We can try stopping any tasks that wuld use RRS services and try the reply commands is possible.
ibmrrscheck – Dataloss conditon.We need to do a COLD start of RRS if the problem persists https://www.ibm.com/support/knowledgecenter/SSLTBW_2.3.0/com.ibm.zos.v2r3.iean100/iea3n1143.htm 1. issue the command /SETRRS CANCEL to call the members of sysplex. Using the strucutre if you are using DASD only type then we need to do it only on this system. 2. Use the job in ATRCOLD member of SYS1.SAMPLIB to delete and redfine the RRS RM Data logger. 3. Start RRS on one system and then on the other sysplex systems.
ibmrrscheck – Dataloss conditon.If, however, you want to force a cold start and keep the data in the existing logs, specify a different log group name in the JCL that invokes IXCMIAPU, as described for step 3 in the preceding list. //ATRCOLD JOB MSGLEVEL=(1,1) //STEP1 EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=* //SYSIN DD * DATA TYPE(LOGR) DELETE LOGSTREAM NAME(ATR.RRSGROUP.RM.DATA) /* // IF (STEP1.RC = 0) THEN //STEP2 EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=* //SYSIN DD * DATA TYPE(LOGR) DEFINE LOGSTREAM NAME(ATR.RRSGROUP.RM.DATA) STRUCTNAME(LIST01) LS_DATACLAS(VSAMLS) /* // ENDIF
ibmrrsreporting//LISTUTIL JOB MSGLEVEL=(1,1),NOTIFY=xxxxxxx,MSGCLASS=A //STEP1 EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=* //SYSIN DD * DATA TYPE(LOGR) REPORT(YES) LIST LOGSTREAM NAME(ATR.PLEX1.*) DETAIL(YES) /*
ibmrrscheckingAfter we have a DATALOSS condition and trying to restart WAS tasks. Just a note going forward regarding the WAS resource managers. If you restart the WAS regions listed in the RRS RM displays, I expect that they might fail because WAS typically does not tolerate missing data in the RRS UR logstreams. There is an ATRQSRV utility option to delete an RM from RRS, DELETERM. You can use this to delete those WAS region RMs and allow them to start cold with RRS if needed: MVS Programming: Resource Recovery -> ATRQSRV utility https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.iean100/iea3n1167.htm New WAS regions / Resource Manager names will have no problem starting with RRS.
ibmsadumpnoteThe stand-alone dump program and the stand-alone dump together form what is known as the stand-alone dump service aid. The user generated stand-alone dump program must reside on a storage device that can be used to IPL from. The dump dataset can span across 32 volumes if defined as a DSNTYPE=LARGE
ibmsadumpmultiple dumpsBy coding the DDSPROMPT=YES keyword on the AMDSADMP macro, you can generate a stand-alone dump program that allows run-time dump data set prompting. By coding DDSPROMPT=NO on the AMDSADMP macro, the stand-alone dump program is generated without run-time dump data set prompting. In this case, replying to message AMD001A with a DASD device causes the stand-alone dump program to assume that the output dump data set is named SYS1.SADMP
ibmsadumpprogram datasetAfter the stand-alone dump program is properly created on a DASD residence volume, it resides in the SYS1.PAGEDUMP.Vvolser data set.
ibmsadumpdataEach version of zOS has a different SADUMP program so we need to generate the program every time we upgrade zOS.
ibmsadumpsadStep 1: Create a SAD dump program with the zOS version modules that you are running. So, every time we do a zOS upgrade we need to re-do the SADUMP process. Using the macro AMDSADMP. When we run this macro an IPL-text is created on the specified volume that would be used to IPL the system to collect an SADUMP. jcl to create the dump program or IPL text on the required volume. it gets created with a naming convention of SYS1.PAGEDUMP.Vvolume — this is the default. We can use the PROMPT keyword so we get the option to specify more address spaces to dump other than the default ones included in the program. OUTPUT parm to specify the volume where the dataset is residing that needs to be used to collect the dump. Remember the volume unit addr that you have provided for the ipl text to be written to. This is used to IPL the system to collect the sadmp.use DDPROMPT=YES so we can specify the output dataset name while taking the dump. Another parm that differentiates the program from other system is the console that you can use to communicate with the dump program. Step 2: SYS1.SBLSCLI0(AMDSADDD) – use to allocate, clear, delete the dataset where the dump has to be collected.
ibmsadumpsadtaking the dump. When the system is in hung state, in the hmc use the SADUMP profile(has the unit addr where the sadump program is written) and activate that lpar. In the console that you have mentioned while generating the program we would get a banner. as we have specified DDPROMT an PROMPT while generating the SADUMP program, the system would ask us for unit addr and dataset name where the dump needs to be captured and also the DUMP options to be specified. we can use the DUMP command to specify any or all address spaces to be dumped. DUMP DATASPACES OF ASID(ALL) One thing to remember on the HMC profile would be to remember to have the “STORE STATUS” check box ticked (Store status is a processor operation that stores the contents of a processor’s registers, excluding the time-of-day (TOD) clock, in assigned storage locations).
ibmsadumpdump steps1. Remove system form plex – from another plex member issue: V XCF,sysx,OFF (sysx=system to be dumped). Then XXXsysname=sysx (XXX=prompt #) 2. From (HMC) VIEW screen highlight appropriate CEC and then click on customize/delete activation profile. Select the already set profile for SADUMP. In the LOAD ADDRESS field, put in the appropriate standalone dump program IPL address 3. From (HMC) VIEW screen, select GROUPS (click twice) 4. From GROUPS WORK AREA select CPC IMAGES (click twice) 5. From CPC IMAGES WORK AREA, select lpar desired for sa dump. (click twice) 6. From LPAR DETAILS window click once on CHANGE OPTIONS 7. From CHANGE OBJECT OPTIONS under the list, click once to select proper standalone dump profile.
ibmsadumpdump steps8. Select SAVE. On details window under activation profile category, insure the standalone dump you selected is now listed. 9. Select SAVE again. 10. Click once on desired lpar to highlight it from CPC IMAGES WORK AREA. 11. Select ACTIVATE. 12. Wait 30 seconds and press “ENTER” on master console to get first message. Note: If you don’t get a message on the master console go to the Operator Messages screen on the HMC and press the Enter key. You should get the message there. 13. Rspond to dump title information prompt, followed by output device address prompt. Note: If more than 1 output volume is needed use the other SADPL addresses. Dump is complete when you get the messages stating “dumping of real storage completed”. 14. Ater dump is completed, repeat steps 3 – 9 to select the proper profile to begin the Normal ipl of the system.
ibmscrtwebsitehttps://login.ibm.com/authsvc/mtfim/sps/authsvc?PolicyId=urn:ibm:security:authentication:asf:basicldapuser
IBMSDSFcommandsif we get NO DISPLAYABLE DATA — issue the INPUT ON cmd.
ibmsdsfsearchfindlim xxxxx — updates the no. of line mvs command seraches.
ibmsdsfsdsfauxNew address space that helps in collecting more information. we have direct options for LNKLIST, LPA, Pagedatasets and parmlib. we can also use SRCH command to search for a program in lnklst and few more functionalities.
ibmsdsffield arrangementto arrange fields in the order you want “ARR ?”
ibmsdsfbatch command//jobcard //step1 exec pgm=sdsf //isfout dd sysout=* //dataout dd dsn=xxx.xxx.xxx,DISP=(new,catlg,delete),DCB=(RECFM=FBA,LRECL=133),space //isfin dd * /D T /D J,L print file dataout ulog print print close /*
ibmsdsfprintwe can print the output to a dataset. issue PRINT D — opens a page to provide the details of the dataset to be used for printing. iseue PRINT * 99999 — from start of the cursor to no. of lines issue PRINT CLOSE — to close the printing.
ibmsdsfbatch jobsPrint the status of job //SDSF EXEC PGM=SDSF,PARM=’++270,132′ <== ALSO, CAN USE PGM=ISFAFD //* ++270 allows you to print 270 lines for each command //* 132 is the width of the command output. //ISFOUT DD SYSOUT=* //ISFIN DD * OWNER * PREFIX R2221* ST
ibmsmfcommandscommand to change the SMF dataset before it is full. SWITCH SMF
ibmsmfdumpto dump smf records from tape //STEP1 EXEC PGM=IFASMFDP //DD1 DD DSN=MMM.SMF.SYST.SCRT.G3289V00,UNIT=TAPE,DISP=SHR //DD2 DD DISP=NEW,DSN=A93LNZZ.SMF.DUMP,DCB=LRECL=32760, // SPACE=(CYL,(30,30)) //SYSPRINT DD SYSOUT=* //SYSIN DD * INDD(DD1,OPTIONS(ALL)) OUTDD(DD2,TYPE(70,89)) /* INDD(DUMPIN,OPTIONS(ALL)) OUTDD(DUMPOUT,TYPE(00:255)) — to dump all the records in the input dataset.
ibmsmfdataSMF 70 record is written at every RMF collection interval. It would be in RMF parmlib ERBRMF00
ibmsmfsmf30CICS PGm = DFH* DB2 PGM = DSN* MQ pgm = CSQ*
ibmsmfdumpdump to dasd //A93LNZZA JOB TEST,’TEST’,REGION=0M, // CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1), // NOTIFY=&SYSUID. //* //IEFPROC EXEC PGM=IFASMFDP //DUMPIN DD DISP=SHR,DSN=SMF.G6268V00 //DUMPOUT DD DSN=&SYSUID..SMF.DUMP,DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(70,50),RLSE),VOL=SER=ZTSOT3, // DCB=(RECFM=VBS,LRECL=32760) //SYSPRINT DD SYSOUT=* //SYSIN DD * INDD(DUMPIN,OPTIONS(ALL)) OUTDD(DUMPOUT,TYPE(00:255)) //*
ibmsmfiefu29To allow the system to invoke IEFU29, define the exit in the SMF parmlib member (SMFPRMxx). Specify IEFU29 on the EXITS option of the SUBSYS parameter for the STC subsystem. If your installation chooses not to define a SUBSYS parameter for STC, you can specify IEFU29 on the EXITS option of the SYS parameter.
ibmsmfT113Collecting T113 collection. F HIS,B,TT=’runid’,PATH=’/u/his/’,CTRONLY,CTR=(B,E),SI=SYNC
ibmsmpecommandswhile receiving files from internet using SMPNTS and if you want use CLIENTINFO DD you can copy the secured ftp lines to userid.FTP.DATA and then no need to use the -f “//’SYS1.TCPIP(TCPFW)'”
ibmsmpewebsitelink to get sample jobs : http://www-01.ibm.com/support/docview.wss?rs=660&context=SSZJDU&uid=swg21066230
ibmsmpereceivesample jcl to receive from SMPNTS — files to have been uploaded to OMVS //RECNTS EXEC PGM=GIMSMP, // PARM=’CSI=MVS.GLOBAL.CSI’ //SMPOUT DD SYSOUT=* //*SMPLOG DD DSN=your SMPLOG data set name,DISP=MOD //SMPNTS DD PATH=’/var/zowe/builds/zSMP/’,PATHDISP=KEEP //*SMPNTS DD PATH=’/var/zowe/builds/zSMP/B5625068/’,PATHDISP=KEEP //SMPJHOME DD PATH=’/usr/lpp/java/J8.0_64/’,PATHDISP=KEEP //SYSUT1 DD UNIT=SYSDA,SPACE=(3120,(380,760)) //SYSUT2 DD UNIT=SYSDA,SPACE=(3120,(380,760)) //SYSUT3 DD UNIT=SYSDA,SPACE=(3120,(380,760)) //SYSUT4 DD UNIT=SYSDA,SPACE=(3120,(380,760)) //SYSPRINT DD SYSOUT=* //SMPCNTL DD * SET BDY(GLOBAL). RECEIVE FROMNTS(B5625068). /*
ibmsmpelist//SMPCNTL DD * SET BDY(GLOBAL). LIST HOLDDATA SYSMODS(UI36027, UI42168, UI46658). /*
ibmsmpejobsSYS1.SAMPLIB(GIMSAMPU) — sample job to create SMP/e CSI and other base datasets and option definitions.
ibmsmpelist//SMPCNTL DD * SET BOUNDARY (GLOBAL) . LIST HOLDDATA
ibmsmpeapply with source//SMPCNTL DD * SET BOUNDARY (TARGET) . APPLY BYPASS ( HOLDERROR HOLDFIXCAT HOLDSYSTEM HOLDUSER ) CHECK SOURCEID ( SMCCOR ) RETRY(YES) .
ibmsmpeapply with FMIDFORFMID( HHBO210 HHBO21L )
ibmsmpefixcatA fix category is an identifier used to group and associate PTFs to a particular category of software fixes. A fix category might be used to identify a group of fixes that are required to support a particular hardware device, or to provide a particular software function, similar to how a preventive service planning bucket (PSP-bucket) identifies a group of PTFs. Fix categories are supplied to you in the form of SMP/E FIXCAT HOLDDATA statements. Each FIXCAT HOLDDATA statement associates an APAR and its related fixing PTF to one or more fix categories.
ibmsmpefixcatwe can download the HOLDATA from IBM website.http://service.software.ibm.com/holdata/390holddata.html#fb80. We can donwlaod the FULL.TXT better to download it directly on mainframe. and receive the holddata into product specific smpe. the receive holddata. generate the command from smpe panels. //SMPCNTL DD * SET BOUNDARY (GLOBAL) . RECEIVE HOLDDATA . We can see the list of available FICAT at https://www.ibm.com/support/pages/ibm-fix-category-values-and-descriptions
ibmsmpefixcatlisting the missing sysmods: //SMPCNTL DD * SET BOUNDARY (GLOBAL) . REPORT MISSINGFIX ZONES ( SYSQRAT —- target zone ) FIXCAT( IBM.Device.Server.z14-3906.RecommendedService — FIX CAT categlory. ) .
ibmsmpeusermod holdWe should not accept a usremod as it would cause issues at a later date when a ptf hits the usermod. BTW One of the most important things to remember with SMPE is to never ACCEPT a Usermod. The Usermod is created as a unique piece of code and change that affects only the Installation. There are 4 types of Sysmods in SMPE, APAR, Function, PTF and Usermod. The Usermod is the only one that must stay in APPLY status. New Maintenance will arrive that may hit the same module that a Usermod is covering and so the Usermod must be RESTOREd. If not, the APPLY Check will fail with a MODID Error. Subsequently the Usermod must be updated to include the new PTF in the PREREQ and re-Applied. So how to stop the Usermod being ACCEPTED? Use this little technique. Once the Usermod has been Applied, create the following HOLD Data naming the Usermod and the FMID it is applicable to and RECEIVE this HOLDDATA. Now when you try to perform an ACCEPT Check on this Usermod (maybe in error), this Hold Data will stop the Accept from completing and it will inform that a Usermod is in the list and needs to be removed before the ACCEPT Check completes successfully. ++HOLD(usermodname) USER FMID(fmidname) REASON(NOUSERM) COMMENT(DO NOT ACCEPT THIS USERMOD).
ibmsmpenotesSMP/e can — Automaticlaly install pre-requeisite products / Run unix scripts / copy data into specific libraries / chekc if a ptf has been aready installed / check if requesisite fixes are installed / MOD — is a OBJECT Module (translated to machine code)
ibmsmpeprocessCSI — consolidated software inventory.– Vsam dataset that smp/e uses to store the details of the products received/installed. Global(receive), target(apply), distribution(accept).
ibmsmpereceiveRECEIVE command copies RELFILES into SMPPTS (PTF temporary storage) datasets. user smppts, relfiles, smptlib, log files.
ibmsmpeapplyset boundary(tgt001) apply select(FMID001) APPLY command install the products as per the MCS statements in SMPPTS and SMPTLIB datasets into target libraries. Update the status of the SYSMOD in global zone as applied. APPLY command acts against many elements as follows MOD — object modules are linkedited/Bind and copied to target libraries. SRC — is assembled to form OBJECT MODULE and LINKEDITED/BIND to get PROGRAMS and copied to target libraries. MAC — MACROS are copied into Macro libraries. Libraries used SMPMTS –(temporary store of macro elemetns for assembling source code). SMPSCDS — (temporary backup of entries modified during apply processing. this is used during restore processing. SMPSTS — temporary store of source elements used for assembling of surce elements. SMPWORK
ibmsmpeacceptSET BOUNDARY(dist001) ACCEPT REmoves work datasets : SMPPTS members / SMPTLIB datasets / RELFILES When a SYSMOD is accepted its information is remove in GLOBAL zone.
ibmsmperelfiles / SMPTLIBRelfiles are the files that a product is supplied by a vendor that can be used for receiving the product in SMP/e. If a SYSMOD being received is packaged in relative files(relfiles), those files are loaded into temporary direct access data sets as part of RECEIVE processing, These temporary data sets, called SMPTLIBs. SMPTLIB are generally using during FMID processing. For a bundled PTFS we have both the MCS and MCS text copied into the SMPPTS
ibmsmpeRMID/UMIDRMID — SYSMOD id that replace an element. UMID — SYSMOD id that updates an element
ibmsmperejectREJECT SELECT(PTFA). All SYSMOD information is removed from the SMPPTS. All SMPTLIB libraries for the sysmod are deleted if packaged using RELFILEs.
ibmsmperestoreRESTORE SELECT(PTFA) a sysmod can be restored if it has been applied and a previous SYSMOD that it modifies has been accepted. It backs-out a SYSMOD apply, restoring elements from the distribution libraries. SYSMOD elements in target libraries are resoted from the most recent elements in the distribution libraries. The SYSMOD is removed from the target zone.
ibmsmpeuclinuclin add mod(xxxx) fmid(yyyy) — to add a module. uclin add dddef(cccc.cccc.cccc) — to add dddef entry in smp/e zones. uclin del targetzone(tgt001) — to delte a target zone. uclin del dlibzone(dis11) — to delete a distribution zone. uclin add options compact(yes) — update global zone options. uclin rep sysmod — to replace a sysmod.
ibmsmpecommandslist sysmod(fmidxxx) — list entries of the csi here it is the fmid sysmod. report errsysmods zones(tgt1) — produces report will all sysmods that are applied with unresolved hold data. may have been installe before teh sysmod is applied.
ibmsmperegression sysmodRegression occurs when SMP/E installs an element from a SYSMOD that did not express a proper PRE or SUP relationship with the RMID and UMID values in the element entry. Regression can occur only when BYPASS(ID) is used to ignore such errors
ibmsmpeshopz reprotJcl to generate a report for shopz to downlaod a maintanance for a product. //STEP1 EXEC PGM=GIMXSID,PARM=’WAIT=10MIN,L=ENU’ //SYSPRINT DD SYSOUT=* //SMPOUT DD SYSOUT=* //SMPXTOUT DD DSN=&SYSUID..SHOPZ.REPORT,DISP=(NEW,CATLG), // DCB=(RECFM=FB,LRECL=12560,BLKSIZE=25120), // SPACE=(TRK,(10,10)) //*SMPXTOUT DD PATH=’/existing_directory/new_file’, //* PATHOPTS=(OWRONLY,OCREAT,OTRUNC), //* FILEDATA=BINARY,PATHMODE=(SIRWXU,SIRWXG,SIRWXO) //SYSIN DD DATA,DLM=$$ CSI=SMPE.IBM.CDP.V1R1.GLOBAL.CSI TARGET=TARGET $$
ibmsmpeRECeive from network -1//SMPER1 EXEC PGM=GIMSMP,REGION=0M, // PARM=’PROCESS=WAIT’ //SMPCSI DD DISP=SHR,DSN=SMPE.IBM.CDP.V2R1.GLOBAL.CSI //SMPNTS DD PATHDISP=KEEP, // PATH=’/products/cdpv2r1/install’ //SMPWKDIR DD PATHDISP=KEEP, // PATH=’/products/cdpv2r1/install’ //SMPJHOME DD PATH=’/products/java864/’ //SMPCPATH DD PATH=’/usr/lpp/smp/classes/’ //SMPOUT DD SYSOUT=* //SMPRPT DD SYSOUT=* //SMPLIST DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SMPCNTL DD * SET BOUNDARY (GLOBAL) . RECEIVE FROMNETWORK( SERVER(SERVINFO) CLIENT(CLNTINFO) ) . /*
ibmsmpeRECeive from network -2//SERVINFO DD * /* //* //CLNTINFO DD * /*
ibmsmpepsphttp://www14.software.ibm.com/webapp/set2/psearch/search?domain=psp — website to check for PSP update
ibmsmperejectWhen we reject a sysmod we need to specify the HOLDDATA also else the PTF entry will still be there in the GLOBAL zone. //SMPCNTL DD * SET BOUNDARY (GLOBAL) . REJECT HOLDDATA SELECT ( UJ02468 UJ03533 UJ03850 ) .
ibmsmpeapplyGIM35501E ** AN ERROR OCCURRED DURING PROCESSING OF THE MCS ENTRY FOR SYSMOD UJ03590 IN THE SMPPTS LIBRARY. if we get this error during a APPLY processing then check for SMPPTS DD for the ptf residing and code the DD in teh apply job pointing to the SMPPTS dataset.
IBMsmpereportreport functional sysmod //SMPCNTL DD * SET BOUNDARY (CAIT0) . LIST FUNCTIONS SYSMOD .
ibmsmpereceiveif you are trying to receive multiple ptf’s in a PDF then we need to specify SMPPTS pointing to each member once. THe receive command in general looks for a ps. if we provide PDS and no member name then we will have error “WRNG.LEN.RECORD,0000011C000C05” — reason “You have specified the SMPPTS (a PDS/PDSE) as sequential input. This means the “directory” of the PDS/PDSE is being read as a logical record. As we all know, the “logical record length” of a PDS directory entry is 256, not 80, hence your problem.”
ibmsmtwhatzOS Simultaneous Multi Threading. zIIP processors can be configured to run up to 2 simultaneous threads that share a physical core’s resources. Reduces instruction processing latency at the core level by allowing one thread to access a core’s resources while another thread is forced to wait on resolution of a processor cache miss.
ibmsmtimplementationImplementation : a. Update the LOADxx with the statement PROCVIEW CORE b. Update the IEAOPTxx memeber with parm MT_ZIIP_MODE=2
ibmsmtbenefit how are we going to measure before & after savings a. zOS converts all the measurements for SMT to an equivalent non SMT. This enables to ensure no changes in CPU time consumption per workload before and after SMT implementation. So, if our zIIP usage is not increased from earlier we may not see much difference. The understanding is that our zIIP cores runs more productively so you can bring in more zIIP related workload. b. As per IBM the maximum through put we can achieve by enabling SMT is 140% without SMT is 100%. c. The best way is to calculate the throughput of a zIIP core from smf data before and after implementing SMT.
ibmsmtworkload1. What workload was running that can be benefitted by SMT? a. SMT is a hardware feature where we are trying to increase the through put of the physical CPU cores. In general we only have one program/instruction (thread) per core of a physical CPU and only after it gets executed another program/instruction is readied for that core. With SMT we can have 2 threads active at the same time so when one instruction is put on wait that other instruction can execute rather than waiting. There by increasing the productive time of each core. So, by logic all the work that generally executes in a CP core is benefitted by SMT. To be more precise, if we have an application that can run many parallel instruction rather than linear execution can benefit more. The mainframe does it a bit different by ensuring all the threads to the core are from the same program. It is enabled only for zIIP’s at this point of time. For compute-intensive batch workloads, automated processes can switch to SMT Mode 1 (one thread per core) to maximize thread speed. For data-oriented workloads, automated processes can switch to SMT Mode 2 (two threads per core) to maximize core throughput
ibmsmtsmt1. create IEAOPT0x by copying IEAOPT00 and add MT_ZIIP_MODE=2 2. update SYS5.IPLPARM(LOADx1) to add PROCVIEW CORE to change processor view from CPU to CORE 3. update SYS1.PARMLIB(IEASYS0x) to change OPT=00 to OPT=0x 4. IPL needed to pick up the change 5. check SYSVIEW for the change verification, option mvs;cpu; note: x=last letter of lpar name
IBMsortsyntaxomit COND=(1,80,ch,eq,c’ ‘) — omits the line that have BLANK chars starting form 1st column to 80th Column. We can concatenate more conditions with AND or OR operators but all have to be in one OMIT condition only.
ibmsortsortSORT FIELDS=COPY INCLUDE COND=(1,6,CH,EQ,C’ ‘,OR, – 3,3,CH,EQ,C’END’) this is will include only the lines that NULL chars in 1-6 cols and the line that has END char in 3-5 cols.
ibmsortsortSORT FIELDS=COPY OUTREC FIELDS=(1:16,17,18:C’,’,19:34,4,23:C’,’, 24:72,8,32:C’,’,33:81,8,41:C’,’, 42:C’ 1′,50:C’,’,52:7,6) the would crate the output as column 1 starting with 17-34 cols of input record and column 18 is added a , and column 19 is added with 33-36 cols of input record
ibmsortsortSORT FIELDS=(1,80,CH,A) SUM FIELDS=NONE to remove the duplicates from the file. Based on the entire line
ibmsortsortOUTREC FIELDS=(1,10,10X,11,10) — Suppose you want to copy first 10 fields then place 10 blanks and then bytes from 11 to 20 from the input file to output file. Your OUTREC would look like as below.
ibmsortsortOUTREC FIELDS=(1,10,10Z,11,10) — Suppose you want to copy first 10 fields then place 10 zeroes and then bytes from 11 to 20 from the input file to output file. Your OUTREC would look like as below. Or OUTREC FIELDS=(1,10,21:11,10) — Where 21: would ask the sort to fill the data from 11 to 20 bytes of input into 21 to 30 of the output dataset. SORT will automatically fill in blanks from 11 to 20.
ibmsortsortOUTREC FIELDS=(1:1,245,246:DATE1(c)) — we can include today date in the cols 246 as YYYYcMMcDD
ibmsortsortSORT FIELDS=COPY JOINKEYS FILES=F1,FIELDS=(1,245,A) JOINKEYS FILES=F2,FIELDS=(1,245,A) REFORMAT FIELDS=(F1:1,245,F2:1,245) JOIN UNPAIRED,F1,ONLY OUTREC FIELDS=(1:1,245) if we have 2 files and need to compare and remove the duplicates and copy only the unmatched lines. here we get only the lines that are not paired in F1 with F2.
ibmsortvb to fbsort pgm to convert VB PS file to FB PS file. //S1 EXEC PGM=SORT //SYSOUT DD SYSOUT=* //SORTIN DD DSN=A123456.VBIN,DISP=SHR //FBOUT DD DSN=A123456.FBOUT,DISP=(NEW,CATLG,DELETE), // UNIT=3390,SPACE=(CYL,(5,5)) //SYSIN DD * OPTION COPY OUTFIL FNAMES=FBOUT,VTOF,OUTREC=(5,100) /*
ibmDASDcatalogCAS — Catalog address space contians details of the master catalog, user catalogs and the aliase.
ibmDASDcatalogCAS reources — ALLOCLCK — internal cas resoruce responsible for allocation, deallocaiton, open and lcoses of datasets. SYSIGGV2 — provides the ability for cross system sharing of catalogs through serialization. SYSZTIOT — controls access to task input/output table resources. SYSZVVDS — serialize access to VVDS records.
ibmDASDcatalogF CATALOG,REPORT,PERFORMANCE — reports that can assist with identifying catalog related problems.shows the accumulative total of occurrences of CAS related events and the average time taken to complete that event. F CATALOG,CONTENTION — contention defaults associated with the CAS resources F CATALOG,CONTENTION(resource,waittime,actions) F CATALOG,LIST — display details on active service tasks. F CATALOG,LIST(taskid) — taskid can be found in the display from LIST command. F CATALOG,LISTJ(jobname),DETAIL — more detailed informaiton on the job.
ibmDASDcatalogYou may find that the only way to resolve a resource deadlock is to remove the offending service task. There are several commands that allow you to perform this task, depending on the outcome you require: D GRS,RES=(SYSZTIOT,*) F CATALOG,LIST F CATALOG,LISTJ(jobname) F CATALOG,END(taskid),REDRIVE — will run the task again after the initial task is ended. F CATALOG,END(taskid),NOREDRIVE — will not run the task again. F CATALOG,ABEND(taskid) — used when the END(taskid) does not work. we can also use ,FORCE appended to the command to end a task.
ibmDASDcatalogCAS reources — ALLOCLCK — internal cas resoruce responsible for allocation, deallocaiton, open and lcoses of datasets. SYSIGGV2 — provides the ability for cross system sharing of catalogs through serialization. SYSZTIOT — controls access to task input/output table resources. SYSZVVDS — serialize access to VVDS records.
ibmDASDcatalogF CATALOG,TAKEDUMP — to dump the CAS F CATALOG,TAKEDUMP(SYSPLEX) — to dump the cas across teh sysplex. F CATALOG,CLOSE(CATALOG.xxxx) — This causes the control blocks to be released and automatically rebuilt when a new request for the catalog is received. F CATALOG,RESTART — performing a CAS restart / FORCE CATALOG,ARM
BMCSubzeroLicenseAs per BMC we can have all CICS regions running from one lpar and DB2 regions running on another lpar. This would reduce the MLC cost of subsystems.
casymdump/batchversioninvoke symdump panels and issue the command OPTIONS
casymdump/batchstopcommand to stop symdump batch and collect an IBM dump. Run the CAS9 task point to the CAIENFPRM
ibmsysplexcoupleutility to list the info. In couple datasets. //STEP1 EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=* //SYSIN DD * DATA TYPE(CFRM) REPORT(YES) — CFRM couple dataset (HLQ, many different parms) /* DATA TYPE(LOGR) REPORT(YES) — CFRM couple dataset (HLQ and all the logrstreams defined many different parms)
ibmsysplextypesXCF-Local Mode –No couple data sets Monoplex –Has couple data sets –Determined by PLEXCFG=MONOPLEX — in PROGxx • First system into sysplex updates the sysplex couple data set to indicate that no other system is permitted to join the sysplex. • Must re-IPL the system to change Multisystem capable –Has couple data sets –A system can join an existing sysplex if it can: • Use the same sysplex couple data sets as the rest of the sysplex • Establish signal connectivity with every system in the sysplex • Use the same common time reference as the rest of the sysplex
ibmsysplexcoupleFind the active policy by issuing the command: D XCF,POL — CFRM
ibmsysplexutilityTo define a CFRM policy. //STEP20 EXEC PGM=IXCMIAPU //STDOUT DD STDERR=* //SYSABEND DD STDERR=* //SYSIN DD * DATA TYPE(CFRM) REPORT(YES) DEFINE POLICY NAME(POLCF1N1) REPLACE(YES) CF NAME(xxx STRUCUTURE NAME(xxx . . . /*
ibmsysplexcoupleSETXCF START,POLICY,TYPE=CFRM,POLNAME=POLCF1N1 — to activate a new policy in CFRM dynamically. We can also start it during ipl in the COUPLExx member.
ibmsysplexcoupleThe CDS and all accesses to the data therein are managed by XCF. None of the traditional access methods with which you might be familiar are used for these data sets. The data set is only accessed via XCF channel programs
ibmsysplexcoupleTo report the policies and defined structure in CFRM policy. //STEP1 EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=* //SYSIN DD * DATA TYPE(CFRM) REPORT(YES) /* DATA TYPE(LOGR) REPROT(YES)
ibmsysplexcouplelist all the couple datasets /D XCF,COUPLE.
ibmsysplexcouple/d xcf,cf — display the coupling facililty systems
ibmsysplexcfrm/SETXCF START,REALLOCATE
ibmsysplexcfrm/DISPLAY XCF,REALLOCATE,TEST
ibmsysplexcfrm/DISPLAY XCF,REALLOCATE,REPORT
ibmsysplexcouple/setxcf start,rebuild,cfname=CF116T — to start duplexing
ibmsysplexcouple/setxcf stop,rebuild,cfname=CF116T — to stop duplexing
ibmsysplexcouple/D CF — to know the level.
ibmsysplexcommandsDisplay External Timer Reference(ETR) data — D ETR,DATA
ibmsysplexcommandd xcf,structure — displays all the structure in the cfrm policy structire are assinged to which CF.
ibmsysplexxcfto display individual coupling facility /D XCF,CF,CFNAME=xxxxx
ibmsysplexxcfcommand to display a strucutre D XCF,STR,STRNAME=xxxx
ibmsystemcommandsD M=STOR
ibmsystemcommandsD M=CPU
CASYSVIEWcommandsSTATUS command to list a informaiton including the license, customer number and so on
CASYSVIEWcommandsSTATUS command to list a informaiton including the license, customer number and so on
CASYSVIEWcommandsto refresh the gsvxgsvx options without recycling — MODIFY SYSVIEW,RELOAD SCFG / F SYSIEW,MODIFY IMSDATA,parmlib F SYSVIEW,RELOAD SECURITY — when we update any user or user access in sysview security
CASYSVIEWoptionsthe GSVXSCFG dd in the SYSVIEW task points to the dataset where GSVXGSVX is searched for.
CASYSVIEWcommandsto continue a command to the next line use “,”.
caSYSVIEWcommandsissue COMMANDS command to list all the command support by SYSVIEW. We can use the same to run in batch too.
caSYSVIEWbatchuse the GSVXBAT pgm to run SYSVIEW commands in batch //SYSIN DD * COMMAND=(XMVS D,al)
casysviewbatchcommands to submit a job and get the job output to a dataset. Execute these commands as the next step of the step you want to capture data. //SYSIN DD * COMMAND=(JOBS OPSIPLCK) COMMAND=(SORT STDATE) COMMAND=(1,?)
caSYSVIEWcommandsif we have issue in issuing mvs commands in sysview then check the command char in profile general or query cmdchar
caSYSVIEWcommandsissue xmvs xsdata command to issue a command across all the connected systems.
caSYSVIEWcommandsLONGCMD to invoke a panel for a long commands.
caSYSVIEWgroupsIssue the command SECURITY to list the USER and COMMAND groups.
caSYSVIEWcommandsCPCLPAR, CPC LPAR Capacity Information – The CPCLPAR command provides a summary of CPC capacity for the LPAR
caSYSVIEWcommandsCPCSUM, CPC LPAR Capacity Summary – The CPCSUM command provides a summary of CPC capacity within your data center.
caSYSVIEWcommandsPARTINFO, Partition Information – The PARTINFO command displays information about the logical partitions defined in the physical hardware complex.
caSYSVIEWcommandsPRISM, Processor Resource/System Manager – The PRISM command displays PR/SM and LPAR configuration information. and memory information
caSYSVIEWcommandsBesides these screens mentioned above, there is also the RMF monitor displays : RMCAP, RMF CPC Capacity RMJOBS, RMF Job Information RMMSU, RMF CPC LPAR Detail RMPROC, RMF CPC LPAR Processor Information
caSYSVIEWcommands//SYSIN DD * COMMAND=(CTRANLOG PERIOD 1H) /* this command can be used to get the transaction log for a period of the last 1 hr.
casysviewcommandsexample to write commands spanning multiple lines in batch COMMAND=(XMVS SETPROG LPA,ADD,MODNAME=HBOSMFEX,DSNAME=SYS2.IBM.CDP.+) COMMAND=(V1R1.SHBOLPA)
caSYSVIEWccithe command SYSTEMS showup all the systems that can be accessed through that sysview login sesssion. You can select any available session and work with them directly. this is possible only when we have CCITCPGW task of CAS9 running on the system and the CCIPARM of the task needs to have the statement of all the systems that we should be able to conncet from that system. we can also use XSCONN systemname to connect to another system.
caSYSVIEWcommandsIPLINFO — has all the ieaysxx parms and the parmlib concat and other ipl related info.
caSYSVIEWcommandsIPLSTATS — to understand the steps in an IPL
caSYSVIEWcommandsSYSSYM — to list the sysbols in the system.
casysviewcommandscommand for auto refresh — UPDATE (60 refresh every 60 seconds)
caSYSVIEWcommandsSPACE — to list all the volume and the available space.
caSYSVIEWworkingSYSTEM command : If you are referring to the SYSTEMS ALL command (All is the default) after issuing the command please issue the SYSVIEW command LISTLOG. Page over to the right to the DATA portion of the display. SYSVIEW is using the XSSS Subtask of the SYSVUSER STC
casysviewreport wrterto generate reports in csv format — SYS2.SYSVIEW.R16.CNM4RSAM($CSVJCL)
casysviewcommandto select only few recrods of a column we can use SELECT TYPE eq STC and TYPE eq JOB and so on.
casysviewIMS logsWhen you issue ‘XMVS /DIS SUBSYS ALL’ from SYSVIEW on SYSF, please perform the following. 1. Issue ‘XMVS /DIS SUBSYS ALL’ 2. Issue ‘LINK LISTLOG’ 3. Issue CAPO to open a capture file 4. Issue CAPI to capture the LISTLOG 5. Issue CAPC to close the capture file. 6. Check the LISTLOG for errors when the command was issued. If any are seen, please forward me the capture file that was created. 7. Check SYSLOG for messages related to the E-MVS CONSOLE created to issue the display command. 8. Check for messages that may show errors while creating and issuing the commands in SYSLOG. 9. If you can please send 20 minutes of SYSLOG before and after the command was issued.
casysviewcommandhchecker — brings up the IBM health checker staus panel if we are running the HZPROC (Health Checker STC).
CAsysviewcommandif we have Set sdsfmigrate on … then we cannot use ? to list the availble line commands … we need to use the ?? to list the available commands.
casysviewcommandXMVS command. it would comeup like command issued in ULOG in SDSF. but the ouput is not captured in syslog.
casysviewcommandset implicitset yes —
casysviewcommanddscat dsname to list and browse or edit the dataset. dscat userid list all the userid datasets.
casysviewcommandTOPICS bring up a manual. we can use find to get to the topics.
casysviewcommandREVIEW to find all the commands issued
casysviewcommandAPFSTAT to check the status of dataset and remvoe any not found datasets.
casysviewcommandREBUILD to do a linklist update dynamically. we need to use a add/delete before the REBUILD.
casysviewcommandPARTINFO —
casysviewcommandDELAYS — to check for any delays for jobs based on cpu or device or contention
casysviewcommandset freesysdd yes — free my dataset
casysviewcommandset scrollv csr all — to set the scroll to CSR postion instead of page.
casysviewcommandprism — give many lpar related info and also has the memory and msu and other lpar related info. STORAGE command also gives us the memory usage.
ibmsysviewcommandscapture — caplist REVIEW — it lists all the previous commands. UPDATE — refresh command on any screen / UPAATE OFF — to stop the refreshing.
ibmsysviewcommandDynamic capture: CAP OPEN / CAPI desc name / CAP CLOSE plexcpl — list all the couple datasets and xcfa line command give the logstream definition. set freesysdd yes — echo to my terminal for any output.
casysviewcics interfaceIf you are an existing user of SYSVIEW 16.0 then: 1. Stop any CICS regions being monitored by SYSVIEW, or use the GSVT transaction to stop SYSVIEW for CICS within the region. 2. Start any CICS regions being monitored by SYSVIEW, or use the GSVS transaction to start SYSVIEW for CICS within the region.
casysviewIMS interface1. Perform an LLA REFRESH if the IMS Monitor Exit module GSVPDCMX is in the LINKLIST concatenation. 2. Refresh the exit by issuing the IMS type-2 command: REFRESH USEREXIT TYPE(IMSMON)
casysviewcommandUFILESYS lists all the file systems mounted on the system and their mount points
casysviewreportinghttps://docops.ca.com/ca-sysview/15-0/en/reporting/using-ca-explore-report-writer/sample-reports/mvs-sample-reports You can check the MVS Sample Reports: MVS003: Plot in horizontal format CPU utilization on 1-hour intervals. MVS004: Plot a scatter consisting of job residency on the vertical axis and job CPU on the horizontal axis. MVS005: Plot in vertical format CPU utilization on 15-minute intervals.
Time zonetime zonetime zonehttps://www.worldtimebuddy.com/
CATopsecretVer checkTSS* STC – TSS9000I
CAtopsecretdatasetb. It seems that Top Secret is not configured to collect Datasets information and I have read the manual and it states the following to issue this command: c. TSS ADDTO(AUDIT) resource(resource-name) and where resource-name can be DATASET d. If LOG(SMF) has been specified in the CA Top Secret control options, ensure that SMF record type 80 is being recorded This needs to be done as well and verified.
ibmtracetypeMaster Trace — records console traffic, such as messages, operator commands, and system responses., System Trace — is part of the operating system that records system events that occur during the initialization and running of z/OS, GTF Trace — Another trace you may find useful is the Generalized Trace Facility (GTF), which records similar information to the System Trace, but can be customized to trace only specific events and write the results to either a data set, often named SYS1.TRACE, or to a trace table (tracing of channel programs and associated data for I/O events, tracing of address space, tracing of DU of work). Component Trace — which is commonly used to gather trace data for a specific MVS component Transaction Trace — The data gathered shows the flow of work between components used to service that transaction
ibmtracecommandoff using the TRACE MT,OFF console command on using the TRACE MT console command TRACE ST — system trace on TRACE ST,OFF — sytem trace off TRACE ST,nnK (the size can also be configured as nnnM or nG, although care needs to be taken that there is sufficient storage) START GTF — start GTF trace STOp GTF — stop gtf trace TRACE CT — to start component trace. TRACE TT — to start/stop transaction traces.
ibmtrainingwebsitehttps://www.ibm.com/training/journey_description?journeyId=230
ToneTRXLicenseOn the TRX main panel select option 11 to check the no of days left for keys expiration
Tonetrxcommandstso trx add fi(xxxx) da(xxxx) — add a file to concatenation
ToneTRXcommandstso trx list fi(xxxx) — to list a dd concatenation
ToneTRXcommandstso trx drop fi(xxxx) da(xxxx) — remove a file to concatenation
TonetrxcommandsTRX LIST — lists all the allocated datasets for the logon. Similar to TSO ISRDDN. TRX LIST LONG
Tonetrxcommandsto allocate a profile for a new user. TRX ADD USER(yyy) MODEL(zzz)
Tonetrxsetupwe can define a application profile for a product and call it in our clist. You can check the option “CHANGE USER PROFILES” in the trx panels for a definition of the application. We can have like what dataset are to be concatenated, when that application is referenced.
tonetrxsetupWhen the user types TRX LIST in any ISPF command field, TRX displays all the TSO files which TRX has allocated in the session and all the datasets within those files. TRX LIST displays files allocated by any active application profile and by the user’s profile. If any of the datasets were allocated through an application profile, TRX shows the name of the profile.
ibmtsocommandsSUBMIT (stress, strain) — submits the job userid.STRESS.CNTL and userid.STRARIN.CNTL
IBMTSOprofileuse TSO PROFILE NOPREFIX command if your userid is being taken as HLQ automatically
ibmtsocommandsTSO DSPRINT — to print a dataset to JES2 or a printer.
ibmtsotsosearch order for commands — TSO ALTLIB DISPLAY
ibmtsocommandsSUBMIT (jcl(asmfclg) mydata) — JCL for the job is JCL.CNTL(ASMFCLG) and input data is MYDATA.DATA
ibmtsoprod invocationCommand to invoke panels of product if we have a module that can invoke them … currently sysview. We have the module SYSV that can invoke the panels in SYS*.**.CNM4BLOD. We can issue the command TSO CALL ‘sys*.**.CNM4BLOD(SYSV)’
ibmtsocommandsallocate ddname(xxxx) path(‘/xxx/aaa’) OCOPY INDD(xxxx) OUTDD(aaa) TEXT CONVERT(BPXFX311) TO1047
ibmtsocommandsCOMPARE SESSION (or COMPARE *) — to compare the changes we have done in the current edit session before saving.
ibmTSOTSO ISRDDNwe can use ENQ — to identify the Enqueues for the listed datasets. DUP — to check for duplicate members. M parmlibname PARMLIB — searches for the parmlib in parmlib concatenation. (First issue PARMLIB and then M parmlibname
ibmtsocommandslistalc status — similar to TSO ISRDDN — but only dislay as line item.
ibmtsodataset allocaitonhttps://webfocusinfocenter.informationbuilders.com/wfappent/TL2s/TL_lang/source/files129.htm ? tso ddname : Lists allocated files. Produces a listing on file SYSPRINT even if you issue the OFFLINE command. ? TSO DDNAME ddname : Lists file attributes. Produces a listing on file SYSPRINT even if you issue the OFFLINE command. -? TSO DDNAME ddname : Places file attribute information into Dialogue Manager variables. Attributes are returned as values for Dialogue Manager variables.
ibmtsoisrddnISRDDN command lists all the DD’s assigned to our logon. it also ha the following uses. 1. TSO ISRDDN — lists all the allocated datasets to that session. 2. the following command can be issues after issuing TSO ISRDDN 3. M xxxxx — searches all the allocated datsets from the DD list. 4. PARMLIB — shows the system parmlib concatenation for the IPL. — we can use M xxx to find a parmlib. 5. LINKLIST — lists all the datasets of LINKLIST concatenation. — we can use M xxx to find a mem. 6. ENQ — enq on the system. — ENQ (jobname/userid/STC) to check for contention. RESET to see ENQ with defaults. we can also use CON command it jsut list any ENQUEUS or displays a message NO ENQUUE exsists. 7. LPA — lists both the datasets in LPA and LINKLIST. 8. DUP — list the members that are in multiple datasets across LPA, LINKLIST and otehr DD allocations.
ibmtsslisttso tss whohas uid(0) — lists all user that has the UID(0) access authority — omvs super user.
ibmtssallocalloc dataset(zuser.test.cntl) volume(test01) unit(3390) tracks space(2,1) recfm(f) lrecl(80) dsorg(ps)
Macro4TUBESversionto identify the version of the TUBES product in TUBES STC.
Macro4Tubescommandsissue ANOTHER command on the tubes main panel to add another session.
macro4tubescommanduse the command TRANSFER when you get a message like “you are already logged on in tube main panel”
macro4tubessetupADDSESS applname [sessionnumber] [S] — command to add a session dynamically to our MENU applname — the applid of the application and it should have been defined in the TUBES config parms. sessionnumber — we can assign a session number to the newly added session or it take a no. by default. we can also define the range of session number in TUBES config using the parm DSESSRANGE. if DSESSRANGE is not specified then the default number starts from 9999, 9998, 9997 and so on. S — to invoke the added session simultaneously. Dynamically added session would be active only for that logon.
macro4tubessetupif we want to change the profile of an user. 1. issue the command QUERY LU xxxxx (xxxx is available in your applicaiton listing page on top left corner). 2. Make a note of the current PROF. 3. Check the member TUCON01 in you CONFIG DD concatenation. and look for a member that has the user definition. 4. we also need to check for a meber that has PROFILE defintions and make a note of which PROFILE the user wants. 5. Update the USERS member with the USER userid MENU menuid PROF profile auth 9 6. issue the command /f tubes,update member usermember
macro4tubesPROFILEto identify the current profile for your id issue the command QUERY LU xxxxx (xxxx is available in your applicaiton listing page on top left corner).
macro4tubescommandQQ or LOGOFF — to logoff all sessions and comeout DISCONNECT — to exit without disconnecting active sessions.
macro4tubescommandPUSH escape /> — saves the current screen image in storage for later retrieval. PULL escape /. — invokes the PUSH-PULL INDEX display CUT escape *c — invokes a CUT operation. PASTE escape *p — invokes a paset option.
macro4tubesinitializationin classic cnfiguration first member tubes TUCONxx — is the first parm that tubes looks to start the task. xx is specified in TUBES STC PARM=’CONFIG xx’
macro4tubescommandscommands to check the PROFILE that a user is running with. value t_prof.1 value t_prof.2 value t_prof.3 value t_signonpanel
ibmunixkernelThe z/OS UNIX kernel manages this processing by performing tasks such as the following: Managing I/O Scheduling work Opening files Managing shared memory The z/OS UNIX kernel is linked to WLM so that when a z/OS UNIX program runs, and requests that another program is to be executed – through a fork or spawn function, WLM uses an IBM-supplied procedure, BPXAS, to start a new address space so that the program can run.
ibmunixaccessz/OS UNIX support enables two open systems interfaces on the z/OS operating system: an application programming interface (API) and an interactive shell interface.
ibmunixtheoryThe z/OS Language Environment provides application programmers working in a z/OS environment with the guarantee of a common language development and execution environment.
ibmunixcomprisionActivity zOS unix General Programming Rexx and Clist shell scripts and REXX Editing Data ISPF ed and vi job manamgement SDSF ps, jobs, kill Running a background job submit, from tso submit, crontab programming compile, link c89, c99, c+, c++ debugging z/OS debugger dbx Data management ISPF, DFSMShsm tar, cpio, pax
LRSVPSVer checkSTC – LRS1480N, VSV0001N
ibmvtamcommandsOMVS command to check the resolver: HOST google.com
macro4vtamprintupgradeApplications that create documents in CICS interface with Columbus Z by linking to the supplied CICS report creation program, M4VACICU. M4VACICU in turn connects to M4AS which routes the documents through to the JES spool via various IBM SAPI calls. M4AS makes use of access registers for this type of cross memory communication. In z/OS 2.3, IBM introduced maintenance that affected the way these access registers are handled. Without fix ASO00059 applied, an S0E0 abend occurs.”
macro4vtamprintsetupThe VTAMPRNT has a main task M4AS(M4AS is essential for all spool access requests. It also permits user-defined job names for output created by the Print Distribution System, and the CICS to JES Facility, and minimizes the delay time before such reports are printed from the spool) . When M4AS starts it looks for a member M4VA by default as the first member to start. M4VA has statements for various options and one of them s USERS. We can specify the member name for users. VTAMPRNT also uses the same members for USERS to be able to access VTAMPRNT
macro4vtamprintsetupthe VTAMPRNT task looks for M4VA member as the first member to start the configuration in the dataset pointed by M4SPARM DD.
IBMWASwhat isWebSphere Application Server for z/OS is a comprehensive Java 2 Enterprise Edition (J2EE) and Web services application system. It is built on open standards-based technology, such as CORBA, HTML, HTTP, IIOP, and J2EE-compliant Java technology standards for servlets, JSP, and Enterprise JavaBeans (EJB). It also supports all Java APIs needed for J2EE compliance A server is the primary run-time component; this is where your application executes. The server provides containers and services enabling the execution of specific Java application components. Each server runs in its own Java Virtual Machine (JVM).
IBMWASwhat isA node is a logical grouping of server processes. They share a common configuration and operational control. A node is usually associated with a physical installation of the WebSphere Application Server. A cell is a grouping of nodes into a single administrative domain. In the base configuration, a cell contains only one node, which may have multiple servers. In the network deployment configuration, a cell can consist of multiple nodes that are administered together.
IBMWASModelsWeb Based Computing Integrated Entrerprise Computing Multithreading distributed Business Computing Service Oriented Computing
ibmwebsiteinstalllink for PSP maintenance check — http://www14.software.ibm.com/webapp/set2/psearch/search?domain=psp
ibmwebsiteinst.Ftphttps://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.4.0/com.ibm.zos.v2r4.ieav100/pduuex13.htm
ibmwebsitehardwarehttps://www.ibm.com/it-infrastructure/resources/tools/z-mainframe-product-comparison/ — hardware comparision.
ibmwebsiteupgradeinformation on upgrading IBM products https://www.ibm.com/support/pages/upgrading-information-cics-when-changing-releases-cics-zos-db2-or-ims
ibmwebsitezosgithub link for most of zos work. https://github.com/IBM/IBM-Z-zOS
ibmwebsitecompatibilityhttps://www.ibm.com/software/reports/compatibility/clarity/index.html
ibmwebsitecodesethttps://www.aivosto.com/articles/charsets-codepages.html
ibmwlmconceptsetting performance goals for work, and letting the workload manager handle processing to meet the goals. WLM manages the system resources that are available and can only meet performance objectives if the necessary resources are available. With workload management, you define performance goals and assign a business importance to each goal. You define the goals for work in business terms, and the system decides how much resource, such as CPU and storage, should be given to the work to meet its goal.
ibmwlmconceptThis explicit definition of workloads and performance goals is called a service definition. Performance management is the process workload management uses to decide how to match resources to work according to performance goals You can turn over management of batch initiators to workload management, allowing workload management to dynamically manage the number of batch initiators for one or more job classes to meet the performance goals of the work.
ibmwlmconceptOne service definition for sysplex has multiple service policies to specify the goals of work but only one is active at a time.A service policy is a named set of overrides to the performance goals and processing capacity boundaries in the service definition has multiple service classes :divided into multiple time periods and group that has common performance goals each. Workloads , which aggregate a set of service classes for reporting purposes. Within a workload, you group work with similar performance characteristics into service classes. You create a service class for a group of work that has similar: Performance goals : Response time / Execution velocity / Discretionary goals : and how importnant (Importance comes into picture when the goals are not being met in the system, then wlm looks at importance and assign resource to the workload that has highest importance. (Lowest,low,meduim,high,highest). Resource requirements : Periods are a way of defining different goals for work depending on the amount of resources the work consumes. Duration is the amount of resources (including all processor types), in service units, that the work consumes before it is switched to the goals of the next period. Business importance to the installation Resource groups , which define processor capacity boundaries within a system or across a sysplex. You can assign a minimum and maximum amount of CPU service units on general purpose processors, per second, to work by assigning a service class to a resource group. Classification rules , which determine how to assign incoming work to a service class and report class or tenant report class. Scheduling environments , which are lists of resource names along with their required states. If a z/OS® image satisfies all of the requirements in a scheduling environment, then units of work associated with that scheduling environment can be assigned to that z/OS image.
ibmwlmconceptWLM can have upto 100 different service classes. Dispatching is a number between 0 and 255 Service classes can have from one to eight performance periods. I/O priority group can optionally be used to prioritize access to I/O A service class is defined by the z/OS administrator, and can have any name up to 32 characters. Each service class can have up to eight performance periods. Each performance period specifies an importance; this could be blank for discretionary work, and goal; discretionary, velocity, or response time. There can be many classification rules specifying one service class. Classification rules can specify the names of patterns of many different workload characteristics, including address space name, transaction name, and userid. Storage critical is specified in classification rules, the I/O priority group is specified in the service class definition. The importance level and goal are specified for each performance period. A period with a velocity goal could have any importance level from 1 (very important) to 5 (not important)
ibmwlmconceptUnder workload management, various subsystems including SRM cooperate with the z/OS workload manager component (WLM). The workload manager allows you to assign tasks to different service classes. Each service class is a grouping of performance goals and other factors that define requirements for similar types of work. You can assign any of the following three types of performance goals to each service class: Response time goals, which detail the amount of time required to complete the work under that service class, and the percentage of work under that service class that completes within that time Execution velocity goals, which detail the amount of acceptable delay that work within that service class, should encounter Discretionary goals, which are used for work not assigned a specific performance goal
ibmwlmconceptThe use of the Performance Index (PI) allows operations and performance personnel to easily manage the system. Any task or service class with a PI greater than 1 is not meeting its goal. WLM captures the state of all work units several times per second, and after a defined number of seconds it combines this with other data such as CPU service and transaction end times to perform policy readjustment. The service class (SC) describes a group of work within a workload with similar performance characteristics. A service class is associated to only one workload, and it can consist of one or more periods. A PI is numeric and expressed as follows: • PI = 1 means that the SC period is exactly meeting its goal. • PI > 1 means that the SC period is missing its goal. • PI < 1 means that the SC period is beating its goal. 2 types of PI sysplex PI and LOCAL PI.
IBMsysplexARMto display the restart groups /D XCF,ARM,DETAIL
ibmzawaretheoryManaging the products that are used in your organization: – Handling the increases in the variety of messages being issued, and the rate at which they are issued – Determining which messages are important – Managing changes to messages – Identifying new messages and determining whether they are important in your environment _ Determining whether a system is configured appropriately: – Checking configuration settings against industry preferred practices values or organization-selected values _ Determining the operating state of your systems: – Identifying when the system might be misbehaving – Capturing abnormalities in system behavior or configuration, preferably before they become visible as a service interruption IBM zAware can warn you about changes in messages on your system before the reason for the difference escalates into a problem.
ibmzcxzcxz/OS Container Extensions (zCX) is among these new technologies. zCX brings a new Linux capability inside of z/OS. This capability is distinct from UNIX System Services, in that a complete Linux on Z OS is part of z/OS. It runs in a started task just like any other started task. It contains both a full Linux system and Docker, a portable software packaging and execution environment
ibmzCXzCXzCx — zOS container extensions available from z/OS V2.4 and z14 machine. Comes as a base product. docker images on zOS. the interface for the containers is through standard DOCKER CLI. it is a package of ( LINUX KERNEL + LINUX DOCKER ENGINE + STANDARD DOCKER CLI ) is provided by IBM for zCX zcx has linux containers (can run MandoDB, Inginx, Kafka binary images and run as linux container). The package and container run in a STC on zOS. it has a z/OS Linux virtualizaiton layer. All the work load is zIIP elgible. The containers interact with the TCP/ip stack running in zOS to connect with standard zOS application like (CICS, MQ, DB2,IMS). linux storage/disk access (via zos owned and managed vsam datasets). user hyperswap (realtime switch to seconday vsam datasets). This helps to have Systems or Record and Systems of Engagement on the same zOS image.
ibmzedctheoryzEDC Express software feature enabled in an IFAPRDxx parmlib member. d IQP — to chekc the status of zEDC.
ibmzedctheoryFor HSM as you might already be aware that you have to do the following: The change to DF/HSM Parmlib Member: ARCCMDxx or perform a dynamic change: To test zEDC when backing up to DASD, issue the following modify DFSMShsm command: F hsm,SETSYS ZCOMPRESS(DASDBACKUP(YES)) 2. To test zEDC when migrating to DASD, issue the following modify DFSMShsm command: F hsm,SETSYS ZCOMPRESS(DASDMIGRATE(YES)) 3. For validation of these functions, backup or migrate a volume without using zEDC compression to have this uncompressed backed up volume or migrated volume available to compare to the results of the same volume that was backed up or migrated with zEDC compression. Once testing is completed and you are ready to implement zEDC compression permanently, the following SETSYS commands should be added to the ARCCMDxx parmlib member: SETSYS ZCOMPRESS(DASDBACKUP(YES)) SETSYS ZCOMPRESS(DASDMIGRATE(YES)) Or to utilize zEDC for all functions: SETSYS ZCOMPRESS(ALL)
ibmzedctheory• One of the requirements to enable zEDC zLIB is to create a Security Profile for zEnterprise Hardware Compression Facility and this is done by creating the RACF Profile in FACILITY Class:
ibmzedcimplementation – 1To Implement the zEDC Feature, you require the following: Update SYS1.PARMLIB(IFAPRDxx) and where xx is the system prefixes and for SYST System, it would be ‘0T’. Update the following SYS1.PARMLIB(IFAPRD0T) with the following changes: PRODUCT OWNER(‘IBM CORP’) NAME(‘z/OS’) ID(5650-ZOS) VERSION RELEASE MOD FEATURENAME(zEDC) STATE(ENABLED) Create the following member in SYS1.PARMLIB or the PARMLIB that is designated for the system. Member: IQPPRMxx and where for SYST, it would be IQPPRM0T Here’s the contents of the member IQPPRM0T: ZEDC, MAXSEGMENTS=4, DEFMINREQSIZE=4, INFMINREQSIZE=16
ibmzedcimplementation – 2Here’s the Manual which describes the definitions of above: [IQPPRMxx Definitionshttps://www.ibm.com/docs/en/zos/2.1.0?topic=parameters-statementsparameters-iqpprmxx Once the above all changes are completed then request for System IPL. After the system IPL, you can confirm by invoking the following command: /D IQP and it would display the following: D IQP IQP066I 11.57.49 DISPLAY IQP 771 zEDC Information DEFMINREQSIZE: 1K (STATIC) INFMINREQSIZE: 1K (STATIC) Feature Enablement: Enabled
ibmzedcimplementation – 3The last change is to DF/HSM Parmlib Member: ARCCMDxx or perform a dynamic change: To test zEDC when backing up to DASD, issue the following modify DFSMShsm command: F hsm,SETSYS ZCOMPRESS(DASDBACKUP(YES)) 2. To test zEDC when migrating to DASD, issue the following modify DFSMShsm command: F hsm,SETSYS ZCOMPRESS(DASDMIGRATE(YES)) 3. For validation of these functions, backup or migrate a volume without using zEDC compression to have this ncompressed backed up volume or migrated volume available to compare to the results of the same volume that was backed up or migrated with zEDC compression. Once testing is completed and you are ready to implement zEDC compression permanently, the following SETSYS commands should be added to the ARCCMDxx parmlib member: SETSYS ZCOMPRESS(DASDBACKUP(YES)) SETSYS ZCOMPRESS(DASDMIGRATE(YES)) Or to utilize zEDC for all functions: SETSYS ZCOMPRESS(ALL) One other option to be Explored is IGDSMSxx and add the following Statement: COMPRESS(ZEDC_P)
ibmzfsjclwhile creating the zFS dataset in the JCL in the second step using the IOEGAFMT have the aggregate parm in smaller case as below. //CREATE EXEC PGM=IOEAGFMT,REGION=0M, // PARM=(’-aggregate OMVS.PRV.COMPAT.AGGR001’
IBMzOSIPLTo find the start of IPL messages in SYSLOG look for IEA371I.
ibmzosupgradeIBM has decided to replace the HTTP Server powered by Domino with the HTTP Server powered by Apache, so before we upgrade SYSR to z/OS 2.3, IBM recommended us to migrate the current HTTP server powered by Domino on SYSR (z/OS 2.1) to one powered by Apache first (this is an older version than the one on z/OS 2.3), and suggested that this would simplify the migration of z/OS to 2.3
ibmzossearch orderSearch Order when we issue the /START xxxx — command. Search Order for a /START xxxx command. When the system has to process the start of a task, It checks for the member in IEFJOBS DD of MSTJCLxx. If a member is found in IEFJOBS DD concat, the system examines the first record for a valid JOB statement and, if one exists, uses the member as the JCL source for the started task. It fails execution saying NO VALID JOBCARD if no valid JOB card in its first record. If there is no member by that name in the IEFJOBS concat., or if the IEFJOBS concat. does not exist, the system searches the IEFPDSI DD for the member. If the member is found in IEFPDSI and no jobcard then system assumes that the source JCL is a procedure and creates JCL with jobcard (default for stc). or runs it with the jobcard found in member. The system does not look for a procedure in IEFJOBS DD concat. that is called using the EXEC PROC statement in the jcl. it checks in IEFPDSI concat. if no member xxxx is found in IEFJOBS and IEFPDSI DD of MSTJCLxx then the system moves to JES2 proclib search order. JES2 proc has PROC00/01/02 and so on DD stat. defined either in the JES2 JCL or JES2PARM. the system searches for xxxx in the PROCyy concat. as specified in the JOBCLASS definition for STC. you can check it by issuing the command /$D JOBCLASS(STC),PROCLIB.Jes2 does not allow for a jobcard in the procs started by jES2.
ibmzoslink pack areawe have 3 LPA – PLPA/LPA(LPALSTxx), MLPA(IEALPAxx), FLPA/FIX(IEAFIXxx) In IEASYSxx we have FIX (IEAFIXxx), LPA(LPALSTxx), MLPA(IEALPAxx) LPA, which is searched in this order: a. Dynamic LPA modules, as specified in PROGxx members b. Fixed LPA (FLPA) modules, as specified in IEAFIXxx members c. Modified LPA (MLPA) modules, as specified in IEALPAxx members d. Pageable LPA (PLPA) modules, loaded from libraries specified in LPALSTxx or PROGxxs
ibmzossearch orderlpa search order LPA, which is searched in this order: Dynamic LPA modules, as specified in PROGxx members Fixed LPA (FLPA) modules, as specified in IEAFIXxx members Modified LPA (MLPA) modules, as specified in IEALPAxx members Pageable LPA (PLPA) modules, loaded from libraries specified in LPALSTxx or PROGxx
ibmzosutilityamblist //STEP1 EXEC PGM=AMBLIST //SYSLIB DD DISP=SHR,DSN=SYS1.LINKLIB //LOADLIB DD DISP=SHR,DSN=LCLM4.TUBES.LOCAL.BE.LOADLIB //SYSPRINT DD SYSOUT=P //SYSIN DD * LISTLOAD OUTPUT=MODLIST,DDN=LOADLIB,MEMBER=M4TUBE21 TITLE=(‘OLOAD MODULE LISTING FOR MYJOB’,20) /*
ibmzosvsamuse the command print ch ids(/) all next to a vsam file to print its contents in ISPF.
ibmzosparmlibTSO PARMLIB — lists all the entries in IKJTSOxx parmlib. it has the list of authcmd and authpgm
ibmzosparmlibD PPT,all — lists all the entries and options in the SCHEDxx member
IBMzOSVer checkWHO command in SDSF.
ibmzOStime zone varibaleOMVS – TZ, MVS – CLOCKxx, CEEPRMxx (LE env. variables).
ibmzosinstallatontypes : Serverpac — : installed through custom pac installation daialogue :all licensed product or one product can be done too. CBPDO — only smp/e installable prducts. no dialog help. need to do through smp/e jcls. systempac — pre installed zos/susbsystems/product based on our answers to questions and are sent a dumped volumes.
ibmzOSzAAPzAAP are generarlly used for JAVA executions but with z14 these are disabled and the work load is now handled by zIIP itself.
ibmzoslogstreamdisply all the logstream /d logger,logstream
ibmzosgdgTraditionally, when defining a new generation data group, the LIMIT parameter allowed you to specify up to 255 generation data sets to be associated with the GDG. With z/OS 2.2, a new EXTENDED parameter allows you to extend this number to a maximum of 999
ibmzosmainframe“mainframe” refers to the main cabinet where frames of these cores served as the memory for the central processing unit (CPU) that was housed with them. And “core memory” likewise hearkens back to this—as do “core dumps” when you get to see the contents of memory displayed over reams of paper or the virtual equivalent.
ibmzosmemoryhttps://community.ibm.com/community/user/ibmz-and-linuxone/blogs/destination-z1/2019/12/23/a-brief-history-of-mainframe-memory-technology
ibmzoscommandsue the /CMDS commands to display the commands that are waiting.When a command flooding happens we can check the wating command list using this command.
ibmzoscpu capcity/* REXX */ rct = c2d(storage(d2x(c2d(storage(d2x(c2d(storage(10, 4))+604), , 4))+228), 4)) say ‘CEC MSU capacity=’c2d(storage(d2x(rct+32), 4))’;’ , ‘defined LPAR MSU capacity=’c2d(storage(d2x(rct+28), 4))
ibmzosmemoryD M=STOR — displays the real storage available for the lpar.
ibmzosutilityto list the directory information of members in a pds //STEP1 EXEC PGM=IEHLIST //SYSPRINT DD SYSOUT=* //DD1 DD VOL=SER=TCH305,DISP=SHR,UNIT=SYSALLDA //SYSIN DD * LISTPDS DSNAME=SYS2.VANTAGE.CONF.SYSTSCR,VOL=SYSALLDA=TCH305 /*
ibmzosutilityto take a backup of a pds with similar attributes. //STEP1 EXEC PGM=IEBCOPY //SYSUT1 DD DISP=SHR,DSN=SYS1.PARMLIB //SYSUT2 DD DISP=(NEW,CATLG,DELETE),DSN=SYS1.PARMLIB.D090720, // LIKE=SYS1.PARMLIB,VOL=SER=TCH980 //SYSPRINT DD SYSOUT=*
ibmzossearch orderModule Search Order: 1. Program Management first searches for the module in the Job Pack Area (JPA). The JPA is in the private address space of the user that requested the load module. 2. If the module is not in the JPA, Program Management then initiates a directory search against the JOB/STEP/TASK libraries to find the location of the module. 3. If Program Management does not find the module in the JOB/STEP/TASK libraries, it searches the Link Pack Area (LPA). The LPA resides in both the common service area CSA) and the extended CSA (ECSA). 4. Finally, if the module is not in the LPA, Program Management issues a directory search against the LNKLST libraries to find the location of the module.
ibmzosiefusi exitAs you must have heard our IEFUSI Exit discussions in our Daily Meetings, I would like to move forward in Implementing the Changes by Disabling/Removing the IEFUSI Exit from the Linklist Libraries. IEFUSI Exit Description:  IEFUSI is an exit to limit region sizes (128MB) , every now and then there is a need to increase these limits when newer applications need larger virtual storage to run. I guess the potential impact of disabling IEFUSI is a small chance of having a runaway task which may allocate too much virtual storage and cause page data sets usage or paging rates to increase beyond acceptable values.  The IEFUSI Exit was designed more than 20Years ago and when our Processors were designed to have limited Central Storage and thus we could not afford to have huge address spaces. With the Technology and our Processors Configuration, currently majority of our Processors are configured with more than 10GB versus 1GB 20Yrs ago and thus now we have to allow our Environment to operate with more than 1GB. Note: The (IBM Sample Exit) IEFUSI Limits the address space at 128MB only and which seems very little and here’s the Impacts of disabling the exit: IMPACTS: -If an Runaway task occurs then there is a possibility of an Exhausted Paging Storage and can initiate Paging Shortage messages in the SYSLOG. -From my understanding and from my observation, there are enough Paging Datasets exists in each system -I will check the Paging Datasets before Implementing the following changes This change will be implemented in STEPS through Test Systems and then subsequently on the Production Systems. PROCESS: – Disable Exit IEFUSI through SMFPRMxx Member of PARMLIB
ibmzosstart taskto start a job/procedure in a name desired by us. /s xxxx,jobname=yyyy — xxxx — qualified job or procedure name that you want to run. YYYY is the new name under which the xxxx proc or job would run instead of taking the name from the JOB statement or proc statement.
ibmzosutilityAs a z/OS Systems Programmer of many years, one of my favourite utilities is AMBLIST. If I’m debugging an S0C4 Protection Exception or S0C7 Data Exception and the PSW address points someway down the Load Module, then running AMBLIST, I can list the Load module and its CSECT structure and find which subroutine is indicated by the PSW as having failed. If I want to check if a program is defined as Authorized and/or Reentrant, then AMBLIST will dissect the module and give me these details. If I want to know what PTF last hit a System Module, then AMBLIST will give this to me (Yes I know SMPE can also list this information), but sometimes IBM Level 2 will want to see the dump of the module and so I can just FTP this straight over. or email it as an attachment. On a wider scale it can map all modules in the Link Pack Area (LPA). //AMBLIST EXEC PGM=AMBLIST,REGION=16M //SYSPRINT DD SYSOUT=* //SYSLIB DD DSN=Loadlib,DISP=SHR //SYSIN DD * LISTLOAD MEMBER=loadmodulename, [OUTPUT={MODLIST|XREF|BOTH|MAP}] LISTLOAD, LISTIDR, LISTLPA, LISTOBJ //
ibmzosslipSLIP MOD,DISABLE,ID=X33E — to disable a slip trap
ibmzoslinlistYou should not make any changes to libraries that are part on an active/in-use lnklst concatentaion. UNALLOCATE does not stop the active concatenation from being accessed/used.The ‘SETPROG LNKLST,UNALLOCATE’ command merely releases the XCFAS enqueue placed on the datasets in the concatenation. The concatenation remains in effect and continues to be used by the system. Originally, there was never an enqueue placed on the linklist concatenation. This led to the possibility of the actively used datasets being altered/removed from the system by other systems sharing the devices. To help prevent this, the XCFAS enqueue was added. One problem with this enqueue is that it prevents other systems in the sysplex from altering like named datasets on their system that are not part of their linklist concatenation. So to allow for this activity, the UNALLOCATE parameter was provided to release the enqueue, not the datasets, allowing you the ability to alter like named datasets that are not part of the linklist concatenation in the sysplex.
ibmzospdseThe abend213-30 means: An attempt was made to open a partitioned data set (PDS) for OUTPUT,DISP=SHR. The PDS is already open in this condition, and a DCB is already open for output to the data set. The data set might be on the same system or on another system that is sharing the volume. Access was not serialized before the attempt to open the data set. For this type of activity we recommend clients use PDSE, as this is not possible with PDS. With this Extended sharing, it provides the ability for users on different MVS systems in a sysplex to create, read, or update members of a PDSE concurrently. Any number of users or systems can concurrently share a PDSE or members in it for input (read) or output (write). Multiple members can be updated by different users on the same system, but only one user can update a member in place at a given time. In addition, only one system can access the PDSE when update in place is being done.
ibmzoshistory1964 — System/360 — OS/360 1970 — system/370 — MVS, MVS/XA, MVS/ESA 1990 — System/390 — MVS/ESA,OS/390 2000 — zSeries — z/OS
ibmzosprocessorType of processor: CP, SAP (ystem assist processor for I/O), IFL, zAAP(java), zIIP(db2), ICF, spares, capacity on demand. CUoD – Capacity Upgrade on Demand (permanent) On/off CoD – temporary capacity CBU – capacity backup upgrade – generally used for DR – reserved emergency backup capacity for all processor configurations.
ibmzosspoolSimultaneous Peripheral Operations OnLine (SPOOL) — helped to relieve the multiprogramming constraints that were caused by the need for card readers and printers. When the program tries to write to a printer, the supervisor recognizes that the request is for a spooled device. It passes the request to JES, which diverts the output record to a spool data set. Status information is passed first to JES in case adjustment is required before being delivered to the program. A similar technique is used when a program tries to read or write cards. After program listings have been written to spool, JES can direct them to printers automatically.
ibmzOSaddress spaceA map of storage made availale for both applicaitons and users. the range of address is upto 2^64 The memory frames (4K pages) are called real storage and the disk slots(4K pages) are called auxiliary storage. The quantity of virtual storage and the mechanisms needed to support it are called an address space.
ibmzosutilityStand alone utility : ICKDF, ADRDSSU, SADMP Commonly used dataset utilities : iebcopy, iebgenr, dfsort, idcams
ibmzosconsoleconsole commands: D C,K — list all teh options for console messge flow. (K is shot form for CONTROL command). K S — list the current configuration for console message flow. K S,DEL=RD,SEG=20,CON=N,RNUM=20,RTME=001,MFORM=(J) — (CON — delete message with/without confirmation). RNUM,RTME — specify the no. of lines to scroll and the time for each scroll). DEL=RD — rolling mode, DEL=N — no rolling to happen. D C,U=0040 D C,U=/0040 — to list detials of console on unit address 0040 in the display of D C, D C,cn=xx — AUTH=(ALL) indicates that any INFO, SYS, IO, or CONS — ROUT=(ALL) indicates that routing codes 1 to 128 are assigned to this console
ibmzosconsoleIn any single MVS system, the maximum number of consoles that can be defined is 250, and of these you can have up to 99 concurrently active. In a sysplex, this 99 console limit is multiplied by the number of systems.
ibmzosconsoleMCS — Multiple console support SMCS — SNA/VTAM Multiple console support HMCS — Hardware Management console multiple console support EMCS — Extended Multiple console support.
ibmzoscommandd j,l,user=xxxx — to display the tasks owned by user xxxx.
ibmzoscommandd u,dasd,onlin. A (allocated) BSY (busy) BOX (hardware error) F (offline) NRD (not ready) O (online) SPD (channel program is temporarily suspended while the system is using it)
ibmzoscommandd M=DEV(03AD) — devive id. d m=chp(65) — channel path. D M=DEV((device,(chp)),ROUTE=BOTH,HEALTH — to check the error in the channe path devices. D M=CONFIG(xx) — compares the contents of current status of the system, including processors, storage, channels, and devices with the contents of a CONFIGxx logical parmlib membe
ibmzosmpf – Message processing facilityMVS messages have routing codes and message levels that determine how messages are routed throughout the environment. For MCS, SMCS, and extended MCS consoles, you can specify which routing codes a console can accept, allowing messages to be sent to the relevant person. After a message passes through the MPF, subsystems like JES2 or NetView can receive the message for processing. After subsystem processing occurs, the message passes to the SYSLOG/hardcopy log If a .DEFAULT entry has been coded in the MPFLSTxx member, then all message IDs that appear below it will take those defaults instead of the system defaults. T MPF=xx — to change the MPF settings. T MPF=NO — no MPF filtering to happen. z/OS Message Flood Automation can be used to react to message flooding before buffers fill and console queues begin to build.
ibmzosmpf – Message processing facilityAUTO – Is the message eligible for automation processing? SUP – Is the message to be suppressed? RETAIN – Is the message to be retained by the Action Message Retention Facility (AMRF) and be viewable with the D R,L command? AUTO(NO),SUP(YES),RETAIN(YES) are the IBM supplied default parameters that can be overridden with a .DEFAULT entry. The .NO_ENTRY entry provides the parameters to be used in handling any message that does not have a matching entry coded elsewhere in the MPF list.
ibmzosmpf – Message processing facilityMessage Flood Automation handles three types of messages with each type containing its own set of attributes in relation to the allowable amount of messages encountered during a specific time. These message types are: SPECIFIC messages, which are messages identified by your organization ACTION messages, which are those relating to system failures and messages requiring an immediate or eventual action REGULAR messages, which are those that do not meet the categories above MSGFLDxx PARMLIB — is for Flood automation filteration. is specified in the CONSOLxx member. D MF,STATUS — to display the message flooding status. Message flood automation can identify where messages have been issued from. The message type will be placed in intensive mode.
ibmzossupervisorsupervisor : Part of an operating system that is responsible for loading, dispatching, and supporting (with I/O, storage management, etc.) problem programs. SVC : The mnemonic for the supervisor call machine instruction. The supervisor turns the problem state bit on when it gives control to a problem program. A problem program cannot turn it off in PSW.(BIT 15 (P))
ibmzoszarchInterrupton allows the sytem to stop executing the currnet program and pass control and bring in other pgm to be executed. There are six different kinds of interruptions: Different routines handles each of these interruptions. SVC : Pgms issues SVC calls for I/O to happen on its behalf. I/O : Occurs when the SVC call’s I/O is completed and the Channel Subssytem causes the interruption. External : External interruptions can be caused by the interrupt key on the console, by another processor, or by a timer. Timers are used by operating systems to ensure that problem programs do not run too long and the CPU can be shared. Program : Program interruptions are usually caused by page faults or program errors. when trying to access a page that is not in real storage a page fault occurs and the supervisor must arrange for the required page to be brought in from auxiliary storage. also when a pgm trie to treate char as string during some calc. Restart : The restart interruption is caused by a PSW restart being invoked from the HMC, or by a restart signal from another processor. Machine-Check : The sixth and final interruption type is the machine-check interruption. A machine-check interruption is triggered when the processor recognizes that a hardware error has occurred within its own circuitry.
ibmzosmemoryDAT uses the tables built by the supervisor to translate virtual addresses into real addresses.
ibmzosaddress space———————————————————————– 16 EB High User Region ———————————————————————– 512 TB Default Shared Memory Addressing ———————————————————————– 2 TB Low User REgion ———————————————————————– 4 GB RESERVER ———————————————————————– 2 GB BAR P – Extended LSQA/SWA/Subpools 229/230/249 P – Extended User region — 31 bit user pgm are loaded here C – Extended CSA C – Extended PLPA/FLPA/MLPA C – Extended Sqa C – Extended Nucleus — operating system control programs. read only common storage. ———————————————————————– 16 MB LIne C – Nuclues — operating system control programs. C – SQA — system tables critical for the entire system. — if full can use space from CSA. C – PLPA/FLPA/MLPA — zOS operating system modules. C – CSA — Common Service area — used for inter address space communication. P – LSQA/SWA/subpools 229/230/249 — Local system queue area / Schedule work area. P – User region — 24bit addressing user pgm are loaded here P – system region — used for system functions to perform work for the address space. 16K in size. C – PSA — contains critical info. about both the zos and the processor. (PSW, 6 interruptions, storage areas and control blocks.
ibmzosaddress spaceThe Local System Queue Area (LSQA) contains tables and queues that are associated with the particular address space, such as information on the location of its pages. The Scheduler Work Area (SWA) contains data which exists from job start to job end. It contains the control blocks and tables derived from the JCL statements that make up a job. Subpools 229, 230, and 249 are groups of logically related storage blocks with their own storage characteristics. These different storage types are referenced by various authorized programs.
ibmzoshardware issuesMachine check handler(MCH) — when an Machine check interruption occurs MCH will collect all the details and write to the LOGREC. Alternate CPU Recovery (ACR) component gives multiprocessing systems the ability to recover from failures on a processor by recovering the error on another operational processor. Subchannel Logout Handler (SLH) does not perform any recovery function. It simply logs channel detected error conditions as records in the logrec data set. It then allows device dependent error recovery procedures to retry the failed I/O. Channel Control / Interface control / channel Data / Address limit / Measurement Check Dynamic Device Reconfiguration (DDR) helps circumvent I/O errors on devices by supplying an alternate I/O device (demountable only) to process the data in case a hardware device fails. The Missing Interrupt Handler (MIH) continuously checks to see if expected I/O interruptions have occurred within a specified time.If this time limit is exceeded the system considers that the interrupt is missing and will issue a message to the operator and place a record on the logrec data set. The Recovery Termination Manager (RTM) handles all abnormal termination of tasks and address spaces. It then passes control to specific recovery routines which are associated with the terminating functions. Also produces diagnostic data in dumps and in the logrec dataset.
ibmzoshardware issuesDynamic Device Reconfiguration supplies an alternate I/O device in case of hardware failure. Missing Interruption Handler continuously checks whether expected I/O interruptions have occurred within a specified time. Recovery Termination Manager handles all abnormal termination of tasks and address spaces. Machine-Check Handler is given control if a machine malfunction impacts on the system. Alternate CPU Recovery gives multiprocessing systems the ability to recover from failures on a processor by recovering the error on another operational processor. The Subchannel Logout Handler logs channel detected errors as records in the SYS1.LOGREC data set.
ibmzosparmlibIECIOSxx — parmlib has details around hardware interruption time lines.
ibmzoswait stateWaits and hangs are terms used to describe the situation when the operating system or something running within it stops processing. The system can enter one of the following states: Disabled Wait Enabled Wait A hang of a subsystem, address space or job. A PSW beginning with 0002 (000A in ESA/390 mode) indicates a disabled wait. A PSW containing 0706 (070E in ESA/390 mode) at the beginning with zeroes in the remaining digits indicates an enabled wait.
ibmzosWait stateAn enabled wait is caused by the system waiting for: Work; it really does have nothing to do, although this is unlikely. The system is waiting for an operator reply or action. A system resource; which could be an I/O device, a page in storage, a queue, or a software lock on the resource. A system resource; this could be an I/O device, a page in storage, or a software lock on the resource. Check for : Mount pending requests/ out standing messages — issue D R,L Contention for a system resources — issue D GRS,C all active jobs in swapped out status — check in DA panel Use the D U commands to check for devices in BSY, MTP or NRD status.
ibmzosHZRRuntime diagnostics task: This is a base component of zOS. It can be started using the command /Start HZR,SUB=MSTR Runtime Diagnostics browses the OPERLOG (this is a logstream) for any critical messages and if found, lists them as an identified event. The F HZR,ANALYZE command is used to start Runtime Diagnostic interrogation. F HZR,ANALYZE to do the diagnostics and provide a report on the system where the command is issued. F HZR,ANALYZE,SYSNAME=system name – searches for critical messages in the OPERLOG and looking for enqueues for the system. The system has to be in the same plex where the command is entered. F HZR,ANALYZE,DEBUG=HIGHCPU — to get more information about the HIGHCPU usage jobs. Runtime Diagnostic processing will usually run for under minute, gathering and analyzing information. The Runtime Diagnostics start command can be modified to instruct this process to run on another system. /p hzr — to stop run time diagnostics
ibmzoscommand ForceFORCE Jobname — Jobs, stc and appc programs. FORCE jobname,TCB=address,RETRY=YES(with caution) — Jobs, stc and APPC programs. FORCE U=tsouserid — TSO users. FORCE identifier — Mount commands, external writers, output processing for a job and zOS unix process.
ibmzoscommand DISPALY JOBThe D A,xxxxx, D J,xxxxx, and D JOBS,xxxxx commands will all display output showing the value of CT (CPU time). If this command is entered often then you can determine whether job activity is occurring.
ibmzoscommand VARYVARY COMMMAND: V 282,UNAVAILABLE — to ensure that allocation of the device 282 is not done. this is done after we vary 282 offline to avoid any waiting issues. V PATH(ddd,pp),OFFLINE — to vary a ddd — device and pp — channel path (CHPID) offline. use the command DS P,ddd to get the CHPID for the device. V CU(xxxx,pp) — vary a control unit and the path offline. use the command D M=CU(XXXX) — to check the CHPID attached to the control unit.
ibmzoscommand AUTORAuto Reply for WTORS: — IBM provides a facility reply to know WTORS automatically if not replied in sepcified time. D AUTOR,POLICY — display the active auto replies defined in member AUTORxx as specified in IEASYSxx D AUTOR,WTORS — currently being tracked WTORS by auto reply funciton. SETAUTOR OFF — stops auto replying to the WTORS. SETAUTOR IGNORE,RID=reply id SET AUTOR=(xx,x).
ibmzoscommand ClassificationCOMMAND CLASSIFICATION: Class M1, M2, and M3 commands — A maximum of 50 commands within each class are allowed to execute concurrently that run in MASTER SCHEDULER Address space or CONSOLE address space. Class C1, C2, and C3 commands Inline commands CMDS — As well as displaying executing and waiting commands, the CMDS command can be used to delete commands that are waiting for execution, or to cancel commands that are executing.
ibmzoscommand CMDSCMDS DISPLAY CMDS DISPLAY,CLASS=xx — display the current running command list/no of commands in class XX CMDS SHOW — shows which job/task are the waiting commands issues. CMDS SHOW,CLASS=xx CMDS REMOVE,CMD=command name,job=jobname,class=class,id=number — cna be seen from the SHOW command. CMDS ABEND,CMD=DUMP,ID=712. — extreme caution with the use of this command because the system could be left “in an inconsistent state”. CMDS FORCE,CMD=xxx,ID=xx — only if abend fails. CMDS DUMP
IBMZOSCOMMAND DASD/TAPEG XXXX,YYYY — SWAP TAPE DRIVE XXXX TO YYYY
IBMZOSCOMMAND consoleD PFK — TO SHOW THE PF KEYS ASSIGNED TO IN THE CONSOLE. K — to clear the screen V CN(xxxx),online/offline — to vary a console xxxx online or offline.
ibmzoscommand USERto dispaly the address space id of user — D TS,ALL to cancel a user who is struck during logon — C u=*logon*,a=xx (xx — address space id from D ts,all)
ibmzoscommand CHIP/CONTROL UNIT/CPUCF CHP(xx),ONLINE — to configure a channel path to be online CF CPU(xx),online — to confugure a cpu xx to be online. CF CHP(XX),ON,NOVARY — will bring the channel path 00 online but not the paths attached to the channel.
ibmzoscommand shutdownF xxxx,CEMT P SHUT — to shutdown a CICS region. z NET — to shutdown VTAM $P jES2 — to shutdown JES2 $P JES2,TERM — terminate JES2 but not terminate active programs and devices.
ibmzoscommand IPLto create the link pack area — R 00,CLPA — clears the memory and rebuilds it. S JES2 *01 $HASP426 speify options – jES2 z/os 2.3 ssname=jes2 R 01,warm,noreq — this is how we can respond to $HASP426
ibmzoshiper disptachHIPERDISPACH YES/NO is mentioned in IEAOPTxx
ibmzosIPL-3 address spaceSo we know that the CSA/ECSA both spill down (24bit) and up (31bit) to the next megabyte boundary. So why does it do this? The answer is because of the Segment Table. When an Address Space is created it is copied from the MASTER in order to ensure that this new Address Space has the common areas (SQA/ESQA, PLPA/EPLPA, CSA/ECSA) in the same location. In addition a Segment Table is also created which is divided up into 1meg chunks. This Segment Table is 2gig is size. Whenever a Virtual Address is reference from the Program Status Word (PSW), the Real Address is located by using the Segment Table as an index to locate the entry in the Page Frame Table and this locates the Real Address. This is handled by the Real Storage Manager. This Page/Frame of Real Storage can be either in Storage or potentially paged out to the Local Page Dataset. This conversion process is called Dynamic Address Translation or DAT processing. DAT processing occurs on this Virtual Address providing Bit 5 in the PSW is turned on to allow for it. The current Segment Table is located due to Control Register 1 pointing to it. In part 4 of this discussion I will take you thru an example of the DAT Process
ibmzosserverpac installREADY ISPSTART CMD(CPPECHKV) CMG999 Message ISPV010 – ISPV010 message not found in ‘ISPMLIB’ library. when we get this error we need to check for message ISPV010 in local ISPF libraries and try to concatenate that library to the ISPMLIB DD concatenation in the job.
ibmzosserverpac installS04C Abend ISPI021 Unrecoverable error in initialization of command tables ISPI022 ISPF cannot continue. ISPF abending. ISPSTART ENDED DUE TO ERROR+ USER ABEND CODE 0999 REASON CODE 00000000 Ensure to have a unused ISPPROF where ever it is referred to and also ensure if you have the ISPF table library concatenated across the job steps. Check for the prefix to be your usreid Also ensure to have the right SYS1.SISP* libraries for all the ISP* DD.
ibmzosserverpac installCPP0608001E Order OS242118 Already Exists on the Order Inventory and Cannot be R CPP9999999I Program CPP608M ENDED Highest Return Code = 8. go and delete the order entry in serverpac installation dialogue.
ibmzoscobolCobol Options V4.2: https://www.ibm.com/support/knowledgecenter/SS6SG3_4.2.0/com.ibm.entcobol.doc_4.2/CG/igycch264.htm V6.2: https://www.ibm.com/support/knowledgecenter/SS6SG3_6.2.0/custom/igycch264.html
ibmzoslogger/d logger,conn — displays all the connected logstreams on the system and their type DASD or STRUCTURE.
ibmzoslogger/d logger,str — display all the structure defined under logger
ibmzoslogger/d xcf,cf — to identify the name of LOGGER or LOGR couple dataset.
ibmzosloggersample job to create a LOGGER structure type. //DEFSTR EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=A //SYSIN DD * DATA TYPE(LOGR) DEFINE LOGSTREAM NAME(ATR.PLEX1.MAIN.UR) LOWOFFLOAD(60) HIGHOFFLOAD(80) DASDONLY(YES) HLQ(LOGR) LS_SIZE(1024) LS_DATACLAS(DCVSM04K) LS_MGMTCLAS(MCSTD1) STG_SIZE(1024) /*
ibmzosloggerSystem logger process records that are captured in 2 different ways. 1. Sysplex structure a. Primary memory or interim storage is a List structure and when it is full it is backed up to a dataset, if there is no backup created then we would not see any DASD datasets and the data resides in the LIST structure. b. When it needs to backup it creates an LDS with the naming convention as provided in the structure definition and adds an LLQ to it. c. Based on the definition it would maintain certain no of backup datasets d. For someone outside all of this would be not known when you try to access data we would get data even from backups just by referring to the base name. e. The structure can be shared among many systems in sysplex 2. Dasd only a. Primary memory or interim storage is in a LDS dataset and when it is full it is backed up to a dataset, if there is no backup created then we would only see the base DASD dataset. b. When it needs to backup it creates another LDS with the naming convention as provided in the base definition and adds an LLQ to it. c. Based on the definition it would maintain certain no of backup datasets d. For someone outside all of this would be not known when you try to access data we would get data even from backups just by referring to the base name. e. The DASD only type logstream cannot be shared among many systems in sysplex each system needs to have its own DASD logstream.
ibmzosloggerissue: Our issue: IXG251I IKJ56228I DATA SET LOGR.ATR.PLEX1.DELAYED.UR.A0000002 NOT IN CATALOG OR CATALOG CAN NOT BE ACCESSED *039 ATR202D GAP FOUND IN ATR.PLEX1.DELAYED.UR. REPLY RETRY OR ACCEPT TO ACCEPT THE DATA LOSS LOGR.ATR.PLEX1.DELAYED.UR.A0000002 is a backup dataset that might have got created in the past. I think by default they have taken the management class of MCVSTOR and got deletd on 31st December 2020 (just a guess as none of us worked against this dataset that we know of). The problem was that we first tried to reply ACCEPT but then we got the message again that’s when we got confused and tried recreating them thinking that RRS is looking for a base dataset which was not the case. It was only saying that a backup dataset is not found and we you may lose data. We have AUTODELETE(NO) specified so LOGR is not going to delete the backup datasets. If we need to delete the backups we need to run a specific utility. So, as the dataset got deleted by itself RRS was throwing these messages. May be, we need to reply ACCEPT across the plex systems. I will check with IBM and read a little more. NOTE : On Sunday we did run jobs and recreated the CF structures that is not needed as the CF structure were in good condition. Our understanding was wrong and we recreated it.
ibmzosloggerimportant parms while defining a logstream. 1. Name — Name of the logstream 2. Highoffload — % of usage of the primary storage(staging) when the data is moved to secondary storage(offload) 3. RETPD — Specifies the retention period, in days, for log data in the log stream. The retention period begins when data is written to the log stream 4. AUTODELETE(YES/NO) — if YES.. then data is deleted automatically when RETPD is satisfied. Else we need to run a job to delete the data. 4. DASDONLY(YES) — specifies that the logstream is a dasd type and not structure are defined.
ibmzosjcljcl to submit a job from another job. //job stat. //step1 exec pgm=iebedit //sysut1 dd dsn=abc.xyz(jclmember),disp=shr //sysut2 dd sysout= (*,INTRDR) //sysin dd * EDIT START=ADMIN10P,TYPE=INCLUDE,STEPNAME=(JSTEP2,JSTEP5,JSTEP6) /*
IbmzosHMCnever leave the HMC logon in a service mode. always log off when logged on n service mode.
IBMzosCoupling facility OS.D CHPID ALL — lists all the connected chpid’d. — this works only with coupling facility in the HMC operating system messages.
IBmzosCoupling facility OS.the command SHUTDOWN would bring down CF lpars. we need to issue it in CFLPAR operating system messages console.
ibmzoscommandsconfig chp(xx-yy),offline — will bring all the chipd between XX and YY offline.
ibmzosstatusDid network clear the ARP tables? I believe we are resuing the original IP addresses after any change in network. we need to check on load parm and load addr.
ibmzosmessagesIST1631I TRLFCL1 SUBCHANNEL 8721 QDIO CULA UNAVAILABLE — issue solution — OSAFC PCHID 110 on IBM1 z15 was toggled offline/online last night due its connection issue, and TRLFCL1 and OSAFCT were waiting for reactivation. This will be fixed by SYST IPL
ibmzoscentral storaged m=stor — displays the total central storage and any available storage. if any UNASSIGNED STORAGE is available in the DISPLAY you can configure it using the command CONFIG STOR (dddM),ONLINE command. if any IN OFFLINE STORAGE ELEMENT(S) is availablein the DISPLAY you can configure it using the command CONFIG STOR(E=id),ONLINE D ASM,ALL — displays all the auxilary storage(Central memory that resides on DASD storage).
ibmzosMemoryCSA and SQA sizes are specified in the sys1.parmlib. CSA(a,b) = The subparameter a specifies the size of the CSA, located below 16 MB. The subparameter b specifies the size of the extended CSA, located above 16 MB. CSA(a,b) = A = A decimal number, n, indicating n 1 KB (1024-byte) blocks. The number is 0 through 9999. CSA(a,b) = B = A decimal number, n, indicating n 1 KB blocks. The number is 0 through 2080767. SQA(a,b) = The subparameter a specifies the size of the SQA, located below 16 MB. The subparameter b specifies the size of the extended SQA, located above 16 MB. These values are added to the system’s minimum SQA of eight 64 KB blocks (or 512 KB) and minimum extended SQA of approximately 8 MB. Both the SQA and extended SQA are fixed in central storage as they are used SQA(a,b) = A= A decimal number, n, indicating n 64 KB (65536-byte) blocks. The number is 0 through 256. SQA(a,b) = B = A decimal number, n, indicating n 64 KB blocks. The number is 0 through 32511.
ibmzosslipd slip=xxxx xxxx is the I’d set for the slip
ibmzoswebpagedeveloping a webpage and host it in zos. https://www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R3sc278417/$file/dpr1cg01.pdf Page54: Installing and configuring IBM HTTP Server on the z/OS V2R2 system i am using nicepage.com and i designed the web there and then you can export the data from windows to distribute systems the most important is exporting data……the translation codepage would not allow you to read it or use on z/OS unless you do FTP with the following command: quote site sbdataconn=(ibm-037,iso8859-1) <=== Very important and save this command when transferring data
ibmzosdataset sharingI’m receiving this error when I try to access a dataset in 2 different jobs at the same time with the same userid for the job. But I’m referring to two different members. IEF403I I7223893 – STARTED – TIME=11.29.18 IEC813I PDS OWNER: JN=I7223894,SYSNAME=SYSE ,TCB=007FEAB8, IEC143I 213-30,IFG0194D,I7223893,BTERM,SYSPRINT,5204,ZIODF7, SYS5.CTS.CA7.ADHOC.JCLOUT.LOG(I7223893) IEA995I SYMPTOM DUMP OUTPUT 109 SYSTEM COMPLETION CODE=213 REASON CODE=00000030
ibmzosdataset sharingThe abend213-30 means: An attempt was made to open a partitioned data set (PDS) for OUTPUT,DISP=SHR. The PDS is already open in this condition, and a DCB is already open for output to the data set. The data set might be on the same system or on another system that is sharing the volume. Access was not serialized before the attempt to open the data set. For this type of activity we recommend clients use PDSE, as this is not possible with PDS.
ibmzOSbest practises1. LOGS : SMF logs RMF Logs SYSLOG SYSLOGD (FTP, inetd, regent logs) LOGREC
ibmzOSbest practisesMFA : Message flood automation : free tool from IBM. Could be used to manage messages during a loop condition or so. will help us to stop many same messages being written to console.
ibmzosbest practisesSMPE : multiple target zone for one prodct based on the customer if we have a central install method.
ibmzosmemorychanges on central storage (memory) will need to carry out in Image profile of lpars, z/OS or CF, the profiles are defined in Customize/Delete Activation Profiles in HMC.
ibmzosutilityutility to try and get source code from a module //DISASM EXEC PGM=ASMDASM,PARM=’HEX’ //STEPLIB DD DISP=SHR,DSN=SYS1.SASMMOD2 //SYSLIB DD DISP=SHR,DSN=SYS1.MMM.LINKLIB — change to your load module location. //SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=121,CHARS=GT15 //SYSPUNCH DD SYSOUT=T //* DISP=(,CATLG), //* UNIT=SYSDA,DCB=BLKSIZE=3200, //* SPACE=(TRK,(5,2),RLSE) //SYSIN DD * DUMPSMF — loadmodule that you want to get the source code.
ibmzosMVS/LPAR Busylpar busy is derived from instrumentation within the hypervisor (the microcode that controls PR/SM) (hard ware prespective). MVS busy is CPU busy from the perspective of the operating system (z/OS). Essentially it is the amount of time that z/OS did not go into a wait state. (software prespective).
ibmzoslpaLPA DELETE MODNAME(HBOSMFEX) FORCE(YES) CURRENT LPA DELETE MODNAME(GLASYSG) FORCE(YES) CURRENT LPA DELETE MODNAME(GLAMDBG) FORCE(YES) CURRENT
ibmzoslogstreamList the logstream details. //LOGLIST EXEC PGM=IXCMIAPU //SYSPRINT DD SYSOUT=A,DCB=RECFM=FBA //SYSIN DD * DATA TYPE(LOGR) REPORT(NO) LIST LOGSTREAM NAME(WILLIN.IYLX4.DFH*) DETAIL(YES)
ibmzoscomparecompare 2 dataset uing rexx — isp.sispsamp(isrsclst) – exec ‘isp.sispsamp(isrsclst)’ ‘new(TEST.COMPARE.NEW) old(‘tet.compare.old) outdd(test.prod.list)’ In rexx we can use parms = “deltal,linecmp,seq” ADDRESS ISPEXEC “select pgm(isrsupc) parm(“parms”)” In jcl STEP1 EXEC PGM=ISRSUPC,PARM=(DELTAL,LINECMP,”)
ibmzoscompilerINput (source code, C++, COBOL, PL/1) — Translator(high level to assembler) + Assembler(Assembler code to machine code) — Output(Object Module). [(object module) + (object module) ] Binder (call within object moudels are combined) — output LoadModule Listing — errors that helps the programmer correct the source
ibmzoslogrecthe erep (environmental record editing and printing program) has 2 funcitons: produce arious reports maintain backup copies of logrec. By default, the name of the LOGREC data set is SYS1.LOGREC. It is possible to use a different data set name by specifying a LOGREC parameter in a system parameter list (IEASYSxx).
ibmzosaddress spaceThe System Queue Area (SQA) contains system tables that are critical to the entire system. If z/OS uses up all the SQA, it can dynamically obtain more storage from the CSA. If all the CSA has been used up, z/OS would be unable to create more address spaces and a system failure could result.
ibmzosSRMSystem Resource Manager : (manages CPU, STORAGE and I/O). has two equally important objectives. These are: To achieve optimal use of the system resources To ensure that site specified response and turnaround times are being satisfied Uses WLM policies to determines which address spaces should be given access to resources and how much they should get
ibmzosWait stateDiabled Wait — processing stops and the system loads a wait state PSW There are two types of disabled wait: Restartable, meaning that a PSW restart can be performed Non-restartable, where a stand-alone dump is taken before the system is reIPLed
ibmzosloopsA loop or endless loop occurs when a program endlessly repeats the same sequence of instructions. There are three types of loops: Enabled loops that can be interrupted; in this way, they move from CPU to CPU in a multiprocessor Disabled loops that cannot be interrupted so they take over a single processor and put the others under extra strain Spin loops that occur when one processor requires a resource that another processor is holding -The system can automatically recover from a spin loop when a specified interval is exceeded; recovery is based on IBM default actions or those specified in the EXSPATxx parmlib member. -The system can automatically recover from an enabled loop by canceling a job when the system limits on the amount of CPU processing that the job can use is exceeded. -An operator may be able to recover the system from a disabled loop by performing a PSW restart on the processor that is at 100% utilization.
ibmzoscommand ForceUsing FORCE command to cancel a task 1. Cancel the task many time usiing the regular cancel tasks — C task 2. Check the WTOR for the tasks. — D R,L 3. Check the problem is not an enabled wait. — Issue the command D A,taskname and check for the CPU time, do it multiple times so we can identify if the CPU time is increasing to know if it is in enabled wait state. 4. Check the CAS. — F CATALOG,LISTJ(taskname) 5. if a dump is required, enter the DUMP command and respond to the prompt with the name of the job to be removed as well as the MASTER SCHEDULAR ADDRESS SPACE(ASID 1). 6. if it is a non-cancellable procedure then use FORCE taskname,ARM 7. issue the FORCE taskname as a last resort.
ibmzoscommand SENDmessaging Commands : L ‘text’ — to log a message to the LOG. SE ‘message’ — all users. SE ‘message’,USER=(userid) SE ‘message’,USER=(userid1,userid2…useridn) SE ‘message’,USER=(userid),logon — the message will be stored in the broadcast data set and will be retrieved when the user next logs on if they are not logged on at the time of issuing the command. SE ‘message’,SAVE — the message is saved in the broadcast and is shown to users as they logon and already logged in users will see it with their next logon. SE LIST — to see all the messages saved in the BROADCAST dataset. SE MSGNO — to send a saved message to all users. SE MSGNO,DELETE — to delete any saved message.
ibmzoscommand ClassificationCOMMAND CLASSIFICATION: M1 — attached to the master scheduler address space, required to clear backlog of commands M2 — run in the master scheduler address space. M3 — has only SEND command C1 — attached to the console address space, required to clear backlog of commands. C2 — C3 — ROUTE command. Inline COmmands — command that run in USER address space and do not have 50 commands concurrent limit.
ibmzoslogger/d logger — to know the status if system logger is active or not in a system.
IBmzosHMCoffline the crypto chipids. 1. Logon to HMC. 2. select the CEC. 3. Check for SINGLE OBJECT under Recvery services. 4. it opens up the SE pages. 5. Select Systems management 6. on the options select CRYPTOS. 7. it would list the CRYPTO chips. 8. Select the CONFIGURE ON/OFF under Crypto servie operations. and change status.
ibmzOS CIMtheoryThe Common Information Model (CIM) is a standard data model developed by a consortium of major hardware and software vendors (including IBM®), called the Distributed Management Task Force (DMTF). It provides a common definition for describing and accessing systems management data in heterogeneous environments. It allows vendors and system programmers to write applications (CIM monitoring clients) that measure system resources in a network with different operating systems and hardware, and to actually manage those systems.
IBMzos docswebsitehttps://www.ibm.com/support/knowledgecenter/SSLTBW_2.3.0/com.ibm.zos.v2r3/en/homepage.html
ibmzosfCapacity provisioningWhich four scopes can be defined for a Capacity Provisioning policy created in z/OSMF? Maximum defined capacity Logical processor Maximum processor Maximum group capcaity
ibmzosmfsharezosmf workflows share – https://share.confex.com/share/123/webprogram/Handout/Session16079/Using%20zOSMF%20Workflows%20to%20Configure.pdf
ibmzosmfworkflowAs mentioned previously, workflows are comprised of steps. Some of these steps will have a dependency on other steps in the workflow, and cannot be actioned until the prerequisite step is completed or skipped. It is not unusual to see optional steps in a workflow, as many of these workflows come from IBM or third-party suppliers who will code the workflow with a number of different scenarios in mind, some of which may not be applicable to your environment. As you will see shortly, you have the option to skip these steps. Steps can contain sub-steps with up to five levels of nesting allowed. A maximum of 500 combined steps, and sub-steps are allowed for a workflow.
ibmzosmfconceptz/OSMF requires RMF, RMF Monitor III, and RMF DDS to monitor z/OS. z/OSMF can use the RMF Linux Data Gatherer, rmfpms, to monitor Linux on System z. z/OSMF can use the RMF XP DDS to monitor Linux on System z, AIX, Windows, and Linux on System x.
ibmzosmfnetworkWhen accessing the z/OSMF Configuration Assistant, the initial page will prompt you to select a backing store file that holds the configuration data you want to view or work on that Configuration Assistant used to obtains network configuration data
ibmzosmfnetwork–AT-TLS is a perspective that can be selected when adding a TCP/IP stack to a z/OS image. AT-TLS is one of several TCP/IP technologies that can be configured for a z/OS image. –A log of saved changes relating to a backing store can be viewed. –When a new backing store file is created, it does not immediately becomes the active file so any future changes will be saved to it. we need to create backing store files whenever the configurations are changed. –Attributes associated with a networking protocol can be modified once they have been configured for a z/OS image. –The Manage Backing Stores… option will display a list of current and available backing store files and allow, via the Actions menu, to create a new backing store file.
ibmzosmfz/OSMF can perform all the functions of the ISPF WLM panels, and provides screens to view the WLM status for each system. It can load the current WLM from the WLM couple data set. Service definitions can be created, copied, removed, imported, and exported using z/OSMF.
ibmzosmfCapacity provisioningz/OSMF connects to a Provisioning Manager using a CIM server connection. Provisioning Manager connections are manually defined from the z/OSMF Capacity Provisioning screen.
ibmzosmfCapacity provisioningz/OSMF Capacity Provisioning provides a web-based interface to the Capacity Provisioning Manager running on the z/OS system. The Domain Status report shows information on the current state of the Provisioning Manager and the domain that it manages. The Active Configuration report shows information about the active domain configuration and the status of its CPCs and systems. z/OSMF uses the CIM Server to communicate with a domain Provisioning Manager. z/OSMF allows you to modify a Provisioning Manager connection definition.
ibmzosmfmonitoring performanceThe z/OSMF Resource Monitoring screens can be used to graphically view performance metrics for z/OS. z/OSMF performance management uses the RMF Distributed Data Server (DDS), together with RMF Monitor III and other RMF features. The z/OSMF Resource Monitoring can also be used to monitor Linux on z System images on the mainframe, as well as AIX, Windows, and Linux systems running on System x systems in a zEnterprise BladeCenter Extension system. For this monitoring, z/OSMF Resource Monitoring uses the RMF XP Distributed Data Server
ibmzosmfmonitoring performancez/OSMF requires RMF, RMF Monitor III, and RMF DDS to monitor z/OS. z/OSMF can use the RMF XP DDS to monitor Linux on System z, AIX, Windows, and Linux on System x.
ibmzosmfsoftware managementPortable software instances : Software instances that can easily be distributed across a network and loaded either from the host z/OSMF system, uploaded from a local workstation, or downloaded from a server. Software instances: A configuration of installed software, related libraries, and data sets that are defined under a single SMP/E global zone. Products : Used to display a list of products that have been defined in any of your software instances. Categories : Used to combine software instances and deployments into meaningful groups. Settings : Allows you to define software instance defaults. Deployments : Provides you with a checklist of tasks that are required to deploy a software instance. z/OSMF retrieves information from the global and target zones, and from product information files.
ibmzosmfsoftware managementMissing FIXCAT SYSMODs : Will identify missing FIXCAT APARs that are required for certain software fixes. Software Instance Validation: will verify that the software libraries associated with the software instance exist and that they contain the data required. Software Instance Comparison : Used to display functional and service differences between two software instances. End of Service : Will identify products that are approaching, or have already met, their end of service support. Missing Critical Service : If ERROR HOLDDATA has identified exceptions or unresolved items, then this report will assist in identifying the SYSMODs used to resolve them.
ibmzosmfsoftware deploymentz/OSMF can deploy SMP/E installed z/OS software on the same z/OS system by creating a copy on the Parallel Sysplex with local deployment, or on a remote Parallel Sysplex through remote deployment. It will create the jobs to perform the deployment, but not submit them. For remote deployments, it uses HTTP for z/OSMF communication, and FTP to transfer files.
IBMzPDTzpdtVATLST00 setup in zPDT system. – Create USER.PARMLIB(VATLST00). VATDEF IPLUSE(PRIVATE),SYSUSE(PRIVATE) PUBLIC,0,1,3390 ,N USER* ,0,0,3390 ,N This will ensure that new data sets are written to USER00 and that temporary data sets are written to PUBLIC. – copy ADCD.Z111S.CLIST(ISPFCL) to USER.CLIST(ISPFCL) and change the first line from PROC 0 VOL(SBSYS1) to PROC 0 VOL(USER00)
ibmzpdtzpdtThe IBM z System Personal Development Tool (zPDT) provides an environment with one or more IBM z System processors (with several emulated I/O device types), based on a personal computer Linux environment
Open systemsSSHtheorySSH stands for Secured SHell. It is a protocol used by systems to talk to eachother over a network(Client and server) in a secured manner. telnet started back in 1960’s for systems to communicate with each other but it was not secured overnetwork (not connected directly by wires). SSH came in around 1995 it was secured by way of encryption. (data is converted in cipher text). and by having a key. SSH components == CLINET + SERVER(where the data resides) + AUTHENTICATION Mechanism.
Open systemsSSHtheorySerever : Can run Windows or LINUX or zOS or MAC or IOS or ANDROID OS. LINUX or MAC has SSH by default. Windows or zOS or IOS and ANDROID Needs to run SSH. CLient : same as server by a less powered version of OS. (Putty, git bash are good enough to start commmunicaiton using SSH). Authentication : To authenticate the communication between 2 systems. It can be done by a password or by using PUBLIC and PRIVATE Keys ssh user@ip — ssh root@ip of system. it asks for the password.
Open systemsSSHtheory – keysto generate a key issue the command ssh-keygen — it would ask us to specify where the keys has to be stored. ssh-keygen -t rsa — to produce a public/private key of type RSA and stores it in the location specified. we can also have a password for our keys to be more secure. The public key needs to be copied into the remote system. id_rsa id_rsa.pub are general naming convention that the key gets generated.
Open systemssshtheory – communicaitonhow the communication is established with open ssh. System A(becomes client) trying to connect to System B(becomes server) step 1 : Client send ssh connection request. step 2 : server send a randon message. step 3 : client encrypts the message with a private keys and send it back to server. step 4 : server decrypts the message using the public keys that is already stored on it and if the keys match then the connection is established.
prycroftInteractive Monitoring programfree utility to monitor zOS system.
ibmzosmfworkflows1) Assign users/team to perform the task — select a task > select Actions > Assignment and Ownership > select team/user 2) User/team to accept the assigned task — select a task > select actions > accept > 3) perform the task — select a task > select actions > perform — read the instructions and complete the taks > finish
ibmsdsfsyslogFrom the SYSLOG panel, you can display the SYSLOG for another LPAR in the sysplex with the SYSID parameter: SYSID SYST — tries to access the SYST LOG from the current system if in sysplex and operlog is active.
ibmsdsfsrchthe command SRCH can be used in APF, LINKLIST, PROC, PARMLIB, LPA options page to search for members.
ibmsdsfoptionswe can use SMSV and SMSG to list the status of SMS volume nd SOMS storage groups that are active on the system.
Open systemsAnsibleTheoryIt is 1) Declarative : no need to tell how to do but only what to do 2) Agent Less : no need to run any task on the end machine to implement the task 3) IDEMPOTENT : it keeps history and let us know if something has already been completed and do only tasks that are to be done. 4) Community : it is an open source so we already have many play books that are developed and we can use them.
Open systemshtmlchrometo open dev tools page in chrome use CTRL + SHIFT + I
Open systemshtmlcheckerwe can write a code and check it for html error in https://validator.w3.org/ CSS error in jigsaw.w3.org/css-validator/
IBMzosmemory pageo Since MVS/XA Environment, IBM and other datacenters practiced with the following: a) The PLPA Dataset should be 1Cyl only and allow to flow into Common Dataset The PLPA with 1-Cyl and Common Dataset should be on the same DASD, except PLPA dataset should be contagious and which means that PLPA should be the first Dataset created on the DASD and followed by Common Dataset. This causes the majority of PLPA pages to be written to the COMMON page dataset during IPL. The allows the operating system to use the chained CCW’s within a single dataset and Improves Performance with both datasets are on the same volume. The message (“ILR005E PLPA PAGE DATA SET FULL, OVERFLOWING TO COMMON DATA SET”) should be ignored during IPL. Now, you might ask why do we have to do this? Here’s an answer: o The PLPA and other things like MPLA contains system level programs that are often run by multiple address spaces. o For this reason, the LPA residing in common area, which is addressable by every address space, eliminating the need for each address space to have its own copy of the program.
macro4tubesTheoryTubes can be accessed from a TN3270 terminal, using the TN3270 server facility of Tubes, and non-VTAM sessions can then be accessed from Tubes over TCP/IP
ibmnetworkappl defintionTUBE VBUILD TYPE=APPL TUBES APPL ACBNAME=TUBES,AUTH=(ACQ,PASS,NVPACE),EAS=nnn, PARSESS=YES,VPACING=0 TUB001 APPL ACBNAME=TUB001,AUTH=(ACQ,NVPACE),EAS=nnn, PARSESS=YES,VPACING=0,MODETAB=M4TUMODE In this example, the name TUBES is the name of the Tubes system ACB; that is, the ACB that will be used for logging on to Tubes itself, and will be specified on the ACB parameter of the Tubes SYSTEM statement. TUB001 defines the default session ACB that Tubes will use to establish sessions with applications
macro4tubesTheoryTubes supports VTAM FASTPATH. This reduces the amount of validation performed by VTAM and increases the throughput. Installations wanting to use FASTPATH should code SRBEXIT YES on the APPL statement for each minor node in the application major node for Tubes. This includes the Tubes ACB, TUBES, and all the dummy ACB definitions.
macro4tubeslogonUsers who would normally enter the system using the signon panel can in fact bypass this display by entering their userid (and password if required) as VTAM logon data when logging on to Tubes. For example: LOGON APPLID=TUBES,DATA=userid/password LOGON APPLID=TUBES,DATA=userid/password/newpassword/newprofile or, if just the new profile were required: LOGON APPLID=TUBES,DATA=userid///newprofile
Open systemshypervisor VirtualizaitontheoryVirtual machines are completely isolated. benefits: Learn and experiment. you dont want to endanger the main OS. test an app in different OS. TYPE2: Creating machinge on top of an exsisting hardware (Hardware >> HOST OS>> HYPERVISOR >> GUEST OS) Generally for personal computers. TYPE1: Creating machinge on top of an exsisting hardware without host os (Bare metal hypervisor) (Hardware >> HYPERVISOR >> GUEST OS Hypervisor controls the hardware resource. EX: VMWARE ESxi, Micorsoft Hyper-v generally used by big corporations. Eliminate the tightly coupled situation of running OS directly on the HArdware. with virtualization we can create virtual machine image (OS as a portable file with all the required applications). we can backup images and they are called snapshots. Virtual machines are portable without being dependent of any physical server.
catopsecretcommandTSS PE(A93LNZZ) DSN(UKPCA7AD.*) ACC(UPDATE) –>>> GENERIC DEFINITION – OR – TSS PE(A93LNZZ) DSN(UKPCA7AD.CA7.UK01.MUF.CUSMAC) ACC(UPDATE) –>>> SPECIFIC DEFINITION A specific definition always overrides any generic definition so if both are found and are valid then the specific one will take precedence. TSS REFRESH(A93LNZZ) JOBNAME(*) ->>> refresh the cache in one system. Even though the DB is shared across the plex you may have to refresh each system manually
ibmzosjcljob to delay/wait/sleep the execution for some time. //* //STEPX EXEC PGM=AOPBATCH,PARM=’sh /bin/sleep 60′ — this make the job to be in running state for 60 secs. //STDOUT DD SYSOUT=* //STDERR DD SYSOUT=* //STDIN DD DUMMY /* REXX */ CALL SYSCALLS ‘ON’ ADDRESS SYSCALL “SLEEP” 60 CALL SYSCALLS ‘OFF’ EXIT 0
ibmzosArchitecture — CHPIDI/O Adapters — connected to dasd, network devices, NAS (Network accessed stoarge). I/O adapter are identified as CHPID (channel path Identifiers). CHPID is assocaited with a physical port location called PCHPID (Physical channel path identifier) and a subsystem that managers the I/O of the machine.
ibmzOSOperating systemIt is the set of rules and methods that describe the functionality, organization, and implementation of the computer system Process Management + MEMory management + Security Management + communications Management + Resource Managemet + File Management
ibmzOSOperating systemMajor Components : Crypto services, SDSF, SMP/e, RMF, SMF, DFSMS, WLM, JES, zOS Unix services, SNA(TCP/IP)
ibmzosOperating systemIRD : Intelligent resource director. Optimizes processor and channel resuce utilizaiton across lpars in a CEC. It groups LPARS into a Cluster and allows WLM to manage the resources. 1. LPAR CPU managment 2. Dynamic Channel path management. 3. Channel subsytem Priority queuing
ibmzosOperating systemHYpersockets provide high speed connectivit within the CEC.These connections are virtual. Hyperdispatcher helps in sahring teh CP’s workign with WLM.
ibmzosOperating system : ZDACzDAC : zdiscovery and Autoconfiguration : Can detect certain resources on FICON and SAN and stream lines the process of configuring HCD.
ibmzosOperating systemHMC : acts as remote connected options for SE. We can maintain multiple system in a single HMC and One system in Multiple HMC’s
ibmzosOperating system : SESupport Element: LIC (licene for internal code) that is used to control and monitor CPC logging and problem determination functions. hardware system definitions for server IOCDS that is used to POR time BOC(Battery operated clock) to set CPC TOD clocks and POR time Ethernet adapters for connectivity.
ibmzossysplexParts of sysplex: 1. STP : Server time protocol: Multiple systems accessing the data at the sma etime. 2. GRS : Global resource serialization 3. XCF : Manages communication between applicaiton in a sysplex. Issue command on one system on behalf of another system in sysplex. 4. Coupling links : Lpars to memory. Direct memory access communicaiton between sysplex memory and attached system memory. 5. Couple Datasets : Contains information related to the parallel sysplex systems. BASE SYSPLEX : all systems physically connected to each other. PARALLEL SYSPLEX : All systems connected to coupling facility to communicate. Rolling IPL : shutting down couple of lpars in a sysplex and doing changes and bringing it back into plex.
ibmzossecurityConfidentiality Availability Integrity 4767 cryptographic co-processor enable the security. On mainframe it is crypto express.
ibmeducationwebsitehttps://www.ibm.com/it-infrastructure/z/education
ibmracftheoryPROTECT ALL — will not allow any HLQ’s which do not have RACF entry. Avoids users creating datasets with HLQ that are not protected. Logging needs to be enabled only them SMF records are generated. PERMIT can be done only when we have SPECICAL access or for your own userid.
ibmzoscryptographyCPACF (Central processor assist for cryptographic function) hardware component is located on the processor for Symmetric key functions and CRYPTO Express. Secured Key : never leave the CRYPTO card. Protected Key : Clear KEy : Key in storage and read by authorised users.
ibmzoshardwareIOCDS : Input output configuration dataset. represents the connections between the resources (channels, FICON switches, COntrol units and other devices) and the machines that use them. It is a series of statements. It gets stored on the SE. Tehy are picked when the system is powered on. I/O Subsystem that contorl CHANNEL (physical connection between the lpar and the machine I/O cards) Operations. it requries the hardware I/O configuration and to define that we use
ibmzoshardwareIOCP: has five statements: ID Statement: REsoruce name: MIF ID : every logical partition in the configuration. CHPID : all the channels in the systems, these are the logical connection between the lpar and the PCHPID. It also specifies if the channel is dedicated, shared or reconfigurable or span. if connected to FICON switch it handles the assignments also. CTLUNIT : the characteristics of the CTLUNIT, CHannel paths , UNIT address that the CU addresses. IODEVICE : need the device number, CTLUNIT it is connected to.
ibmzosIPLIPL : Initial program load POR : Load input output configuraiton dataset from the support element harddrive into the hardware system area and creates subchannels for each device defined in IOCDS. Stopping all the work that is being done on all the lpars and taking down all the lpars.
ibmzosIPLActivation Profiles : RESET : How license internal code is loaded and how much central and expanded storage does the lpar’s get. IMAGE : How much processor (dedicated or shared) and how many and how much memory. LOAD : the Channel addres that OS needs to be loaded from. GROUP :
ibmzosIPLHardware IPL IPL RIMs NIP RIMs MSI JES
cacsmmigrationMigrate CA CSM to zOSMF https://knowledge.broadcom.com/external/article?articleId=197545
macro4licenselicenseuse the line command LMVIEW to view the licene against the license member
casysviewcommandThe LISTDIR command can show update information for PDS members. On the VTOC command, there’s a RefDate field which shows when a data set was last referenced. That would include both updating or browsing the data set, but if it’s an old date they can at least tell that’s it hasn’t been referenced in a while. It looks like the VTOC command is only for one VOLSER. That field is also available from DSINFO, so you could do a DSCAT for whichever data sets you’re interested in, then drill down to DSINFO
ibmdasdutilitycopy volumes. //LXD2C2BB JOB ,’IBMUSER’,MSGLEVEL=(1,1),TIME=(5,0),REGION=4096K, // MSGCLASS=H,CLASS=A //STEPT02 EXEC PGM=ADRDSSU //SYSPRINT DD SYSOUT=* //SOURCE DD UNIT=3390,VOL=SER=LNX200,DISP=OLD //TARGET DD UNIT=3390,VOL=SER=LNX900,DISP=OLD //SYSIN DD * COPY FULL INDDNAME(SOURCE) OUTDDNAME(TARGET) – COPYVOLID ALLEXCP /* Explanation from IBM manual: On the DFSMSdss COPY FULL command, include the COPYVOLID keyword to cause DFSMSdss to copy the volser to the new volume. When the copy operation completes, the two volumes are identical, including the volser. Because z/OS allows only one volume with a particular volser to be online at a time, DFSMSdss varies offline the volume that was the target of the copy.
ibmdasdlcuwe can have upto 32 UCB’s per LCU.
ibmdasdcopysteps to do a volume copy and use the new UCB. 1. In the IODF define the new UCB 2. Make it offline for the system where the copy is required. 3. Make is available as offline to any other system where the original volume is not accessed on day to day to avoid any constraints of the volume being used when the copy is done. 4. Make the required IODF change to make hte new UCB online and OLD UCB offline with the next IPL. 4. shutdown the org system. 5. ensure to have all the required access to all the datasets in the org volume to copy for the access. 6. make both the org vole and new ucb vol online to the system where the copy would be run. 7. run the COPYVOLID to copy over the volumes. 8. IPL the system.
CAOPSMVScommand/OPSMOUNT DEVNUM=xxxx,VOLSER=yyyyyy — if OSPMVS is controlling the device online, then we need to use this command
IBMDASDreplicaitonwhen doing a reverse replicaiton and we get an error like Volumes are online… its better to RESET CLEAR on the system systems that are shutdown just to ensure that they are not holding onto the volumes. also, it is always good to do a RESER CLEAR whenever a system is shutdown.
ibmzoszOS V2.5Enhanced System Recovery Boost for IBM z15 servers. This capability enables clients to leverage a class of boost that can be applied to a range of z/OS sysplex recovery processes, including sysplex partitioning, CF structure recovery, CF data-sharing member recovery, and IBM HyperSwap®. ServerPac for z/OS V2.5 as a portable software instance and guided process within z/OSMF without requiring extensive z/OS systems skills z/OS BCPii provides a powerful way for z/OS applications to automate and control the operations of Z hardware in multiple languages, including REXX. A new z/OS BCPii API named HWIREST is introduced for the z15 that enables applications to access many previously unavailable attributes of the z15, including central processor complex (CPC) storage, storage allocated for an LPAR, CPC environmentals such as exhaust air temperature and dew points, and detailed information about processors and their assignments to an LPAR
IbmzoszOS V2.5DFSMShsm recover UNIX files to a new directory: With the PTF for APAR OA58612, this enhancement is also available on z/OS V2.3 and later. DFSMShsm UNIX file-level backup and recovery with EXCLUDE criteria: With the PTF for APAR OA57868, this enhancement is also available on z/OS V2.3 and later. Improve monitoring the status of z/OS UNIX system limits, the default value for LIMMSG keyword in the z/OS UNIX PARMLIB member (BPXPRMxx) is changed, enabling warning console messages to appear whenever a system limit is reached by a given process.
ibmzosmfconsoleThe z/OS Operator Consoles task uses EMCS consoles to support console operations. Some setup is required for each console. For a sample job that provides the required setup, see SYS1.SAMPLIB(IZUGCSEC)
ibmzosrecoverySDSF is enhanced to display information about the use of system recovery boost. With the PTF for APAR PH26552, this enhancement is available on z/OS V2.3 and later.
ibmMainframeserver upgradeDescribe how your company handles hardware changes during an active agreement (ex. End of support, MIPS increase/decrease, etc.). 1. Have the current setup documented (Capacity, network, CHPID, DASD backup/replication) 2. Identify the new server as per our requirement based on our current capacity and any near future capacity that we would need. 3. Make note of any software maintenance that would be required for the OS/Subsystems/products and storage box for supporting the new hardware and apply them. 4. Once the system is in our DC (Work with IBM partners to install it ) 5. Work with the network (open systems + Mainframe) to identify and update the network changes that would be required. 6. Create new IODF’s that would have details about the new hardware. 7. Have new CFRM policies defined if the systems are in SYSPLEX that points to the new server. 8. Setup the new server in the HMC and get it updated to have all the configuration 9. Complete the installation of the server and do a POR using SE. (Based on the requirement we need to be connected to the prod storage box or a new storage box) 10. Start a driver system if we have the feasibility. 11. Plan for the movement of systems one after the other (plan for the DASD movement too / sharing with OLD box) 12. Shutdown a test on current server and using the new IODF, new licenses, updated parms bring up one TEST system on the new server and do some testing. 13. For prod system as per plan we can shutdown all systems at once on current and bring them up on new server or go one system after another.
ibmmodernizationzcxhttps://github.com/ambitus/ambitus
ibmzosiodfChanging IODFxx to a different volume. and IPLing the system – Initialized UCBxxxx with label ABC123, (new volume) – Copied HCD.IODF72 to SYS0.IODF72 on ABC123 via the HCD panel option, – Allocated SYS0.IPLPARM on ABC123, – Copied LOADX* from SYS1.IPLPARM to SYS0.IPLPARM, – Updated LOADX* in SYS0.IPLPARM to use HLQ SYS0 instead of HCD for the IODF. Then I reIPLed the system with load parameter newucbX2, it came up OK.
Ibmpprccommandsmetro mirror command to pause and failover Here are the two commands that need to be run: On DS277 pausepprc -dev IBM.2107-75LGX21 -remotedev IBM.2107-75LGK41 2800-28E6:2800-28E6 On DS224 failoverpprc -dev IBM.2107-75LGK41 -remotedev IBM.2107-75LGX21 -type mmir 2800-28E6:2800-28E6
RocketEOSLicensefor any DR test. we dont need to get a special key if the DR test is for less than 21 days. You can check the EOS Control Profile. PROF + enter on the command line after logging on the EOS. Then option 6, select Control Profile. If the BACKUP CPU field is blank, you are good to go
ibmnetworktrace1) Start the TCPIP packet trace a. TRACE CT,ON,COMP=SYSTCPIP,SUB=(TCPIP) b. R xx,OPTIONS=(TCP,ACCESS),JOBNAME=(appjobname),END c. TRACE CT,256M,COMP=SYSTCPDA,SUB=(TCPIP) d. R xx,END 2) Start the PKTTRACE processing. PORTNUM is the port number that the application is listening on: a. V TCPIP,TCPIP,PKT,CLEAR b. V TCPIP,TCPIP,PKT,ON,IP=remote_ip_address,portnum=xxxx 3) Recreate problem . a. Collect dumps of TCPIP : b. DUMP COMM=(‘TS007241198-2’) c. R xx,JOBNAME=(TCPIP),CONT d. R yy,SDATA=(PSA,CSA,RGN,TRT),END 4) Stop the TCPIP packet trace 5) V TCPIP,,PKT,OFF 6) Stop component trace a. TRACE CT,OFF,COMP=SYSTCPIP,SUB=(TCPIP)
ibmnetworkcommandsD TCPIP,,N,ARP
ibmnetworkcommandsd tcpip,,n,home
ibmnetworkcommandsD TCPIP,,N,ROUTE
CAcompatibilitywebsitehttps://ftpdocs.broadcom.com/WebInterface/phpdocs/0/MSPSaccount/COMPAT/zos_compat.HTML Broadcom compatibility.
RocketEOSwebsitehttps://webapps.bmc.com/support/faces/az/supportlisting.jsp EOS dates for BMC, COMPWARE and FDR products
bmccompatibilitywebsitehttps://customerapps.bmc.com/spac/o/welcome.html compatibility sheet for BMC, COMPWRAE and FDR products
ibmnetworkdvipaThere are 2 sites, with the OSA adapters in both sites spanned across the same lan segment. The subnet where the VIPA/DVIPA addresses reside is different from the OSA adapters. When the router needs to forward a packet to a VIPA/DVIPA it will use the MAC address of an OSA that has advertised the route. The OSA will receive the packet and look up the destination IP address to find out which LPAR sharing the OSA owns that address and forward it to that TCPIP stack. If the IP address is not registered in the OSA the packet will be discarded by the OSA. The OMPROUTE configuration for the VIPA/DVIPA was defined as an INTERFACE statement so it only advertised the subnet route. When all LPARs were in the same site this was not a problem as the packet would be forwarded to the OSA and the OSA would then send it to the TCPIP stack that owned the VIPA/DVIPA. When LPARs were moved to the second site the subnet address gets advertised from both sites. The subnet must still be routed to via the OSAs and the router will route the packets based on the subnet route it has learned. If that subnet route is for an OSA on the site where the VIPA/DVIPA is active the packet will be delivered correctly. If it is not active on the site where the subnet route is pointing the OSA will discard the packet when it arrives. The advertisement of the subnet from different TCPIP stacks creates a disjoint subnet, where addresses within the subnet are not reachable via the OSA address where the subnet route is advertised from. The OSA sharing logic is allowing this to work when everything is in one site even though the configuration is not supported. To avoid this it is recommended to ONLY advertise the host routes which avoids the advertisement of a disjoint subnet. To do this requires the OMPROUTE configuration to have the VIPA/DVIPA interfaces to be defined with OSPF_INTERFACE and the Advertise_VIPA_routes=HOST_ONLY. The network diagram that showed the subnet spanning the sites is not correct and will be updated. In reality the subnet does not span a single site either, but is really unique per TCPIP stack that has a VIPA/DVIPA within the subnet. The TCPIP registering all of its active IP addresses to the shared OSA is allowing this to work but if you change the TCPIP configuration for the OSA interfaces to use VMAC this will break as packets will be forwarded based on the VMAC instead of the destination IP address.
ibmnetworkdvipaV TCPIP,,OSAINFO,INTFNAME=osa_interface_name can be used to display the IP addresses that are registered in the OSA for the TCPIP stack where the command is issued. This will show you how the shared OSA routing is working for a VIPA/DVIPA in the subnet. The OMPROUTE configuration was changed to OSPF_INTERFACE with Advertise_VIPA_Routes=HOST_ONLY and the Attaches_To_Area=3.0.0.2 so the routes are advertised in that area. The VIPA/DVIPA addresses are pingable.
IBMnetworkEnterprise extnederD NET,EEDIAG,TEST=YES,IPADDR=(169.10.244.212,169.4.83.1),LIST=DETAIL — chekc the enterprise extender connection from source to destination IP.
ibmnetworkEnterprise extnederD NET,ID=SWGEU18,SCOPE=ALL — this command is to check whether the EE node is active from SYSG to EU18
ibmnetworkEnterprise extnederif it is not active state issue V NET,INACT,ID=SWGEU18 — wait for some time to get it inactive
ibmnetworkEnterprise extnederbefore we try to activate the node make sure it is not active by issuing the command D NET,ID=SWGEU18,E – we should get below response IST453I ID PARAMETER VALUE DOMSP.SWGEU18 NOT VALID
ibmnetworkEnterprise extnederto activate the node issue the following command V NET,ACT,ID=SWGEU18,SCOPE=ALL
ibmomvsparmsimprove monitoring the status of z/OS UNIX system limits, the default value for LIMMSG keyword in the z/OS UNIX PARMLIB member (BPXPRMxx) is changed, enabling warning console messages to appear whenever a system limit is reached by a given process.
ibmomvscommandsoview, obrowse, oedit
bmcfileaidcommandsz tso xvjlook
ibmispfutilityin 3.4 listing we can use APPEND hlq.**.LLQ and so on to list more datasets as required with different HLQ’s in 3.4 listing we can use exclude sting or exclude string all — will exclude all the datasets with that string in the name. in 3.4 listing we can use VA (list attributes), VS(show space), VT(created and changed time), and VV(volume).
ibmrmfstcRMF — Control Address space RMFGAT — RMF Monitor III gatherer GPMSERVE — RMF Distributed Data server GPM4CIM — RMF XP (Cross platform monitoring) RMFM3B — RMF Monitor lll bath reporting)
ibmrexxlogon procTo call a rexx in logon proc or any other procedure. //TRXPR01 EXEC PGM=TRX,REGION=0M,DYNAMNBR=65, // PARM=’EX ”SYS1.CMDPROC(ALCDYNM0)” ‘
ibmrmfmoniotr iiithe RMFGAT zIIP exploitation can be controlled initially by means of new monitor III parmlib parm zIIPUSE. F RMF,F III,ZIIPUSE/NOZIIPUSE
ibmzcxzcxeach linux docker server represented by a z/OS owned, managed and advertised dynamic vipa (dvipa). Allows restart of the zcx instance in another system in the sysplex.
ibmwmlwmlWatson Machine learning.
macro4vtamprintkillColumbus Z Shutdown An MVS Modify ‘F VTAMPRNT KILL,IMMED’ may cause an abend S0C4 in module CPTERM+5B0. KILL,IMMED is an invalid command but it is not being flagged as such when issued using the MVS modify command. Please use ‘F COLUMBUS,KILL IMMED’ and the problem will not occur.
macro4vtamprintworkingApplications that create documents in CICS interface with Columbus Z by linking to the supplied CICS report creation program, M4VACICU. M4VACICU in turn connects to M4AS which routes the documents through to the JES spool via various IBM SAPI calls. M4AS makes use of access registers for this type of cross memory communication. In z/OS 2.3, IBM introduced maintenance that affected the way these access registers are handled. Without fix ASO00059 applied, an S0E0 abend occurs.”
ibmoperlogoperlogV OPERLOG,HARDCPY — to active the operlog V OPERLOG,HARDCPY,OFF — to deactivate the operlog D conosles,hardcopy — to check if operlog is getting the messages or syslog
macro4vtamprintsetup
CADispatchLDS fullCheck for MSG/ARCHIVE/ARCHDUP/ARCHRES in 8; 2 — any messages are waiting Check for tasks that are active in 8;1 — ensure all the archive and other tasks are active. (arch1, arch2, arch3) Dispatch archive if happening to tape then they are not cataloged.
CADispatchMAXDSCADD134W Report — ABC — olv and archive and print — , 1 entry in olv — maxds would be down only when the report is removed from olv — 1 entry in archvie — once the archive happens then the header2 record get updated with archive flag is completed. (17500) — 91% 1 entry for print — once the print happens then the header record2 gets updated Maxds — header2 record that has 3 process flags as one entry — only when the above 3 actions get performed the maxds entry gets reduced or removed by cadzspl process. my lds count would — 3 When will the count gets reduced in LDS 1. When the olv file retention is over then cadsview run and remvoe the entry then LDS entry gets deleted for olvs entry of the report and the report is archived and it is printed once all these 3 tasks are completed then maxds count comes down
IBMomvsfilesystemmounted as OWNER(xxxx) and in our USS Environment, for some reason it is coded as NOAUTOMOVE, so when xxxx System is Shutdown then these filesystems goes into Orphan Mode and in IO Error state. Any filesystems that are in IO Error impacts performance and your Backup Environments as system will continue to access IO Errors and results into Higher CPU as it occurs on FDR Backups, when we do backups such as /*.
CAACF2logon proc1. Define the logon proc to Top Secret: TSS ADD (DSTC) TSOPROC(TSOPROC) 2. Define permissions: TSS PE(A93LNZZ) TSOPROC(TSOPROC) 3. Refresh the cache: TSS MODI CACHE(CLEAR) , then TSS REFRESH(A93LNZZ) JOBNAME(*)
CAreplacementreplacement1. List all the CA products and their functionalities to understand the usage of the products. 2. Run reports to identify the usage of CA products running on the system and Identify if any products are not used that can be omitted from the conversion. 3. Make a note of the configurations wrt to security requirements. 4. Identify the application that each CA-product is specifically using and tools that are independent of any application. 5. Match the product usage wrt to the system programming teams (z/OS, CICS, Database, Storage, network, Middle ware, security) 6. Categorize the products as scheduling / automation / monitoring / reporting / application assist for easy identification of replacement products. 7. Work with different vendors and identify products that could be possible replacements for the respective CA products and drill down to identify one product for each CA product based on the functionalities that the new product would match with CA products. (we may endup having multiple products for each product or vice versa).
CAreplacementreplacement8. Plan couple of teams to work on the replacement and have the products allotted accordingly this way we can run multiple product replacement parallelly. 9. Identify a test lpar in the customer environment where we can run the identified replacement products and test it. 10. Install the products and test them (Both the system programmer testing and application testing needs to be completed where ever possible). Here we can first work with trail licenses and once we conclude that all the functionalities can be replace we can go for a working license. 11. Ensure to work with security teams to establish similar security rules. 12. Most of the products can run in parallel to the CA products, so we can move the replacement product to prod system and start it parallelly and test it. 13. Once the testing is completed we can either move the functionalities fully from CA product to the replacement product or move them part by part as we test. 14. We can do incremental approach rather than a big bang approach. 15. Once we are successful on one production system we can move to the other system. 16. We can start shutting down CA products as we complete the replacement installs
IBMlinklistcommandsto check for the current users of a lnklst d prog,lnklst,users,name=linklistname
IBMtsocommandsTSO CONSOLE : enables us to issue any console command from our TSO session instead of going to the SDSF. we need have the below access to use the command PERMIT console CLASS(TSOAUTH) ACCESS(read) ID()
ibmzosmfconsoleThe sample job to setup the security is in SYS1.SAMPLIB(IZUGCSEC). I went through the job but wanted to start only the following setup as I believe I have access to other resources and we don’t want to do some others at this point. SYSTCONS is the name that I would using for the console in zosmf. RDEFINE OPERCMDS MVS.MCSOPER.SYSTCONS UACC(NONE) PERMIT MVS.MCSOPER.SYSTCONS CLASS(OPERCMDS) ACCESS(READ) + ID(A93LNZZ) ADDUSER SYSTCONS OPERPARM(AUTH(MASTER) ROUTCODE(ALL) MSCOPE(SYST) STORAGE(15))
ibmhardwarewebsitez15 animated. https://www.ibm.com/demos/it-infrastructure/product.html#14/1401;C1315 https://www.ibm.com/demos/it-infrastructure/zEnhancedTour/index.html#z15;C1315
ibmzosmfwebsitehttps://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home/videos?CommunityKey=1ca674e5-aada-4194-a16e-059cafe7b807
ibmzosmfdatasets search and groupwe cna group jobs from different datasets and copy them into the same folder and place it on the desktop
ibmzosmfrequirements-The z/OSMF server requires a minimum of 4 GB of system memory to be configured -having one z/OSMF server active in a sysplex or monoplex is sufficient, but you might choose to have more, based on your workload requirements. The goal is to ensure that at least one z/OSMF server is always active in your environment. -The sample job IZUSEC provides RACF commands for creating a certificate authority (CA) and a server certificate
ibmsdsfcommandsCommand to refresh SDSF parm updates. if we are using the ISFPRMxx member then check the SDSF JCL and identify the xx and update it for any changes and then issue the below commands to refresh the SDSF task with updates. F SDSF,REFRESH F SDSF,REFRESH,M=01,TEST F SDSF,REFRESH,TEST
ibmzosmfsdsf1. Go to general setting and sdsf and update the logon proc, account number and sdsf groupid (Check in WHO command) 2. go to Jobs and resources and select SDSF to invoke the panels.
ibmzoscommandsdisplay command to identify the suffix of parmlibs that are read from IEASYSxx D IPLINFO,PROG — dispaly the PROG=(xx,xx,xx) from the IEASYSxx member D IPLINFO,SVC — display the IEASVCxx from the IEASYSxx member D IPLINFO,ZAAPZIIP — displays the availability of zaapziip pu D IPLINFO,ZAAPZIIP,STATUS — to display if the ziip is acitve on this lpar.
ibmzcxwebsite https://www.ibm.com/support/z-content-solutions/container-extensions/
ibmftptheoryif we need to receive any files from outside systems or other mainframe to a system then that systme should be running FTPD* task (server task). Else we would only be able to send files and wont be able to receive files.
ibmzosmfCEACEA – Common event adapter – SYS1.SAMPLIB(CEASEC) — security setting required to for setting up CEA. provides the ability to deliver z/OS events to clients such as CIM server, and create or manage TSO user address spaces under ISPF task.
ibmzosmffirst pageIf we want custom messages in our logon please check the General setting in z/OSMF settings and update the CUSTOMIZATION tab.
amazonawsmainframe modernizaitonAutomated Conversion with Refactoring — an automated conversion approach, which retains functional equivalence and critical business logic while converting core legacy applications to maintainable, refactored object-oriented Java. The code is analyzed during the assessment to determine cloud-readiness and the required effort to obtain the desired level of elasticity (i.e. horizontal scalability and vertical scalability) required by the application workloads.
modern systemsCTUmainframe modernizaitonCOBOL-to-Universal Solution (CTU) software solution supports typical mainframe-based COBOL application components, including CICS, JCL, and common utilities, such as IDCAMS and SORT, in addition to data stores like DB2 for z/OS, IMS, VSAM, and IDMS databases is used to reverse-engineer the COBOL code into an intermediate language, and then to forward-engineer the target Java code. the resulting Java application became object-oriented and separated into three layers: presentation logic, business logic, and data access.
amazonawsmainframe modernizaiton CICS BMS Maps were migrated to equivalent web pages which mimic the original 3270 screens as closely as possible During the refactoring process, all VSAM records were analyzed and a DDL generated for each of the best layouts chosen.
amazonawsmainframe modernizaitonhttps://aws.amazon.com/mainframe/
IBMPythonwebsitehttps://www.ibm.com/products/open-enterprise-python-zos
ibmrexxcommands if we need to rename a PDS member in REXX best to it the following way. /* rexx */ trace i address tso “ALLOC FI(MYDD) DA(‘SYS1.PARMLIB’) SHR REUSE” if RC=0 then do /* oldname and newname are variables containing the name of the old ew members */ “ALTER ‘SYS1.PARMLIB(PROGYY)’ NEWNAME(‘SYS1.PARMLIB(PROGDD)’) FILE(MYDD) ” “FREE FI(MYDD)” end
ibmzosmffeaturesSending diagnostics data to IBM using zOSMF
ibmzosmfconfigurationwe need to update the member IZUPRMxx to have any plugins activated.
ibmnetworkcommandsTSO NETSTAT ALLCONN (CLI GPMSERVE — to check the connecitons that are coming to that address space/STC.
ibmzosmfsysplexResource authorizations for the Sysplex Management plug-in. IBM provides job IZUSPSEC in SYS1.SAMPLIB
ibmftpamapduplwe can use this utility to send files to IBM cases using ftp and it would send the data in multiple ftp sessions running in parallel. this way we can send large files without being timed out and asap. //FTP EXEC PGM=AMAPDUPL //SYSUDUMP DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUT1 DD DISP=SHR,DSN=CEA.Y00.DA9885E4.CACBFA06.X00.VEW //SYSIN DD * USERID=anonymous — worked with anonymous PASSWORD=anonymous — worked with anonymous TARGET_SYS=testcase.boulder.ibm.com TARGET_DSN=zosmftest.file.transfer — file name to be used at the target system. WORK_DSN=xxxxxx.ZOSMF.FTP — workfile on our system to be used as it converts the file to be sent to a specific format CC_FTP=03 WORK_DSN_SIZE=500 DIRECTORY=/toibm/mvs/ CASE=xxxxxx — case number //
ibmzosmfsysplex managementGetting the error IZUS403W The channel path information on remote systems nameis not available. when trying to see the CF conenectivity view details. we need to do the following security setup across all systems in sysplex to resolve this error. SETROPTS GENERIC(REALM) RDEFINE REALM SAFDFLT APPLDATA(‘plex name’) SETROPTS RACLIST(REALM) CLASSACT(REALM) SETROPTS RACLIST(REALM) REFRESH
ibmomvsconcatenateconcatenate a new path to the existing envrionment variable. export PATH=$PATH:/yugi/bin — will concatenate the /yugi/bin locaiton the existing PATH values.
ibmzoscapacityCEC MSU and LPAR MSU /* REXX */ rct = c2d(storage(d2x(c2d(storage(d2x(c2d(storage(10, 4))+604), , 4))+228), 4)) say ‘CEC MSU capacity=’c2d(storage(d2x(rct+32), 4))’;’ , ‘defined LPAR MSU capacity=’c2d(storage(d2x(rct+28), 4))
ibmzospage datasetPAGTOTL system parameter, which was specified at IPL. specifies the maximum no. of page datsets that can be defined to be active on the system. specified in IEASYSxx. if we have 8 .. then 1 plpa, 1 common, 5 local and 1 reserved.
ibmzosmemoryIRA200E AUXILIARY STORAGE SHORTAGE Explanation The system detected a shortage of available slots in the auxiliary storage paging space. This message is issued when at least 70% of all available auxiliary storage slots in paging data sets and storage-class memory in the system are in use. The system issues message IRA206I to identify address spaces with the largest amount of auxiliary storage and message IRA210E for address spaces that have the largest increase in the amount of allocated central plus auxiliary storage.
ibmhardwaremigrationWe can setup a PPRC when we have to move one DC storage to another and for tape migration from one DC to another we can use TCP/IP (grid to grid)..
ibmomvscommandto find the port number netstat -b | grep SSHD1 netstat -b | grep TN3270
ibmeducationwebsitelook for “IBM ACademic Initiative z/OS” in youtube..
ibmzosmfwebsitehttps://mediacenter.ibm.com/tag?tagid=z%2Fos%20management%20facility videos to understand working with zosmf.
ibmdasdreorgCDS reorg 1. LISTCAT the CDS, run EXAMINE job to check for any errors during INDEXTEST and DATATEST. 2. Take 2 backup copies of the CDS and also a full volume backup. 3. Ensure a quieter time and stop HSM on the system where I am performing the REORG. 4. EXPORT the CDS to a PS file. 5. If a RESIZE of CDS is required, then create a bigger CDS dataset using IDCAMS DEFINE CLUSTER job. Before this I would rename the existing CDS to .OLD 6. IMPORT with TEMPORARY option to import the CDS from the PS file in Step 4 to the newly created CDS dataset. This step would first delete the existing CDS during the job run. 7. Start HSM on the system and run the checks like LISTCAT, HSM commands etc.
ibmomvslong commandIf you are typing a long command that will not fit on the command line, you can use the \ (backslash) continuation character at the end of the first line. When you then press , the command line is cleared so that you can continue typing.
ibmomvsspawn errorif any time we get spawn error not able to create address space then BPXP005I A FORK OR SPAWN ERROR WAS ENCOUNTERED. RETURN CODE 00000070 REASON CODE 0B17001A then issue the command Issue ‘F BPXOINIT,SHUTDOWN=FORKINIT’ to drain any unused BPXAS initiators. This will cause new BPXAS initiators to be created during subsequent fork attempts. This command can be issued repeatedly without harm to the system.
ibmPythoninstallhttps://www.ibm.com/docs/en/python-zos/3.10?topic=configuration-installing-configuring-pax-format
ibmnode.jsinstallhttps://www.ibm.com/docs/en/sdk-nodejs-zos/14.0?topic=configuring-installing-pax-edition
ibmnode.jsversionissue the command node to know the version installed.
ibmpythonversionissue the command python –version
ibmnode.jscommand.exit command to quit the nodejs environment.
casysviewcics updateApply this fix and either recycle any monitored CICS regions, or use the GSVT (terminate) and GSVS (start) transactions to recycle SYSVIEW for CICS within each CICS region.
ibmjclproc stepJCL RESTART is an optional keyword parameter which is used to restart a job from a particular step the syntax of RESTART parameter if you want to run from a particular step of a proc RESTART=JCL-STEP.PROC-NAME.PROC-STEP
ibmomvshfs2zfstso %bpxwh2z
ibmomvscommandsunmount $(mount -q pathname)
ibmomvscommandsmount -t zfs -f filesystem pathname
ibmomvsprofilewe can create a .profile file in our folder so that update are made to that file for local to that user.
ibmomvsaliaswe can create aliases for command in our .profile and use them like alias ll = ls -l alias md = mkdir
ibmomvscommand/samples/copytree sorucepath targetpath to copy an entire directory to anotehr new directory but the target has to be empty.
ibmomvscommandzfsadm grow -a ‘file systme name’ -size 0 — to increase the file size.
ibmispfcommandalter / datasetname — we can do a lot of changes to vsam datasets.
ibmomvscommandcp /dev/null filename to empty a file.
ibmomvsCRONCRON is a schedular that can be used to do some tasks. it also has to be started in /etc/rc CRON is a daemon. we have the definition of CRON setup in /etc/cron — had the definiton file queuedefs — where we specify how the actiosn are to happen. Ex # queue definitions file # Queue name is a single character # Default queue for at is `a’, for batch is `b’, and `c’ for crontab # #j is the max number of jobs to run simultaneously in that queue # #n is the nice value for non-super user jobs in that queue # #w is the # of seconds to wait before rescheduling because of full queues. # queue.4j2n30w a.4j1n b.2j2n90w c.5j2n15w
ibmomvsCRONwe can have the schedule commands in /usr/spool/cron/crontabs/filename — ex : “1 0 * * * rm -Rf /tmp/tomcat* ” — “minute hour day_of_month month weekday command” — it says on First minute of the oth hour any day any month any weekday issue the command “rm -Rf /tmp/tomcat* Cron log : /usr/spool/cron/log
ibmomvscommandzfsadm aggrinfo filesystem -long to get more details of the file systems.
ibmomvsautomountwe can automount setup for any file systems. we can use auto.map to update what files systems have to be automounted when referred. we need to start the autmount in /etc/rc — /usr/sbin/automount update the file /etc/auto.master with the automount requirements. ex : /u /etc/auto.map — this indicate that any entry in /u will have to check the /etc/auto.map to chekc what file system has to be mounted. update the file /etc/auto.map — ex : the below statements will mount a file system OMVS.PLEX2.U.username.. if not available it would be created. name * type zFS filesystem OMVS.PLEX2.U. mode rdwr duration nolimit delay 10 setuid yes allocany space(5,5) cyl storclas(scapphfs) mgmtclas(mcapphfs)
ibmomvscommandautomount auto.master
fdrupstreamcommandf upstream,reschedule.
ibmzosmfwebsitehttps://ibm.biz/zOSMFCommunity https://galaxy.ansible.com/ibm/ibm_zosmf https://ibm.biz/zOSMFGuildHome z/OSMF One Stop Hub z/OSMF Community z/OSMF Guild z/OSMF Marketplace z/OSMF blogs z/OSMF videos zTrial of z/OSMF IBM Knowledge Center: IBM z/OS Management Facility z/OSMF Value Proposition chart
ibmdasdcommandTSO HSEND QUERY ACTIVE — to check if any hsm related activity is happening. /F HSMx,QUERY ACTIVE /F HSMx,STOP
ibmsmfdelete report//SMFRPTR EXEC PGM=ICETOOL //RAWSMF DD DISP=SHR,DSN=LCL3M.SMF.SMF65.SORTED //TEMPSMF DD DSN=&&TEMPS,SPACE=(CYL,(100,100)),UNIT=3390, // DCB=(RECFM=VBS,LRECL=32000) //REPORT DD DSN=&SMFRPT.,DISP=(,CATLG,DELETE), // UNIT=3390,SPACE=(CYL,(2000,1000),RLSE), // DCB=(RECFM=FBS,LRECL=121,BLKSIZE=2420) //TOOLMSG DD SYSOUT=* //DFSMSG DD SYSOUT=* //TOOLIN DD * COPY FROM(RAWSMF) TO(TEMPSMF) USING(SMFI) DISPLAY FROM(TEMPSMF) LIST(REPORT) – TITLE(‘SMF Type-65 Records’) DATE TIME PAGE – TITLE(‘Delete Types: IN-Insert DE- Delete UP-Update’) – HEADER(‘Time’) ON(7,4,TM1,E’99:99:99′) – C’hh:mm:ss’ HEADER(‘Date’) ON(11,4,DT3,E’9999-999′) – C’yyyy-ddd’ HEADER(‘System’) ON(15,4,CH) – HEADER(‘Jobname’) ON(51,8,CH) – HEADER(‘Delete type’) ON(23,2,CH) – HEADER(‘Entry name’) ON(121,44,CH) – HEADER(‘Catalog name’) ON(76,44,CH) – BLANK /*
ibmsmfdelete report//SMFICNTL DD * OPTION VLSHRT,VLSCMP INREC IFTHEN=(WHEN=(1,2,BI,LT,164),OVERLAY=(164:X)) /* SORT FIELDS=(11,4,Y2Y,A) SORT FIELDS=(121,44,CH,A)
ibmzosmemoryhttps://www.ibm.com/docs/en/zos-basic-skills?topic=1960s-what-is-virtual-storage
CACA-7restart We tested the RESTART command here and it is working as designed. We noticed that the DB.1 screen for job CA7PSRR shows INSERT-RMS: N which indicates CA 11 is not being used. This has to be set to Y to use the format of the RESTART command that you issued in the case description. The information sent for the DB.1 screen does not match the problem you are describing in this case as the job sent does not have the CA 11 step inserted into it. We would need documentation from you showing what is not working based on what the case description is reporting as a problem/concern
CACA-7restart //ERRORS DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * /LOGON JCLOVRD,JOB=CTSTEST,SET=OFF /LOGOFF /*
CACA-7restart //STEP1 EXEC CA7BTI //********************************************** //*TEST JOB THAT RUNS CA7 COMAND IN BATCH //********************************************** //ERRORS DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * /LOGON RESTART,JOB=7391,FORCECOMP=YES /LOGOFF /*
ibmzowewebsitehttps://developer.ibm.com/tutorials/zowe-step-by-step-tutorial/
ibmzosalertssecurity vulnerability alerts for z systems. SystemzSecurity To access the data: 1. From a web browser enter http://www.ibm.com/servers/resourcelink 2. Select “Sign in” from this page and enter your IBM ID and password 3. Select “Problem solving” on the left hand side 4. Select “Security alerts” under the “Software” column On the “Security alerts” page you will see links for the IBM Z security/integrity data followed by links for many security related notifications for various platforms. Open the links for “z/OS Security/Integrity Data” or “z/VM Security/Integrity Data”, as appropriate, to view the current list of relevant security information. To receive notification that updates are available, you can Subscribe to this list via the “Subscribe to this page” link on the upper right hand side of the “Security Alerts” page. Select the appropriate notification options on the subscription page and “Submit” the request. For z/OS there is usually some form of update each month. You will then receive notification that the hold data has been updated indicating a new APAR is available. Keep in mind no data is pushed to you, once notified of an update you will need to log on and retrieve the data. Also, be aware that email notifications are not always reliable, due to various networking and security technologies, and are not a substitute for vigilant checking.
ibmracfcommandracdert id(usird) list — to list the certificates assinged to the user.
CACA-7commandsARTS – Automated Rerun Tracking systems : The command interfaces directly with CA WA Restart Option (CA11) if its installed
CACA-7commandsLSTP CA7PSRR : Command displays the steps for the job both restartable and non-restartable, and condition codes for jobs in failed state.
CACA-7commandsPRE P,JOBNAME : Can be used for specifying the type of preprocessing to be performed on next run of job. P sets the job to Production processing, R sets for Rerun/Restart processing. For eg PRE R,CA7PSRR,CC=0020 can be used to set the 1st step condition code to 0020.
CACA-7commandsCANCEL : Delete the instance of job from ca7 queue : Cancel,job=ca7psrr,force=yes,reason=xxxxxx : Use force = yes to clear CMT – Catalog management table
CACA-7CommandsLPDS,DSN=*INIT* : Displays the initialization parameters for CA7 task, eg: PF keys, libraries, batch terminals, mandatory reason parameter for cancelling job, etc.
CACA-7commandsOINQ : Shows option table inquiry panel, useful for verifying the processing options currently in effect.
caCA-7commandsCINQ JOBNAME : Displays CMT information for the job, shows the data that controls catalog maintenance and rerun execution. Useful for examining individual fields in CMT records, eg to determine which GDG was used in last execution of a job.
CACA-7commands/PAGE+1 Used to move to next page/ scroll down ( use /PAGE-1 to move to previous page/scroll up) To set PF keys for pageup & page down /PF07,M=(/page-1) /PF08,M=(/page+1) To make changes permanent /prof,keys=save
IBMzowecontactswinchest@uk.ibm.com jeffin.siby@ibm.com
ibm ispfcommandswapbar /*REXX*/ ADDRESS ISPEXEC “SELECT PGM(ISPTL) PARM(&ZPARM)”
ibmzosmfwebbrowser• z/OSMF uses session cookies to track which users are logged in from a specific browser. If you want to use multiple z/OSMF servers from the same workstation, you might need to either launch another browser instance (as with Internet Explorer), or, configure another browser profile (as with Firefox). For information about creating Firefox profilesQ see the Mozilla web site: http://www.mozilla.com.
ibmzoslanguage env.To view the current MSGFILE de®nition on your system, you can use the following command: D CEE,ALL
ibmomvsmountMOUNT FILESYSTEM(‘IZU.SIZUUSRD’) TYPE(ZFS) MODE(RDWR) MOUNTPOINT(‘/global/zosmf’) PARM(‘AGGRGROW’) UNMOUNT When you use the IZUMKFS job to allocate and mount the user ®le system, the job uses your installation defaults. If AUTOMOVE=Y is in effect for your installation, the following message might be displayed when the system is shut down: “BPXM048I BPXOINIT FILESYSTEM SHUTDOWN INCOMPLETE. 1 FILESYSTEM IS STILL OWNED BY THIS SYSTEM. To remove this restriction, add a MOUNT statement with the UNMOUNT parameter to your BPXPRMxx member, as shown in the previous MOUNT
ibmzosmflinkIZUG349I: The z/OSMF Server home page can be accessed at — check teh IZUSVR task for a similar message to identify the logon page at your site. : https://tech.mmm.com/zosmf
Open systemsLinuxKVMKernel-based Virtual Machine (KVM) is an open source virtualization technology built into Linux®. Specifically, KVM lets you turn Linux into a hypervisor that allows a host machine to run multiple, isolated virtual environments called guests or virtual machines (VMs).
ibmzosmfwebsitehttps://www.openmainframeproject.org/projects/zorow ZOROW : the z/OS open Repository of workflows part of open mainframe project.
caCA-7commandJCLOVRD,JOB=jobnumber,SET=OFF
IBMDRGDPSGDPS is a multi-site application availability solution with fast recovery time and highly automated control. It manages application availability in and across sites for both planned maintenance and unplanned situations such as site failure or full-blown disaster
IBMDRGDPS GDPS : includes resource sharing, data-sharing, workload balancing and certain aspects of continuous availability which are provided by the Parallel Sysplex clustering technology, and data mirroring for data availability
EMCDRGDDREMC® Geographically Dispersed Disaster Restart (GDDR).
IBMDRGDPSGDPS/PPRC, which is based on IBM PPRC (Peer-to-Peer Remote Copy, synchronous) technology. Now called as METRO Mirror.
ibmzosMSTRMSTJCL00 does not contain the START command that starts the primary job entry subsystem during master scheduler initialization. You can define and start the primary job entry subsystem using the PRIMARY parameter in the IEFSSNxx parmlib member.
ibmzosmfcertificateCertificate required by zOSMF, if we are not sharig RACF database then we need to create one certificate across each system: RACDCERT ID( IZUSVR ) GENCERT SUBJECTSDN(CN(‘SYSQ.MMM.COM’) + O(‘IBM’) OU(‘IZUDFLT’)) WITHLABEL(‘SYSQzOSMFCert.IZUDFLT’), + SIGNWITH(CERTAUTH LABEL(‘SYSQzOSMFCA’)) NOTAFTER(DATE(2025/12/31)) RACDCERT ALTER(LABEL(‘SYSQzOSMFCert.IZUDFLT’)) ID(IZUSVR) TRUST RACDCERT ID( IZUSVR ) CONNECT (LABEL(‘SYSQzOSMFCert.IZUDFLT’) + RING(IZUKeyring.IZUDFLT) DEFAULT) RACDCERT ID( IZUSVR ) CONNECT (LABEL(‘SYSQzOSMFCA’) + RING(SYSQIZUKeyring.IZUDFLT) CERTAUTH)
ibmgeneralprocessDescribe in detail Service Provider’s approach to keeping software at N-1, including: (a) the process Service Provider will follow to determine the suitability, urgency, and impact on State Street of IBM RSU and ISV versions; a. For IBM products we apply the RSU maintenance on a quarterly or half-yearly basis based on customer’s environment and based on the HIPERs that are part of RSU maintenance. WE order them through the shopz. Or we will enable Digicert handshake with ibm and the RSU maintenance is received automatically for the base product to our smpe environment when we run the receive job and no need to order from shopz. The RSU maintenance IBM products and other sub systems are performed separately following the same process. For some customer we also receive the PTFs and hold data monthly and review them. b. For ISV products first we make note of the installed versions and tracks the maintenance release and update them every six months. We track version GA dates on the vendor website for latest version. We monitor the EOS dates for each version and upgrade the products to ensure that we are at N-1/N and at supported levels. Most of the times we would like to be at N-1 to avoid any issues with N upon their GA. We would also be checking for the latest features available in the newer version and if they would help our supporting environment we would proceed with the upgrades before the planned time.
ibmgeneralprocess(b) how Service Provider will set priorities to achieve N-1 currency amongst competing projects and services. a. CTS generally provides a dedicated teams to support customers so each team would plan the work every quarter on what would are the upgrade / maintenance that has to be completed and plan accordingly. As we are dedicated teams we don’t have to prioritize work wrt to other customers being supported.
ibmgeneralprocessPlease also describe Service Provider’s approach to (c) maintaining currency for hardware assets a. For the current hardware we ensure that Microcode is updated every quarter or when IBM recommends for any issues. It is done in co-ordination with the hardware maintenance support team in general IBM. b. On an average every hardware version released by IBM is marketed and supported for 4yrs and an extended supported for 10yrs with follow on service. We recommend customer to upgrade start their hardware upgrade plan 1yr into the GA of the hardware and be on the supported hardware at N or N-1 before the HW WDFM(hardware withdrawl from marketing) is announced.
ibmomvscommandF BPXOINIT,SHUTDOWN=FORKINIT — initiators that are provided by WLM for use on fork and spawn. These initiators time out after 30 minutes on their own, but you can end them by issuing:
ibmissue messageIEA602I ADDRESS SPACE CREATE FAILED. MAXUSERS WOULD HAVE BEEN EXCEEDED . Check from console issuing D A,L if there many SSH* or FTPD* address spaces then issue the command F BPXOINIT,SHUTDOWN=FORKINIT. from the D A,L check for any JOBS names that are same and repeated many times and try and check what is causing so many jobs to be in the same name and cancel them.
ibm omvsdaemona long-running background process that answers requests for services. like long running STC’s. ome examples include inetd , httpd , nfsd , sshd , named , and lpd
ibmzomsfsetupWe need to create a file system and mount it on /SYSQ/var/zsomf– use the job IZUMKFS in SYS1.SAMPLIB
ibmomvscommandcompare diff -R sourcedir targetdir
ibmomvscronTo list the at jobs, issue at -l.
ibmomvscrono schedule regular jobs, issue : crontab myjobs
ibmftpaccessFTP server JES access control z/OS provides a new System Authorization Facility (SAF) resource to control which z/OS users are permitted to use the z/OS FTP server’s JES operating mode. By defining a SAF SERVAUTH class profile for the EZB.FTP.sysname.ftpdaemonname.ACCESS.JES resource, clients can control which z/OS user IDs or groups are permitted to enter the FILETYPE=JES operating mode. With the PTF for APAR PH42618, this function is available on z/OS V2.3 and later.
ibmrexxIPLBCPii HWIREST support for commands from ISV and TSO/E REXX environments. z/OS BCPii delivers support that allows TSO/E REXX and ISV REXX applications the ability to issue commands previously not permitted for those environments. This includes the ability to activate and load LPARs, issue requests to the console, and more This support is available on z/OS V2.4 and z/OS V2.5 with the corresponding PTFs for APAR OA61976. It also requires an IBM z15 server with SE 2.15.0 with MCL P46598.370, Bundle S38 or higher, and HMC 2.15.0 with MCL P46686.001, Bundle H25 or higher
ibmzOSv2.5Allows access to MVS sequentional or partitioned data sets from z/OS UNIX, that have certain formats.
ibmzOSv2.5Dynamic Change Master Catalog, yes, without an IPL
ibmzosv2.5ISPF Updates to ISPF in support of PDSE V2 member generations, and SUBMIT command to add an optional parameter SUBSYS. Access Method Services – IDCAMS – DELETE MASK has two new options TEST and EXCLUDE
ibmnetworkAT-TLS Application Transparent Transport Layer Security (AT-TLS) creates a secure session on behalf of an application. Instead of implementing TLS in every application that requires a secure connection, AT-TLS provides encryption and decryption of data based on policy statements that are coded in the Policy Agent. – The application sends and receives cleartext (unencrypted data) as usual while AT-TLS encrypts and decrypts data at the TCP transport layer.
ibmnetworkAT-TLSSTEPS: 1) Use obey command to activate TCPCONFIG TTLS feature 2) Request Mory to create Profiles: – FACILITY : EZB..INITSTACK with UACC(NONE) – PE EZB..INITSTACK CLASS(FACILITY) ID(*) ACC(R) – SETR RACLIST(FACILITY) REFRESH 3) Create Policies or Copy Policies from TCPIP sample directory 4) Create PAGENT Proc 5) Configure your FTP Server to use AT-TLS or create separate FTP Proc with alternative Port # 6) Use Obey command to activate TN3270 configuration 7) Use the commands above to verify that connections are established under AT-TLS Configurations 8) If everything works then request for System IPL and make sure everything is up without making any further changes
ibmnetworkAT-TLSWe would have to use zOSMF Network feature to create AT-TLS routines and then create an address space : PAGENT on SYSTEM and which runs the policies AT-TLS. Then you would have to create an address space for FTP: FTPTEST and then point to FTP Profile which would use different Port 2121 (Example) We would have to create a Self Signed Certificate though in RACF and which would have to be used in Policies. We would have to use zOSMF Network feature to create AT-TLS routines and then create an address space : PAGENT on SYST and which runs the policies AT-TLS. Then you would have to create an address space for FTP: FTPTEST and then point to FTP Profile which would use different Port 2121 (Example) We would have to create a Self Signed Certificate though in RACF and which would have to be used in Policies.
ibmnetworkAT-TLS3) AT-TLS Policies – This can be created using zOSMF Network Assistant or you can copy the following samples from USS Environment: – /usr/lpp/tcpip/samples/pagent_TTLS.conf – You can copy to /etc and then use your PAGENT Proc to assign the name using .env file in USS. – The sample proc includes FTP , TN3270 and CICS Policies – To use the above sample policy, the changes required: – Port address for FTP/TN3270/CICS – keyring name as it exists in the system Existing Example: /SYST/etc/syst.tcpip.pol
ibmnetworkAT-TLSICH408I USER(USERID ) GROUP(D#826380) NAME(username ) EZB.PAGENT.SYST.INET.TTLS CL(SERVAUTH) INSUFFICIENT ACCESS AUTHORITY FROM EZB.PAGENT.*.*.TTLS (G) ACCESS INTENT(READ ) ACCESS ALLOWED(NONE )
ibmnetworkAT-TLSdefine PAGENT taks to STARTED groupd and assign the same userid starting the TCPIP stc. we also need to have RESOLVER proc enabled as it is a prereq for PAGENT.
ibmzouaibm z open utilities for automation.
ibmzosv2.5The TN3270E migration action is one of them in the workflow (see pictures below), it mentions that “As of z/OS V2R5, TN3270E support for using IBM System SSL for TLS/SSL is removed. You must configure the TN3270E server to use AT-TLS policies.”. With the health check as a means to verify if we are using native TLS/SSL support. I only showed you the health checker’s output to indicate we definitely need to take some actions before we can upgrade to z/OS 2.5 on SYSD (other LPARs are not using TN3270E). There is no other way than to move forward now, it might not take a lot of time to configure the Communication Server with AT-TLS policies. My main concern is with the RUCSA usage in my first migration action email to you, we either need to identify, then upgrade/change the software that is (or are) using user key common storage, or may have to pay extra money to IBM to continue using such feature (which I’m not sure if 3M is willing to pay). It is critical for us to identify these RUCSA software on US and EU production LPARs ASAP, through extracting SMF 30 records of these LPARs, let me know if you need me to do that.
ibmomvscommandUse the z/OS® UNIX pasearch command to query information from the z/OS UNIX Policy Agent. The command is issued from the UNIX System Services shell. pasearch
ibmnetworkcommandTSO NETSTAT TTLS GROUP DETAIL — listing the TTLS groups.
ibmipcsispf invocationStarting IPCS without customized access If access to IPCS has not been customized, you can use the following procedure: 1. Logon to TSO/E. 2. (Optional) — Unless you want to use IPCS in line mode, you can skip this step. To start IPCS in line mode, do the following: a. Add SYS1.SBLSCLI0 to the SYSPROC concatenation: ALTLIB ACTIVATE APPLICATION(CLIST) DA(‘SYS1.SBLSCLI0’) b. Enter the IPCS command: IPCS At this point, you can enter IPCS commands in line mode. You do not need to proceed to the next step unless you want to start the IPCS dialog from IPCS line mode. 3. Start the ISPF dialog: ISPF 4. Choose the TSO/E commands option from the ISPF menu. 5. Start the IPCS dialog by entering the following at the prompt: EX ‘SYS1.SBLSCLI0(BLSCLIBD)’ Select OPTION 0 and update the dump dataset with DSNAME(‘IPCS.SYSF.D230130.T102848.CONSOLE.S00001 ‘)
ibmnetworkAT-TLS4) Pagent Proc: SYS1.SEZAINST(PAGENT) ———— – You would have to setup pagent.env and what it needs to be in env file is included in pagent proc above and there is an example within. Existing Example: /SYST/etc/pagent.env PAGENT Commands: ————— – F PAGENT,QUERY – F PAGENT,REFRESH – F PAGENT,UPDATE – You can Google for PAGENT Commands to get additional commands
ibmnetworkAT-TLS5) AT-TLS FTP Server: —————— Please use the Existing example and note of the SYSTCPD and STDENV DD Statements under SYST System: – SYS1.TCPPARMS(SSLTRACE) – Use as-is – SYS1.TCPPARMS(FTPDATA1) – Change the Keyring name and Port
ibmnetworkAT-TLS6) AT-TLS TN3270 Server: ——————— Please see the following example on SYST System: – TCPIP.SYST.TN3270 : Use the Port configuration which includes “Conntype secure” – You can copy to your TCPIP..TN3270 as alternative port and once tested then you can replace the Primary port with Conntype secure:
ibmnetworkAT-TLS1. TSO NETSTAT TTLS GROUP DETAIL 2. TSO NETSTAT TTLS CONN 391DB DETAIL  You get CONN xxxx # from command: a. D TCPIP,TN3270,CONN 3. Operator Command: D TCPIP,TN3270,CONN
ibmracfkeyringWe can group certificates for any purpose and that groups are generally called as KEYRINGS
ibmnetworkAT-TLSThere are few things we have to remember in Mocha or PCOMM or any other Applications which uses AT-TLS and which is that the Hostname would have to match with what is in the certificate. If we use IP address to connect and use ‘verify certificate’ then it will not work and we have to communicate to the Team that they would have to use hostname instead. The reason I address it is because we have tendency to use IP address to connect to z/OS Host and this one would not work in z/OS v2r5 as well and you can certainly do that test too using AT-TLS Port before moving into production.
ibmzosipl- Address spacehis series of articles is information about z/OS Address Spaces. First let’s explain how they are created. In order to IPL a z/OS system a number of key elements need to defined/created. I’m not going to cover how the Sysres volume is created, just that ICKDSF utility is responsible for creating the IPL Text. The Systems Programmer or Operator logs on to the HMC, selects the LPAR (toggles it unlocked) and then clicks on Recovery and selects Reset Clear. Then the 8 bytes of Loadparm data is specified; first 1-4 is the Unit address of the IODF, the next 2 characters are the Load member suffix, then the IMSI single character (how much do you want to see of the messages during the IPL process, ‘M’ for all messages, a ‘.’ or blank if you want to see none), and the final character identifies the IEANUC0x suffix, where IEANUC01 is the default. The Operator enters the 4 characters of the Sysres Unit Address and clicks on Load and enters the Password to acknowledge the start of the IPL process. The initial Console messages can be located by clicking on Daily and System Messages. In Part 2 I will discuss how the Master Address Space is created and how the Common System information is built and located and the importance of the Segment table
ibmzosipl- Address spaceThe IPL process must find the IODF In the Unit Address Volume specified, or the System enters a B1 Wait State. ReIPL. If the IODF is found and the Load member cannot be found the System enters an 88 Wait State. A ReIPL is required. Once the Load member is located either in SYSn.IPLPARM (where n is 0-9) or SYS1.PARMLIB, then the options specified in the Load member are followed. Once the IPL gets underway the first Address Space that is created is the MASTER, Program IEEMB860 creates this and the JCL is found either in the MSTJCLxx in Parmlib or as a Load module in SYS1.Linklib. There are 3 Common Areas that are created at this time, the System Queue Areas (SQA/ESQA) where Address Space Ids are found, the Link Pack Areas (PLPA/EPLPA) for SYS1.Lpalib and any datasets in the LPALSTxx member providing CLPA has been specified in the SYSPARM member and the Common Service Areas (CSA/ECSA). In each case these are 24bit and 31bit areas. As these 3 areas are being created the CSA/ECSA 24bit/31bit must end on a Megabyte boundary, this occurs no matter what is specified. So for example below the Line, if the allocation goes down over the megabyte by only a few bytes the CSA will take the rest of the megabyte.
ibmzosipl- Address spaceSo we know that the CSA/ECSA both spill down (24bit) and up (31bit) to the next megabyte boundary. So why does it do this? The answer is because of the Segment Table. When an Address Space is created it is copied from the MASTER in order to ensure that this new Address Space has the common areas (SQA/ESQA, PLPA/EPLPA, CSA/ECSA) in the same location. In addition a Segment Table is also created for each Address Space, which is divided up into 1meg chunks. This Segment Table is 2gig is size. Whenever a Virtual Address is reference from the Program Status Word (PSW), the Real Address is located by using the Segment Table as an index to locate the entry in the Page Frame Table and this locates the Real Address. This is handled by the Real Storage Manager. This Page/Frame of Real Storage can be either in Storage or potentially paged out to the Local Page Dataset. This conversion process is called Dynamic Address Translation or DAT processing. DAT processing occurs on this Virtual Address providing Bit 5 in the PSW is turned on to allow for it. The current Segment Table is located due to Control Register 1 pointing to it. In part 4 of this discussion I will take you thru an example of the DAT Process.
Open systemsvirtualizationvirtualizationmultiple addresses in one OS -> virtual instance (LPAR) -> clustering (parallel sysplex) -> cloud -> container (docker, K8S)
Open systemsvirtualizationvirtualization
Open systemsvirtualizationvirtualization
Open systemsvirtualizationvirtualizationhttps://mainframe2cloud.com/Virtualization-Journey-Mainframe-Cloud/
ibmdumpdump memberSYS1.PARMLIB(IEADMCxx) JOBNAME=(TCPIP,OMPROUTE,NET), SDATA=(ALLNUC,SQA,LSQA,SWA,TRT,RGN,SUM,LPA,CSA,PSA,GRSQ) Then we can issue the command DUMP COMM=(*issue name*),PARMLIB=xx
ibmzosmaintenanceCIRATS stands for Compliance, Issue, Risk and APAR Tracking System where APAR means Authorised Program Analysis Report. RSU : Recommended service units. Released by IBM every month for reach product.
ibmnetworkOMPROuteEZZ9308E UNRESPONSIVE NAME SERVER DETECTED AT IP ADDRESS : Check if OMPROUTE is active or not and start the task.
ibmdasd deleteto delete a vsam dataset that has an expiration date set.. DELETE (/) PURGE
ibmnetworkAT-TLSWhen I tried FTP/TLS from SYSXYZ client to SYSXYZ server (both AT-TLS), it failed. After I changed the AT-TLS policy to use different TTLSGroupAction names for FTP client and server, it worked, so probably we can’t share the same TTLSGroupAction configuration item between the FTP client and server in AT-TLS, you might want to change your policy before rolling it out to other LPARs. This is how mine look like now (maybe I should have used the name gAct1~FTPTLS-Clieint instead of gAct~FTPTLS-Server):
ibmzOSidentifyFunctional Registry : helps to idenitify data about funcitons are being used. IBM Function Registry for z/OS provides a simple way to find and enable functions on a z/OS system. A function is anything provided by IBM or a vendor within any z/OS product (such as, for IBM, XCF or CICS). For example, a function registered with the IBM Function Registry for z/OS could be representing a particular service or an operational mode a product offers.
ibmzosmemoryMany programs and users are competing for the use of the system. So how does z/OS® preserves the integrity of each user’s work? One technique is through the use of multiple storage protect keys. Under z/OS, the information in central storage is protected from unauthorized use by means of multiple storage protect keys. A control field in storage called a key is associated with each 4K frame of central storage. When a request is made to modify the contents of a central storage location, the key associated with the request is compared to the storage protect key. If the keys match or the program is executing in key 0, the request is satisfied. If the key associated with the request does not match the storage key, the system rejects the request and issues a program exception interruption. https://www.ibm.com/docs/en/zos-basic-skills?topic=storage-what-is-protection
ibmsysplexcfrmYour understanding is correct. If you have activated a policy using CF216T and CF217T and CF116T and CF117T instead of activating CFRMPOL3 that removed CF116T and CF117T, the authority data in CFRM CDS for CFs CF116T and CF117T would remain the same authority data that was in CFs themselves. Then, when activating CFRMPOL1 you would not experience the TAKEOVER PROHIBITED issue. I understand you have activated CFRMPOL2 with all 4 CFs before activating CFRMPOL3. So if you activate CFRMPOL2 and it remains the current policy until your CFRMPOL1 is activated, you will have no issues with the CFs. Or if you activate any CFRM policy other than CFRMPOL2 that contains definition for all 4 CFs, executes reallocation and then activates CFRMPOL1, you will be successful.
ibmsysplexcfrmAuthority data is used to establish CF ownership by a sysplex; it has a value containing the sysplex name and a timestamp and is stored in the CFRM couple data set as well as in the CF. When you started CFRMPOL3 to remove both CF116T and CF117T from active CFRM policy, authority data was removed from CFRM CDS for those CFs. However, since the CFs were still activated, the CFs themselves had their last authority data as non-zero. Then, when CFRMPOL1 was started, authority data in CF and in CFRM CDS were compared and there was a mismatch, so message IXC518I with TAKEOVER PROHIBITED was received, showing that those CFs were owned by another sysplex.
ibmsysplexcfrmIn order to avoid this in future tests, you should either not start a policy that removes the production CFs or use CFRMTAKEOVERCF(PROMPT) in COUPLExx so operator is prompted and is allowed to authorize the sysplex to regain CF ownership when DR test is over. With any of the above actions, you won’t need to shutdown the CFs in order to gain their ownership again.
ibmsysplexcfrmIXC518I SYSTEM SYST NOT USING 615. TAKEOVER PROHIBITED. TAKEOVER PROHIBITED means the owner authority stored in the coupling facility does not match the authority in the CFRM CDS and the COUPLExx parmlib member indicates that the operator should not be prompted to use the coupling facility for an authority mismatch. When the first LPAR makes connection to the CF LPAR, it will read the ownership info from the CF (i.e TOD and plex name) and compare it with the data in the currenct CFRM CDS. When the info returned from the CF is non-zero (i.e implies it was OWNED by some plex already) and CFRMTAKEOVERCF(PROMPT) is not found in the COUPLExx member, then this CF cannot be used by this plex. Without the CFRMTAKEOVERCF(PROMPT) specified in your COUPLExx, the default action is to deny takeover which results to the IXC518I as you encountered. Once you deactivate/ activate the CF LPAR again, that ownership TOD in the CF which was previously matching what was in the old CFRM CDS is cleared up and CF ownership could be claimed. You will need to add CFTAKEOVERCF(PROMPT) in your COUPLExx so operator will be prompted to allow the CF to be taken over when you do a DR test with the same CFs from production.
ibmzosipl- Address spaceLet’s discuss the Dynamic Address Translation process. Recall there is a Segment Table per Address Space. There is one Program Status Word (PSW). The 31 Bit PSW is 8 bytes in length. The address of the next instruction occupies the second 4 bytes of the PSW. So let’s assume that the next Virtual address is : 002FE110. The 002 is the Index into the Segment Table, the FE is the pointer into the Page Frame table and the 110 is the Displacement. So recall that the Segment Table is broken up into 1 meg chunks. CR1 points to the current Segment Table for the current Address Space. DAT takes the 002 and finds that in the 3rd entry. 000, 001, 002…7FF. There is one Page Frame table for each Segment Table entry. The next part of the Virtual Address is FE, this is the displacement entry down this table from 00, 01, 02…FE, FF. Entries in this table are 4K each. So DAT counts down to entry number FE and finds address 0FCFD. This is a 4k Frame so the full address is 0FCFD000. Dat returns to the PSW and takes the Displacement 110 and adds that to the Frame address 0FCFD000 this gives us Real Storage Address of 0FCFD110. To complete the final part of this article is how to discover where the CSA ends and the size of the 24bit Private Area
ibmzosipl- Address spaceIEFBR14 is a nothing utility supplied by IBM. It doesn’t perform any function and has only 2 instructions, a clearing of Register 15 and branch on Register 14. However as it does nothing it can be used safely for the following purpose. An Abend Code S822 is returned when the specified region size is not available. So in this you can find out the size of the 24bit Private Area and therefore how the Common areas are designated, to make them more tangible for you. //JOBCARD… //STEP1 EXEC PGM=IEFBR14,REGION=6M Specify this region size in a Job, and you should get a return code 0f 0 which says that this region size is available. Now run again with 8M and again you should get return code 0. Now try 9m and you should receive a return code of S822, if not try 10M. This will surely give you S822, keep going 12M, 14M and 16M. Every time you will receive a Return code of S822. Now try 17M and you will receive a Return code of 0. So z/OS will give you 17M but not 16M and therein lies the Structure of an Address Space. You cannot allocate any Private Area size in 24bit that includes the Common Areas. I like to teach trainee Mainframe Systems Programmers this, in order for them to understand how an Address Space is defined and built from the Master and how the Segment table for each Address Space has the system areas defined in the same place.
ibmnetworkAUTLOGmention AUTLOG keyword in TCPIP PROFILE file so the child process started.
ibmsysplexCFRMIf the policy that is active before you activate a policy with all 4CFs already contains CFs CF116T and CF117T, their authority data will match the authority data in the CFRM couple data set. However if before the policy with all 4 CFs, you activate a policy removing CFs CF116T and CF117T, the authority data will be zeroed from the CFRM couple data set and then authority data will not match.
ibmmodernizationGITHybrid Git Experience: For Endevor users wanting to introduce a Git experience without the risks of migrating code and disrupting existing workflows, Bridge for Git is the solution. It accomplishes this by synchronizing a ‘source control mirror’ on the Git enterprise server to enable both Git access and native-Endevor access at the same time (see Bridge for Git whitepaper for a thorough explanation). A robust VS Code extension for Bridge for Git is also available. https://medium.com/modern-mainframe/ca-endevor/home
ibmmodernizationGITGIT native approach For Git-native AppDev, Broadcom introduced Team Build, a super-lightweight, processor-based build engine that enables teams to collaborate natively using enterprise Git repositories while building on the z/OS platform. Team Build is independent of Endevor and can be used for any build and ship needs for z/OS. A simple and easy-to-use tool, it converts build logic in JCL and makes it maintainable off-platform with the most popular scripting language, JavaScript. Here’s an introduction of Team Build for Endevor users.
ibmjes2jobdefIf you specify DUPL_JOB=DELAY on the JOBDEF statement or DUPL_JOB=DELAY is the default, no two batch jobs with the same name will execute at the same time in the MAS, except when DUPL_JOB=NODELAY is specified on the JOBCLASS(x) statement. If you specify DUPL_JOB=NODELAY on the JOBDEF statement, jobs with the same name can run at the same time, no matter what DUPL_JOB= is specified on the JOBCLASS(x) statement.
ibmjes2jobclass/d wlm,schenv=xx
ibmwlmcommand/d wlm,schenv=xx — listing the scheduling environment /F WLM,RESOURCE=resource_name,setting (setting is ON/OFF/RESET)
ibmjes2historyJES implemented early “client server” • RJE/RJP – Remote Job Entry • Allows jobs from client computers to be run on MVT and get output back (1967) • Uses BSC and SNA protocols
ibmjes2tasksJES2 : Local JES2 requests Input Converter BSC NJE SNA NJE JES2AUX : Remote buffer retrieval Owns Resource JES2MON : Jes2 Monitor JESXCF : XCF interface User : interpretor input extended status PrinterFSS : FSS printer NETSERV : NJE over TCP/IP JES2CI : Converter interpretor
ibmjes2command$D jobclass(x),LONG — to list all the parms.
ibmjes2init$HASP373 A93LNZZA STARTED – WLM INIT – SRVCLASS BATCH – SYS SYST $HASP373 A93LNZZA STARTED – INIT 14 – CLASS Q – SYS SYSQ If we have MODE as JES2 and also specified SCHENV=xxxxx then the job will go into AWAITING status and we need to manually issue the /$S jobnumber command to start the jobs execution. WLM class init are not specified in the JES2 parm. WLM will start new initiators, as needed, to meet the performance goals of the work. If no SCHENV is specfied then WLM will execute the jobs on any of the systems in XEQMEMBER if the mode is JES then any no. of jobs submitted to class will only execute on the submitted system. $P XEQ — stops execution of jobs in any class we can either issue /$S XEQ to release all job classes or we can issue the command /$S JOBxxxxx to start a specific job. The $P XEQ command causes all WLM initiators on that system to be “flagged” to terminate. The $S XEQ command enables WLM to start new initiators (without needing to wait for the old initiators to end)
CAtopsecretcommandTSS PE(IT010481) DSN(I010481) ACC(ALL). to permit dataset access to create, update, read to userid in PE and HLQ in DSN.
ibmwlmispf invocationex ’SYS1.SBLSCLI0(IWMARIN0)’ — to invoke ISPF wlm panels.
ibmwlmcommandSETXCF COUPLE,TYPE=WLM,ACOUPLE=(SYS1.WLMP,SYS001) : Make SYS1.WLMP the alternate using the command: SETXCF COUPLE,TYPE=WLM,PSWITCH : Switch SYS1.WLMP to primary using the command: SETXCF COUPLE,TYPE=WLM,ACOUPLE=(SYS1.WLMA,SYS002) :
ibmwlmsecurityRDEFINE FACILITY MVSADMIN.WLM.POLICY UACC(NONE) NOTIFY(user) — class to restrict access to wlm.
ibmzostraininghttps://www.ibm.com/training/search?query=IBM%20Z
ibmcdpregexregex filter Construct a regular expression Construct the following regular expression to match information starting with $HASP373 and containing the task name SMF30 “$HASP373 SMF30 STARTED – INIT A – CLASS A” ^\$HASP373.+SMF30.+$ You can verify it with online regular expression tester. regex101.com
ibmzcxIBM zOS container externsions
ibmzcxtheoryit will work with z14 or later with Container Hosting foundation feature enabled. Featuer code 0104. Deploy linux on z software components as docker container in a z/OS system, in direct support of z/OS worklaods. No requirement of seperate linux server. zCX instance runs in a seperate address space . Docker container running inside a zCx instance have noway to access teh memory or data contained in any other address space running. zcx workloads are zIIP eligible. zCX – A turn key virtual docker server software appliance. prepackaged linux docker appliance. Supports deployment of any software available as a docker image for linux on z No direct access to underlying linux kerner.
ibmwlmtheorySYS1.SAMPLIB(IWMINSTL) — is the job to install a serivce definition if not doing with panels.
ibmzosplanning checks1. Are all the ISV and IBM products upgraded to z/OS V2.5 compatible versions? 2. Is z/OSMF configured and in use? we would need this as z/OS would be delvierd as Workflow install method? 3. Have we converted all the HFS file systems to zFS systems? 4. HAve you checked the usage of UCSA on the systems and addressed to remove its usage or buy the RUCSA feature? 5. AT-TLS would be requried for z/OS V2.5 are your systems updated to use AT-TLS? 6. Infoprint Server intends to enable dynamic configuration as the default behavior. This change in default behavior will be mandatory and not reversible? 7. z/OS V2.4 is the last release to support the ISPF Workstation Agent (WSA), also known as the ISPF Client/Server Componen 8. If using JES2 then it would not be supported after z/OS V2.5. Are you running JES3? 9. Only z/OS V2.3 or V2.4 and z/OS V2.5 can be in sysplex. Co-exsistence / Fallback / upgrade can be done between these 3 versons only. are any of your systems running z/OS V2.2 or older? 10. z/OS V2.5 is supported on z13s and later machines. Are you running zMachine older than z13S?
ibmzosplanning https://www.newera.com/INFO/090821_V2R5_Part_1.pdf
ibmzoswebsitehttp://www.ibm.com/software/support/lifecycle/
ibmwlmpolicy update1. Logon on to WLM panels and select option2 to open the policy using couple dataset. 2. select 1 – policy and then option 3 to copy the policy that you would be working with. 3. You can also select option SAVE in FILE menu in the first panel and Copy the policy to a dataset. 4. You can select the new POLICY that you create/copied and updated the required. 5. selected option 10 : scheduling environment 6. line commad 1 to create a new scheduling environment 7. provided a name as SYSTSYSQ 8. line command A to add resources and selected the resources from available list. 9. updated the status as ON for the resources 10. from utilities option install the updated WLM policy — new definition is installed into the couple dataset. 11. from utilities option activate the updated wlm policy 12. from SDSF issued the command D WLM,SCHENV=SYSTSYSQ,SYSTEM 13. If we are activating new resources when creating a new Scheduling Environments then we need to set the STATUS of the resource as ON to make the scheduling environment available on the system. It has to be done on each of the systems in the sysplex where the SCHENV is required.
ibmzoswebsitebasics of Mainframe https://www.ibm.com/docs/en/zos-basic-skills?topic=zos-concepts
Open systemscontainerstheorya form of OS-virtualization has risen that we refer to as containerization technology Virtual System — BASE system –> Hypervisor –> Guest OS –> APP Container — Base system –> Host operationg system — > Container Runtime –> App Docker company pioneered in the concept of Container runtime and the concept of container format (image).. so mostly we call docker containerizaiton / docker imager and so on. Both together are called as OCI. The Runtime Specification dealing with how to unpack a downloaded image into a runtime filesystem bundle that any OCI-compliant container runtime can run. The Image Specification that describes how the content is structured, what immutable layers exist, where to find them and how to unpack them, how the application is started and what arguments and environment variables are used, to name a few.
ibmhmcsetupto make chpid offline for CF lpars between 2 systems: Issue the command /D CF on the system and make note of the CHPID that it is connected to for another CF lpar. Logon to HMC select the MAINFRAME system under SYSTEMS MANAGEMENT select the lpar(image) for CF go to operating system messages issue the command D CHPID ALL — to check the status of CHPID then to bring it online or offline CON xx ONL / CON xx OFF we can issue the HELP command in OPERATING SYSTEM MESSAGE panel to check the commands that we can issue for the CF LPAR.
ibmhmcsetupto change the CF TIMER status (Coordinated timing network) Select the SYSTEMS MANAGEMENT select Manage Systems TIme select Modify timer allocation select the box and set it to CTP or STP select APPLY after the changes are done. check the pictorial representation to understand the status.
ibmnetworkresolverin BPXPRMxx RESOLVER_PROC(procname|DEFAULT|NONE) Specifies how the resolver address space is processed during z/OS UNIX initialization. The resolver is used by TCP/IP applications for name-to-address or address-to-name resolution. In order to create a resolver address space, a system must be configured with an AF_INET or AF_INET6 domain. DEFAULT Causes an address space named RESOLVER to start, using the system default procedure of IEESYSAS. The address space is started with SUB=MSTR so that it runs under the MASTER address space instead of the JES address space. NONE: Specifies that no address space is to be started. If you are using z/OS Communications Server IP, the resolver must be started before TCP/IP can be started. TCP/IP does not initialize until the resolver address space is started. procname : The name of the address space for the resolver and the procedure member name in the appropriate proclib. procname is one to eight characters long. The procedure must reside in a data set that is specified by the MSTJCLxx parmlib member’s IEFPDSI DD card specification.
ibmracfsetupJES2 interface for FTP using PUT and GET command to submit and retreive the output of jobs. APAR PH42618, available for z/OS 2.3 to 2.5, introduces new SERVAUTH class resource EZB.FTP.sysname.ftpdaemonname.ACCESS.JES to control which users are permitted to use FTP in JES mode. When the SERVAUTH class is active and a profile is defined for this resource, only users with READ access to the profile are allowed to use JES mode.
ibmsdsfsyslogtcrrrrrrr sysname yyddd hh:mm:ss.th ident msgflags < message > Reading a syslog: t – The first character indicates the record type: D – Data line of a multiple-line message; this line may be the last line of the message. E – End line or data-end line of a multiple-line message. L – Label line of a multiple-line message. M – First line of a multiple-line message. N – Single-line message that does not require a reply. O – Operator LOG command. S – Continuation of a single-line message or a continuation of the first line of a multi-line message. This continuation may be required because of the record length for the output device. W – A message that requires a reply. X – A log entry that did not originate with a LOG command or a system message. c – The second character indicates whether the line was generated because of a command: C – Command input. R – Command response. I – Command issued internally. The job identifier contains the name of the internal issuer. blank – Neither command input nor command response. rrrrrrr – routing codes
Open systemsnetworkIP addressIP address IPV4 is divided into 2 segemetns: Network ID and HOST ID. Ex. 192.168.0.1 to Identify the NEtwork ID. Check the SUBNET MASK. if subnet mask is 255.255.255.0 then Network ID is 192.168.0 and host id is 1.
open systemsnetworkIP addressIP address and SubnetMask values are the 8bits represented in decimal value of the resultanant binary value. 255.255.255.0 — 11111111 11111111 1111111 00000000 192.168.0.1 — 11000000 10101000 0000000 00000001 An IP address as 192.168.0.1/24 — says IP is 192.168.0.1 and subnet mask is 255.255.255.0
open systemsnetworkIP addressCLASS A — subnet mask is 255.0.0.0 CLASS B — Subnet mask is 255.255.0.0 CLASS C — Subnet mask is 255.255.255.0
open systemsnetworkIP addressRouter — of the other functins a router is mainly used to connect 2 systems with diff IP address range.
ibmGRSgrscommand to check the contenctions D GRS,ANALYZE,WAITER D GRS,ANALYZE,BLOCKER
ibmzoswebsitehttps://www.mail-archive.com/ibm-main@listserv.ua.edu/index.html — check this link for any issue that we are facing we may have a thread on the same issue
ibmwlmtheoryFirst create a workload — grouping of work select the service class for each workload group. Each service class needs a time period with a goal updated.
ibmwlmcommandsV WLM,POLICY=policy — to acivate a new policy.
ibmwlmtheoryService Class — specifies goals of worklaods /can have one or more periods Classification rule — a subsystem type, such as cics, db2 / must have a default service class / matches worklaod to service classes. Worklaod — groups one or more services calsses
ibmsmftheoryz/OS records information about each service class and period in SMF type 72 records
ibmzostheoryPROGRAM DIRECTORY : This program directory is intended for system programmers who are responsible for program installation and maintenance. It contains information about the material and procedures associated with the installation of IBM Migration Utility
ibmzoswebsitePSP : Preventive Service plannning http://www14.software.ibm.com/webapp/set2/psearch/search?domain=psp
ibmzostheoryService level information: _x0002_ SMCyyww identifies the service level in terms of CBPDO cycles, where yy is the year and ww is the CBPDO week. For example, 0842 is the forty-second CBPDO week in 2008. _x0002_ PUTyymm identifies the monthly service level in terms of ESO cycles (formerly PUTs), where yy is the year and mm is the ending month of the ESO cycle. For example, 0809 is service through September 2008.
ibmzosinstallationCBPDO : CBPDO (Custom-Built Product Delivery Option) is an entitled software delivery package consisting of uninstalled products and unintegrated service. There is no dialog program to help you install, as there is with ServerPac. You must use SMP/E to install the individual z/OS® elements and features, and their service, before you can IPL.
ibmzosinstallationSERVERPAc : ServerPac is an entitled software delivery package consisting of products and service for which IBM® has performed the SMP/E installation steps and some of the post-SMP/E installation steps. To install the package on your system and complete the installation of the software it includes, you use the CustomPac Installation Dialog.
ibmzos websiteLink to all zOS documentation. https://www-40.ibm.com/servers/resourcelink/svc00100.nsf/pages/zosInternetLibrary?OpenDocument
ibmzostraininghttps://ibmzxplore.influitive.com/users/sign_in — we can train using vscode with a real mainframe.
ibmwlmtheoryIMS transactions, Db2 workloads and batch jobs have been divided into groups called service classes. These service classes have been divided into periods, and each has been set performance goals. For example, 90% of our billing CICS transactions (those beginning with ‘A’ in CICS region PCICS1) should complete in 0.5 seconds. Our hot batch is very important, and should have a velocity (time executing vs time waiting) of 50. Each has also been set an importance number: we now know which are more important, and which aren’t.
ibmwlmtheoryPerformance Index WLM assigns a number to every service class and period: a Performance Index (PI). You can hop to the IBM manuals to get the details about PI, but the basics are: PI = 1: exactly achieving the performance objective PI > 1: not achieving the performance objective (the higher the number, the worse the performance) PI < 1: exceeding the performance objective Hmmm. So WLM already has a number that tells us if our workloads are achieving their performance goals. Even better. WLM records this PI periodically in the SMF Type 72 records. You can also see the PI using monitors like RMF Monitor III, IBM Omegamon, Broadcom SYSVIEW and more. So, how does this help?
ibmzosv2.5https://github.com/IBM/IBM-Z-zOS/blob/main/SMF-Tools/SMF30_USERKEY_COMMONAREA/REXX_CODE.txt
ibmzoswebpageSteps to cerate a apache webserver 1) Create an installation directory for the server configuration files. For example: cd install_directory mkdir -p etc/websrv1 2) Change the directory to the IBM HTTP Server – Powered by Apache product directory: cd /usr/lpp/ihsa_zos/.31bit 3) Run the installer program, bin/install_ihs, to install the HTTP server product files in your installation directory ./bin/install_ihs install_directory/etc/websrv1 8081 — chekc for available port 4) check of the installaiton is good cd install_directory/etc/websrv1 bin/apachectl -v bin/apachectl configtest
ibmzoswebpagesteps to create a apacahe webserver – 2 5) Use this command to start the IBM HTTP Server – Powered by Apache: bin/apachectl start 6) invoke the webpage using the link http://system ip :port used 7) bin/apachectl stop — to stop the apache web server 8) we can change the default index page at install_directory/etc/websrv1/htdocs and change the index_ihs.html
ibmzoswebpagesteps to create a apacahe webserver – 3 We can also start it as an STC using the below proc and we need to have a STARTED profile defined in RACF //*——————————————————— //IHSAE001 PROC ACTION=’start’, // DIR=’install_directory/etc/websrv1′, // CONF=’conf/httpd.conf’ //*——————————————————— //IHS EXEC PGM=BPXBATCH, // PARM=’SH &DIR/bin/apachectl -k &ACTION -f &CONF -DNO_DETACH’, // REGION=512M //STDOUT DD PATH=’&DIR/logs/proc.output’, // PATHOPTS=(OWRONLY,OCREAT,OTRUNC), // PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP) //STDERR DD PATH=’&DIR/logs/proc.errors’, // PATHOPTS=(OWRONLY,OCREAT,OTRUNC), // PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP) // PEND
ibmzoswebpageSteps to create a apache webserver – 4 The configuration file for the IBM® HTTP Server – Powered by Apache, conf/httpd.conf, contains directives that customize the HTTP server. You must add directives to the configuration file so that the HTTP server can display Infoprint Central web pages.
ibmzos HCD/IODF/activate iodfxx,test — to test before activating a new IODF that is created.
ibmsmpeissuesGIM37904E ** APPLY PROCESSING FAILED FOR SYSMOD ROXXXXX BECAUSE OF AN ERROR DURING A PREVIOUS ATTEMPT TO RESTORE. Try the below steps to remove the RESTORE update on the PTF. 1. First list the SYSMOD using the stat //STEP1 EXEC PGM=GIMSMP,PARM=’DATE=U’ //SMPCSI DD DISP=SHR,DSN=CSI.NAME //SMPHOLD DD DUMMY //SMPPTFIN DD DUMMY //SMPLIST DD SYSOUT=* //SMPCNTL DD * SET BDY(targetzone). LIST SYSMODS(sysmod). //* Make a not of the time stamp from the list for REStore something like below from the list output. STATUS = REC APP RES ERR RES = 16.000 10:00:00 2. Run the below jcl to remove the RES entry for the SYSMOD. //SMPCNTL DD * SET BOUNDARY(targetzone). UCLIN. DEL SYSMOD(sysmod) RESTIME(HH:MM:SS) RESDATE(yyddd) REST . ENDUCL. //* this will remove the RES entry for the sysmod when we run the LIST command again. Now we can run the APPLY REDO without any issues.
ibmomvscommanddu -sk * — to find the largest files in a directory with lot of sub directories.
ibmnetworkNFShttps://community.ibm.com/community/user/ibmz-and-linuxone/blogs/anthony-giorgio2/2020/04/02/shortcut-bringing-up-zos-nfs?lang=en Step 10 is missing the example filesystem syntax for the BPXPRMxx member: FILESYSTYPE TYPE(NFS) ENTRYPOINT(GFSCINIT) PARM(’biod(8)’) ASNAME(mvsnfsc) You will need to configure an NFS export (if non-exist) on the server which you intend to use. You can query the available exports on a server with: /usr/lpp/NFS/showmount -e From OMVS you could mount AIX or Netapp with the following command: /usr/sbin/mount -t nfs -f NFS.V4.MOUNT -w 0 -o “:/,vers(4),xlat(y)” /
cadispatchcheckSteps to check the PRIVATE STORAGE KEY Option 1 – To see what KEY the program is running in via DISPATCH: – Logon to Dispatch – At the Dispatch ENTER NEXT TASK CODE prompt… Type: DCPROFILE [enter] On the resulting 1st screen look for: PRIMARY STORAGE PROTECT KEY: ??
ibmzomsfinstallationHow to istall serverpac products using zOSMF. https://www.ibm.com/support/z-content-solutions/serverpac-install-zosmf/
ibmzosmemoryRUCSA: Restricted use common storage area. https://www.ibm.com/docs/en/zos/2.4.0?topic=rucsa-migrating https://zos-hot-topics.com/2021/user-key-common-and-restricted-use-of-csa/
ibmzosmemoryEach page frame (4k) is allocated a 4-bit Storage key + Fetch Protection bit at the CPU level 16 possible Storage key values 0 – 7 : system and middleware. 0 is the master key 2 and 4 are reserved keys and can be used by ISV products. 8 : mostly for users 9 – 15 : used by programs that require virtual = real memory The storage key of a memory page is compared with the protection key in the PSW register
ibmzosmemoryReal storage : frames (physical CPU memory) Virtual : pages in multiple address spaces created through DAT) Auxiliary : slot s on (DASD) volumes (paging datasets)
caca-11command to check hte values in OINQ panel: . In order to see the display for the OINQ command you will need to provide a valid profile. You can type (arts)mp as the profile value
ibmzomsfsoftware managementto software management tool and install products in zOSMF we need to get the dataset profiles CB.OS*.** and CB.ST*.** . Read access to the IZUADMIN and IZUUSER groups. or we will have issues when trying to download the product.
ibmzosmemoryThe system uses a portion of both central storage and virtual storage. To determine how much central storage is available to the installation, the system’s fixed storage requirements must be subtracted from the total central storage. auxiliary storage resources that are used for virtual storage paging, continue to be shared by all address spaces in the system Allocated and referenced virtual storage can be backed by either real storage or paged-out to auxiliary storage. While there is no theoretical limit to 64-bit virtual storage ranges, practical limits exist to the finite real storage frames (formally called central storage) and auxiliary storage pages (slots) that back the virtual storage.
ibmzosmemorythe amount of central memory defined to each system is defined in the Activation profile of type Image in HMC
ibmzosconcpetshttps://www.ibm.com/docs/en/zosbasics/com.ibm.zos.zconcepts/zconcepts_book.pdf
ibmzOAUtheoryhttps://www.ibm.com/docs/en/zoau/1.2.0?topic=installing-configuring-zoau&
ibmzosmftheoryto run 2 zOSMF environments in the same sysplex. If you are using more than one z/OSMF server, you will have to make sure they have different/separate server userdir pathfile directories, for example both servers: /SERVER1/global/zosmf and /SERVER2/global/zosmf, which also both should have different file system mounted so that there is no conflict. Yes, you can run z/OSMF only on one of the systems/LPAR’s in the sysplex and it could be shared the system server file path directory /usr/lpp/zosmf … Server running on a second LPAR in the sysplex can be reached using Workflows and and REST API services within z/OSMF to access/connect to the second z/OSMF server and perform specific operation or obtain data and etc.
ibmzomsftheory AUTOSTART group start up process. https://www.ibm.com/docs/en/zos/2.4.0?topic=configurations-autostart-concepts-in-zosmf
ibmzosmfTLSAll you need to do is paste the IZU_SSL_PROTOCOL=TLSv1.2 line into local_override.cfg, no other additions are necessary. You can then use local_override.cfg to change active_configuarion.cfg settings in the future as well. It is not necessary to let anywhere else in z/OSMF know about local_override.cfg as it is a z/OSMF concept that is automatically picked up by the server.
ibmzOAUtheoryThe MVS datasets names have to be in caps only.
ibmzoscommand-SETPROG LNKLST,TEST,NAME=CURRENT,MODNAME=IEFBR14 : to check for a member in linklist
ibmomvsprofile/etc/profile — this is the default profile that we need to update for any products to work for all the users.
ibmzosmfapihttps://system.com/zosmf/api/explorer/ — shows the available api.
ibmnetworkAT-TLS We were wondering why the AT-TLS is working good without having the EZB.INISTACK.sysname.tcpname security profile when we did the update dynamically and failed when we did it with an IPL. I hope the below statement explain it. “The resource EZB.INITSTACK.sysname.tcpname in the SERVAUTH class controls the ability of applications to open a socket before the AT-TLS policy is loaded on the TCP/IP stack”
ibmzoswebsitedocumentation https://www.ibm.com/docs/en https://www.ibm.com/docs/en/zos/2.5.0
ibmzos websiteIBM open products download https://ibm.github.io/mainframe-downloads/downloads.html
ibmzoscontention – storageF CATALOG,LIST — lists all the job waiting for contention. F catalog,end(id),redrive — id is form the list command for the job that we want to cancel. F CATALOG,TAKEDUMP — to take dump of catalog sTC.
ibmzoscommandsd IPLINFO,sysparm — syspram can be any parm that can be specified in IEASYSxx, it would give us the value as specified in IEASYSxx while ipling the system. We need to be careful whil using the values from the output as we may have changed the values dynamically. d iplinfo,boost,state — to check if we are using the ziip/speed boost while ipling the system.
ibmzoscommandscommand to display the current running command and stop them if required. CMDS DISPLAy — display’s all the commands CMDS ABEND,CMD= — to abend any running command CMDS REMOVE,CMD= — to remove any commands that are waiting to be executed.
caCA-7automationPre-checks for cancel use case So cancel use case pre checks would be, 1. Multiple instances should be routed to BAA team 2. REPT mode jobs should be routed to BAA team.
ibmzos HCD/IODFto invoke HCD panels in ISPF : please the following command tso ex ‘SYS1.SCBDCLST(CBDCHCD)’ — ensure to have SYS1.SCBDCLST in SYSPROC concatenation.
ibmzos
ibmzoslogrecdump a logrec dataset //*—————————————————————— //* COPIES SYS1.LOGREC TO HISTORY FILE MVS.LOGREC.HISTORY //*—————————————————————— //HISTORY EXEC PGM=IFCEREP1,REGION=1024K, // PARM=’ACC,ZERO=N’ //SERLOG DD DISP=(OLD,KEEP),DSN=SYS1.SYSR.LOGREC //ACCDEV DD DISP=(NEW,CATLG,DELETE),DSN=SYS3.SYSR.LOGREC.D081022, // UNIT=3390,SPACE=(CYL,(12,2)), // DCB=(RECFM=VB,BLKSIZE=6144) //DIRECTWK DD DISP=(NEW,DELETE),UNIT=3390,SPACE=(CYL,12,,CONTIG) //EREPPT DD SYSOUT=A,DCB=BLKSIZE=133 //TOURIST DD SYSOUT=A,DCB=BLKSIZE=133 //SYSIN DD DUMMY /*
ibmzoslogrecclear a logrec full dataset //IFCDIP00 JOB CLASS=A,MSGLEVEL=(1,1),MSGCLASS=X,NOTIFY=&SYSUID //******************************************************************** //* CLEAR AND INITIALIZE HARDWARE EVENT RECORDER DATASET * //******************************************************************** //IFCDIP00 EXEC PGM=IFCDIP00 //SERERDS DD DSN=SYS1.LOGREC,DISP=OLD, // VOL=SER=MVSRES, // UNIT=3390
ibmomvscommandTO write to a file using echo commmand echo “how are yoi” > /u/a93lnzz/text.xtxt
ibmzOAUcommanddecho — to write data to ps from omvs.
caccsproductscairimu — command to list all the products initialized during CAS9.
caMRItheoryMainframe Resource intelligence is a tool that can produce reports of the products running on the system and who is using it similar to IBM TADz. Along with reports it also provide options for a lot of detailed analysis.
ibmSYSPLEXdefineCouple datasets : IXCL1DSU is the utility to define, alter couple datasets.
ibmsysplexLOGRecSetps to move a logr couple dataset to a different volume. 1. issue the command /D XCF,COUPLE — to make note of the current active couple datasets. 1. Use the utility IXCMIAPU to list the current content of couple dataset for logr. DATA TYPE(LOGR) REPORT(YES) 2. make note of the Format level, SMDUPLEX, LSR, LSTRR, DSEXTENT 3. Use the sample job SYS1.SAMPLIB(IXGLOGRF and IXGLOGZF) to define a new couple dataset using the values noted from the listing. 4. issue the command /SETXCF COUPLE,TYPE=LOGR,ACOUPLE=(new defined couple,volume). to update the alternate couple dataset to the new one created. 5. wait for sometime for the duplexing to happen from primary to alternate 6. Update COUPLExx member to point to the new created datasets. if we get an error like ALLOWABLE NUMBER OF SYSTEM RECORDS IS LESS THAN CURRENT PRIMARY then we need to add teh MAXSYSTEM parm in teh definition.
CACA-7AutomationAutomation flow for Ca-7 restart request. First we get a restart ticket. LQ,JOB=jobname — check if the job is in REQ queue — if more than one job with the same name send it to BAA. Only one job in queue – check the time and compare with the ticket time… less than 1 hr or 2 hr… you will proceed else send the ticket to BAA team, LQ,JOB=jobname – any conditions like “JCL OVERRIDE REQUIRED” — if true then issue command to cancel JCLOVERIDE and proceed else bypass cancel JCL OVERRIDE and proceed. Issue the restart command RESTAT JOB=JOBnumber (proc and procstep) … LQ,JOB=jobname – it has to be inactive queue or req queue. if job is in REQ queue send to BAA team. if job is active queue close the incident issue LPRRN JOB=jobnumber — job completion log and copy it to incident and close it …
IBmnetworkat-tls1. Need to make sure the keyrings are defined in the systems already – SYSxKEYRING, 2. EZB.INITSTACK.xxxx.TCPIP permission across the systems, 3. Issue related to reading the certificate on SYSR, ICH408I USER(RACFSTC ) GROUP(C01#STC ) NAME(SVCACCT DEFAULT STC ) 491 OPS4111O RULE GROUPF.PSFALRT HAS EXCEEDED THE AOF FIRING LIMIT OF 1 IRR.DIGTCERT.GENCERT CL(FACILITY) INSUFFICIENT ACCESS AUTHORITY ACCESS INTENT(CONTROL) ACCESS ALLOWED(READ ) 4. Access related issue for my id to issue vary command for TCPIP, V TCPIP,,SYNTAXCHECK,TCPIP.SYSR.TCPIP IEE345I VARY AUTHORITY INVALID, FAILED BY SECURITY PRODUCT OPS4111O RULE GROUPF.PSFALRT HAS EXCEEDED THE AOF FIRING LIMIT OF 1 ICH408I USER(ABVA9ZZ ) GROUP(D#826380) NAME(PRAWIN VENKATACHALAM) 820 MVS.VARY.TCPIP CL(OPERCMDS) INSUFFICIENT ACCESS AUTHORITY ACCESS INTENT(UPDATE ) ACCESS ALLOWED(NONE )
IBMzCHATopstheoryFeatures of IBM zChat ops: Analysis and operation of z environment : be able to get alerts from monitoring tools and take actions right from zchat ops for issuing mvs/automation commands as required. it would communicate with the tools through IBM service management unite tool. Integration with event management : Data Sharing:Z ChatOps supports Launch-in-Context links provided in IBM Service Management Unite. Users can copy those links with one click and paste the links into the channel of the chat platform to easily share the data from SMU dashboard
IBMzCHATopstheoryDiagnose → The chatbot can help you collaborate with your colleagues fo understand the cause and the solution., Detect → The chatbot can notify you, the way you want, when there is a problem before your customers even notice!, Fix → The chatbot can execute your commands (independently too) to repair problems-more automation, more quality., Isolate → The chatbot will send detailed information to the collaboration channel to help you identify the problem.
ibmzosoperlogenabling operlog in a system. https://www.ibm.com/docs/en/zos/2.3.0?topic=in-enabling-operations-log-operlog#settingupoperlog 1. Define a structure OPERLOG in the sysplex CFRM policy. 2. Start the new policy that has the OPERLOG structure : SETXCF START,POLICY,TYPE=CFRM,POLNAME=polname 2. Define a logstream in LOGR policy. 3. Update the CONSOLxx member to have hardcopy HARDCOPY DEVNUM(SYSLOG,OPERLOG) ROUTCODE(ALL) CMDLEVEL(CMDS) 4. issue the command /SET CON=xx to active the operlog hardcopy along with syslog. 5. we can issue the command LOG O to get into operlog in sdsf and LOG S to see the syslog.
ibmnetworkpagentpagent task ening in RC 0005 — check if the /tmp/ directory is full that is where pagent.log file resides.
ibmnetworkat-tlsFtp to ibm using AT-TLS //FTP EXEC PGM=FTP,PARM=(‘/-d -v -r tls 170.225.126.22 21 (EXIT’) //SYSFTPD DD DISP=SHR,DSN=SYS1.TCPPARMS(FTPDATA) //SYSPRINT DD SYSOUT=* //OUTPUT DD SYSOUT=* //INPUT DD * IBMID_userid IBMID_pw quote pasv cd ‘/toibm/mvs’ binary PUT ‘user.dump.trs’ pmrcaseno.dump.trs QUIT
ibmrmfsecurityif we need to use the the GPMSERVE task to collect the RMF DD vlaues.. we need the below security in place. PERMIT BPX.DAEMON CLASS(FACILITY) ID(GPMSERVE) ACCESS(READ) PERMIT BPX.SERVER CLASS(FACILITY) ID(GPMSERVE) ACCESS(READ) PERMIT BPX.STOR.SWAP CLASS(FACILITY) ID(GPMSERVE) ACCESS(READ) RDEFINE PROGRAM GPM* ADDMEM(‘SYS1.SERBLNKE’//NOPADCHK) UACC(READ) RDEFINE PROGRAM ERB* ADDMEM(‘SYS1.SERBLNKE’//NOPADCHK) UACC(READ) RALTER PROGRAM ERB* ADDMEM(‘SYS1.SGRBLINK’//NOPADCHK) UACC(READ) RDEFINE PROGRAM CEEBINIT ADDMEM(‘CEE.SCEERUN’//NOPADCHK) UACC(READ) RDEFINE PROGRAM IEEMB878 ADDMEM(‘SYS1.LINKLIB’//NOPADCHK) UACC(READ) RDEFINE PROGRAM CELHV003 ADDMEM(‘SYS1.SCEERUN2’//NOPADCHK) UACC(READ) RDEFINE PROGRAM C128 ADDMEM(‘SYS1.SCEERUN2’//NOPADCHK) UACC(READ) RDEFINE PROGRAM CELHDCPP ADDMEM(‘SYS1.SCEERUN2’//NOPADCHK) UACC(READ) SETROPTS WHEN(PROGRAM) REFRESH SETROPTS RACLIST(FACILITY) REFRESH
ibmmvscommand//APFADD EXEC PGM=IEBGENER //SYSPRINT DD DUMMY //SYSUT2 DD SYSOUT=(A,INTRDR) //SYSIN DD DUMMY //SYSUT1 DD DATA,DLM=## /*$VS,’SETPROG APF,ADD,DSNAME=XXXXXXXX.XXXXXXXX,VOLUME=XXXXXX’ ##
cadatacomjhfCA7 *U11D-8200-5 SSN=CAL7 DBID=0601 AREA=JHF AT 100% USED https://knowledge.broadcom.com/external/article/33161/when-running-ca-workload-automation-rest.html As long as the JHF data set has not taken all 16 extents and there is still free space available on the volume , the Datacom MUF will perform a dynamic extend . Look at the Datacom MUF to see if you find any dynamic extend failures due to insufficient space . You will then find a B37 abend. If dynamic extend failed then follow the instructions in this knowledge article: CA 11 Increase space on one file only in DBID 601 https://knowledge.broadcom.com/external/article/123154/ca-11-increase-space-on-one-file-only-in.html
ibmzosmfSDSFSDSF does not comes as a default plugin. we need to import it. the definition is available in /usr/lpp/sdsf/zosmf/sdsf.properties use the import manager and import the file and we would be able to see the sdsf option in our desktop we need to have some security done in place : we need to provide the logonproc, account number and region size that can be used. we need to ensure that we have S*.**.SISFEXEC as it has the member ISFWEB.
ibmhmcmemorywe can have memory setting in the image profile and not the load profile for each lpar. Please ensure to activate the updated image profile before we ipl the lpar. we need to first activate the image profile and then again assign the laod profile and then activate againt to start the lpar.
ibmansiblesamplehttps://community.ibm.com/community/user/ibmz-and-linuxone/blogs/daniel-jast1/2022/09/14/automation-to-provision-configure-start-liberty
ibmracfcertificateIn any environment where 2 digitial entities have to communicate as in a client server environment. Client : who requests the information and server: who share the requested information. The server need to authenticate the client to send the data and at the same time the client need to be able to autheticate the server to recieve the data. The authentication is done in the form of certificate. Certifiacate is a digital file that has the type and owner and other information along with Public and Private key pair. A public key is shared with the entities communicating with the certificate owning system. Any data to be sent is encrypted with the private key of the sender certificate and the reciever uses the public key of the sender certificate available with him to ensure that the data being received is from the right entity if the public and private key matches.
Open systemsRedhat open shifttheoryOpenshift is redhat opensource container application platform for developing and hosting enterprise grade applications. Openshift is a PaaS. Platform as a Service offering.
Open systemsRedhat open shifttheoryOpenshift Origin is based on top of docker containers and kubernetes cluster manager with added developer and operational centric tools that enable rapid development, deployment and lifecycle management. Components : Kubernetes as the primary infrastructure (can deploy container — developed from images ) . We can use Open shit container registry. Open shift has webconsole to access all the components. has inbuilt access to Source Code management tools and Open shit CI/CD tools.
Open systemsOrchestrationtheory
Open systemsdockertheoryLinux is the base operating system that any container technology use. they have software(docker engine) above OS kernel that facilitates the needs. Docker can run any applicaiton that is dependent on the host OS here it is a linuk based. if you want to run a Windows based application then we need to have docker installed above a Windows OS.
Open systemsdockertheoryDifference between Container and Virtual Machine Container = (HW) + (baseOS) + (Container engine) + (container(application(required os + database + tool)) = light weight = Less isolation as the kernel is shared and are dependent on BaseOS. = Based on the BaseOS. Virtual Machine = (HW) + (BaseOS) + (hypervisor) + Virtual machine(OS + application)) Virtual Machine = (HW) + (Hypervisor) + Virtual machine(OS + application)) = full OS for the virtaul machines = More isolaiton as the OS is not shared and they dont rely on the BaseOS = we can run both Windows and linux based applications.
CACA-7TheoryCA7 takes a copy of submitted job jcl and keeps it in a queue prior to running the job, so it can EDIT the jcl based on #JI/#JO/#JEND editing statements in the JCL source. These editing commands work in tandem with the schedule id the job is submitted with, which allows for different versions of the jcl to be submitted from the same job library member based on the CA7 schedule that the job is submitted with. Anywhere from one line in the jcl to the entire job can differ automatically based on how the job member is written and the use of the JCL editing tool and the schedule that the job gets. I believe some but not all CA7 customers would take advantage of this. ARF: Automatic Recovery Facility. This tool is a CA7 scripting tool that allows many operator-type CA7 commands to be scripted in advance and get executed based on a non-zero return-code or abend-code of a CA7 job run. Lots of automation is possible with this (Job cancels, force/completes, restarts, job DEMANDs, job Runs, emails, operator messages, job POSTS, etc. . I believe some but not all CA7 customers would take advantage of this. VRM: Virtual Resource Manager. This is another CA7 tool that can be used to limit the number of jobs running concurrently from 1 to many, force a job to wait for some other job or task to be running (like wait for a Database to be brought up, e.g.), or force a job to wait for some other job(s) or tasks to NOT be running (wait for a database to be brought down, e.g.) . Again , I believe some but not all CA7 customers would take advantage of this.
caca11restartWe have AUTOS=YES specified in our CA11 options. So, we would be able to restart any job when its abend even though the jcl has TYPRUN=P parm in C11 statement without having to update it as TYPRUN=R. we can check it with command /ca11commchar DIS OPTIONS. check for CA11 COMM CHAR in CA11 jcl, check for SYSIN pointed member.
caCA-7reportuse the history reporting sample jcl and use the pgm=SASSHIS8 and control card as 02A93LNZZ NV* 13 *ALL* TRANSACTION DETAIL — to get transaction details. Check the manual for the detals regrding the statment, they are based on positions.
caCA-7commands/OPERIDS,ID=MASTER — to get the terminal attached to the user and other details.
caCA-7commandsLjcl,job=jobname — gives the jcl from where the jobname is fetched.
caCA-7commandsljob,job=jobname — gives the job scheduling
caCA-7logoff/logoff
caCA-7commandslrlog,job=xxxxx ==
caCA-7commandsrequeue,job=xxxxx — to move a failed job to ready queue.
caCA-7commands/display,st=jcl — to display the ca7 libraries where the scheduled jobs are saved.
caCA-7jcl//STEP1 EXEC CA7BTI //********************************************** //*TEST JOB THAT RUNS CA7 COMAND IN BATCH //********************************************** //ERRORS DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * /LOGON DEMAND,JOB=CTSTEST,SCHID=001,SET=NTR LQ,JOB=CTSTEST /*
caCA-7commandsrestart,job=5551,forcecomp=yes — to force complete the job’s previous run and restarts the 5551.
caCA-7commandsJCLOVRD,JOB=jobnumber,SET={ON|OFF|WLM|NOWLM} — to overcome a jcl oerride condition
caCA-7job scheduling1. Add the job in the jcllib 2. Then put the schedule with the option “yes” in the ca7 panel 3. Then ‘{LOAD|LOADH},JOB=jobname’ with this command we have to load the job. (this is what ca7 scheduling team is doing 3m)
caCA-7jcl tips#SCC,COND=(768,LT,TRFU1101.RUNSHELL) — specifies that CA-7 need to consider this step as success if RT from TRFU1101.RUNSHELL is less than 768. #SCC,COND=(4,LT,*-TRFU1101.RUNSHELL) — success if all other steps are RC < 4.
caCA-7commandslrjob,job=jobname — to check the jclid of each jobs
caCA-7commandslq,job=jobname — to check the status of any job in REQ,ACTIVE, RDY
caCA-7startup The recommended order for starting each CA Workload Automation component with CA 7 is as follows: CA Datacom/AD CA7ICOM CA7ONL CA7CPM CA7JFM CA7 Webclient CA7SRVR
CACA-7CA7ICOMCA WA CA 7 Edition Independent Communications Manager (ICOM) collects the execution feedback and forwards it to CA7ONL. An ICOM must run wherever a CA7ONL submitted job executes
CACA-7database We got a message in CA7 *U11D-8200-5 SSN=CAL7 DBID=0601 AREA=JHF AT 100% USED. https://knowledge.broadcom.com/external/article/33161/when-running-ca-workload-automation-rest.html
caCA-7restartbatch command for restart operations. //BTI EXEC PGM=SASSBSTR //STEPLIB DD DISP=SHR,DSN=CAI.CA7.CAL2LOAD //UCC7CMDS DD DISP=SHR,DSN=CAI.CA7.COMMDS //SYSPRINT DD SYSOUT=*,DCB=BLKSIZE=133 //SYSUDUMP DD SYSOUT=* //BATCHIN DD DISP=SHR,DSN=CAI.CA7.BATCHI#1 //BATCHOUT DD DISP=SHR,DSN=CAI.CA7.BATCHO#1 //SYSIN DD * /LOGON userid,password JCLOVRD,JOB=6271,SET=OFF RESTART,JOB=3016,STPSTRT=STEP2,REASON=TEST /*
CACA-7commandneed access to SU@MIT in RACF for the userid for /LOGON command.. PE CA7USER CLASS(SU@MIT) ID(userid) — class can be SUBMIT or SU@MIT based on the CA7 setup in your system.
caCA-7communicationCA Workload Automation CA 7® Edition tracks the progress of jobs on the operating system using SMF for z/OS work and pseudo SMF for cross-platform work. Records are generated for the job start, step end, data set create, and job end. ICOM is the facility that picks up the feedback and communicates it to CA7ONL. By default, all ICOMs write SMF feedback to the communications data set (COMMDS) .
caCA-7stop scheduleThe STOP,Q=ALL command can be used to halt CA 7 automatic submission of jobs. Any jobs already submitted continue to process on the operating system and go through CA 7 completion processing when finished but, no new work will be submitted to JES. You can stop schedule scan with a SSCAN,TIME=0
caCA-7holdsteps to hold the schedule. https://knowledge.broadcom.com/external/article/20041/disaster-recovery-and-ca-workload-automa.html STOP,Q=ALL command can be used to halt CA 7 automatic submission of jobs. SSCAN,TIME=0 caommand to stop scanning the list for new jobs. Shutdown CA 7 with a /SHUTDOWN,Z5 command. This does a fast shutdown of CA 7 and writes a copy of the queue files to the UCC7QDMP data set. To resume CA 7 job submission, enter a START,Q=ALL command.
CACA-7CA11CA-7 communication with CA-11 CA 7 has a dynamic interface to CA-11 and it uses the CA-11 subsystem name to determine CA-11. You can run the pgm CAL2EVNR member from the CA 7 CAL2JCL library on each lpar and this report will show you all CA 7’s and ICOM’s running. CA 7 and its corresponding ICOM’s share the same communications data set (UCC7CMDS) and that is how CA 7 gets information from the ICOMs running on different lpars.
caCA-7Environment//STEP0001 EXEC PGM=CAL2ENVR //STEPLIB DD DISP=SHR,DSN=ESL0.LOCAL.SYSTEM.UK01.LINKLIB // DD DISP=SHR,DSN=ESLCA.CA7.CAL2LOAD // DD DISP=SHR,DSN=ESLCA.CA7.CIASLOAD //SYSPRINT DD SYSOUT=*
ibmzospswProgram Status Word (PSW), which contains the address of the next instruction to be executed. It also contains a bit that indicates whether the processor is in problem state or supervisor state.
ibmzospswPER Mask (R) : BIT 1 — indicate whether an interruption can be caused by program event recording. When this bit is on, a program interruption can occur Arch Level : Bit 12 — 1 for ESA/390 and 0 for z/ARchi Instrucion Addr : 32 to 95 in z arch and 32 to 63 in ESA/390 An ESA/390 PSW has a 1 in bit 12. With 31 bits, it can address up to 2 GB. A z/Architecture PSW has a 0 in bit 12. With 64 bits, it can address up to 16 EB. Addr Mode : ESA – 32 bit – (0 indicates 24 bit and 1 indicates 31 bit) z/Arch – 31(Extended addr bit),32 (Basic addressing bit) – ( 00-24bit,01-32bit,11-64bit) division of PSW for understanding : 0 – 31, 32 – 63, 64 – 95(instruciotn addr), 96 – 127(Instruc addr cont). PSW is presented in HEXA Decimal and we need to convert it to Binary.
ibmzospswproblem program state(P) — 15 bit 1 – for running and 0 for processor is in supervisor state and may execute instructions that are not available to problem programs. Indicates whether some instructions can or cannot be used. Dynamic Address Translation (DAT)(T) — BIt 5 — If this bit is on, DAT is used; if it is off, DAT is not used. I/O, EX and M — 6,7,13 bits — indicate whether an I/O, external, or machine-check interruption (respectively) can occur. These bits are normally turned off only while the supervisor is in the process of handling one of these interruptions. M is off a type of instruction cannot occur. Key — 8,9,10,11 bits — The PSW key is used to protect storage from being accessed by unauthorized routines wait state(W)bit — 14 — is on, the processor does not fetch and execute instructions but waits for an interruption to occur. Address Space(AS) — BIT 16,17 – control bits are used by programs that access more than one address space. Condition Code (CC) — 18,19 are condition code bits. program mask — BIT 20,21,22,23 — controls whether certain arithmetic operations can cause program interruptions in case of overflow or underflow.
ibmzos pswif I/O,EX,M (6,7,13) are off and Waitstate(14) is ON then it is a diabled wait — is a condition that an operating system may use to indicate a fatal error or some other condition that makes instruction execution impossible
ibmzos psw Every 4 KB block of central storage is protected by a storage key that is comprised of: A 4-bit access control key A fetch-protection bit A reference bit A change bit
ibmzospswStorage could be read if any one of the following conditions is met: The PSW key is zero The PSW key matches the access control key The fetch-protection bit is off
ibmzospswPrivileged instructions can be executed only when the processor is in supervisor state.
ibmzospswAs a recovery procedure, the PSW restart is usually a last resort to prevent the need for an IPL so it should be used with caution. The PSW restart is used in the following circumstances: To restart the operating system when it has entered a restartable disabled wait state To attempt to recover a system that is locked out in an enabled wait state To restart the operating system after a QUIESCE command
ibmzospswA PSW beginning with 0002 (000A in ESA/390 mode) indicates a disabled wait. A PSW containing 0706 (070E in ESA/390 mode) at the beginning with zeroes in the remaining digits indicates an enabled wait.
ibmzos pswrestartable Disabled Wait States 01B 04A 09x (spin loop) 202 CCC (quiesced) D0D
ibmzospsw
IbmmainframeabbrCIM-The Common Information Model
IbmmainframeabbrDMTF -Distributed Management Task Force (group of software and hardware vendor)
IbmmainframeabbrWBEM -Web Based Enterprise Management
IbmmainframeabbrCEA – zOS COmmon Event Adapter
IbmmainframeabbrREST -REpresentational State Transfer
IbmmainframeabbrADCD -Applicaiton developer controlled distribution
IbmmainframeabbrSoE -Systems of Engagement (CICS, web pages for input)
IbmmainframeabbrSoR -Systems of records(Db2, oracle) Databases
Open systemsabbrLAMP – Linux Apache mysql PHP
ibmsdsftraceto run a tracke in zos v2r5 if any issues with sdsf A SDSF sectrace is needed to see what type of resources are being checked and the associated return code. The procedure for doing this on 2.5 requires the user allocate ISFSECTW dummy: Go to =6 and issue tso alloc fi(isfsectw) dummy then tso profile wtp Create the problem As long as TSO PROFILE WTP was issued , the results on his tso screen. Cut/paste those message into the case for our examination,. And then go back to =6 and issue free fi(isfsectw) and tso profile nowtp Thanks,
ibmsmfwebsiteWebsite that list all most of the record type and their usage. https://watsonwalker.com/wp-content/uploads/2020/11/SMF-Reference-20201107.pdf
ibmsmfdataset accessScratches a non-VSAM data set (type 17). Renames a non-VSAM data set (type 18). Updates a VSAM data set (type 60). Defines a catalog entry for the integrated catalog facility (type 61). Alters or renames a catalog entry for the integrated catalog facility (type 66). Defines or alters a VSAM catalog entry (type 63). Deletes a catalog entry for the integrated catalog facility (type 65). Deletes a VSAM catalog entry (type 67). Renames a VSAM catalog entry (type 68). Read a dataset for input (type 14).
CasysviewcommandCAILMP to check the code and corresponding product.
ibmomvscommandto list a GID : issue the racf command RLIST UNIXMAP G237 ALL
ibmimscommandto stop any transaction that is not coming down while IMS is shutting down. STO REG 13 ABDUMP xxxxxxx
ibmomvscommandto list the current usage of OMVS resources. DISPLAY OMVS,L
ibmomvsTheoryWhat is SHRLIBRGNSIZE parm in OMVS: Tuning the z/OS shared library region The shared library region is a z/OS feature that enables address spaces |to share dynamic link library (DLL) files. This feature enables your CICS |regions to share the DLLs that are needed for JVMs,rather than each region |having to load them individually. This can greatly reduce the amount of real |storage used by MVS, and the time it takes for the regions to load the files. The storage that is reserved for the shared library region is allocated |in each CICS region when the first JVM is started in the region. (This might |be the master JVM that initializes the shared class cache.) The amount of |storage that is allocated is controlled by the SHRLIBRGNSIZE parameter in |z/OS, which is in the BPXPRMxx member of SYS1.PARMLIB. The minimum is 16MB, |and the z/OS default is 64MB. You can tune the amount of storage that is allocated |for the shared library region by investigating how much space you actually |need, bearing in mind that other applications besides CICS might be using |the shared library region, and adjusting the SHRLIBRGNSIZE parameter accordingly.
ibmipcscommandlogoff — logoff from ipcs command prompt
ibmipcscommandip st ip dropd ip omvsdata summary userid(a93lnzz)
ibmftpsetupto send files to ibm we need to create a userid and password. IBM Support File Transfer ID (https://www.secure.ecurep.ibm.com/transferids/).
ibmftpftp2ibmjob to ftp 2 ibm //FTP EXEC PGM=FTP,PARM=(‘/-d -v -r tls 170.225.126.22 21 (EXIT’) //SYSFTPD DD DISP=SHR,DSN=SYS1.TCPPARMS(FTPDATA) //SYSPRINT DD SYSOUT=* //OUTPUT DD SYSOUT=* //INPUT DD * E-TmGmpS1lLv TG1h-S0DM-VJ19-2G5j-HTSc quote pasv cd ‘/toibm/mvs’ binary PUT ‘SYS5.CTS.SYSG.SADMP.PACK’ TS010943078.SADUMP.TERSE QUIT //
ibmwlmcommande marcus,quiesce
ibmomvsSHRLIBRGNSIZESHRLIBRGNSIZE is a parameter found in BPXPRMxx that indicates how much of every dubbed address space’s private region to hold aside in reserve. The shared library region is intended to hold .so files (i.e. programs or executables) that are used by a large number of address spaces in the z/OS image. This area is like LPALIB, but is for shared objects that are loaded by applications where the file is marked with the +l extended attribute.
ibmjes2TheoryPrivilege support and the emergency subsystem : configure to help us with Jes2 resoruce shortage issues and provide us a way to get into the system when the asids are exhausted.
ibmjes2commandcommand to add a spool volume dynamically $s spool(spool7),dsname=sys1.example,space=(cyl,100)
ibmnetworkcommandOSPF neighbour connections D TCPIP,,OMP,OSPF,NBR
ibmjes2 TheoryWhen we have issues with logging onto system or issues with jes2 resoruces https://www.ibm.com/docs/en/zos/2.3.0?topic=facilities-privilege-support-emergency-subsystem
ibmdumpusageWhat datasets are used for dump. If we have specified DUMP=(DASD,XX-YY) in the IEASYSxx member then the preallocated SYS1.DUMPxx-SYS1.DUMPyy would be used to capture the dumps. We can also allocate the dump datasets dynamically using the below commands in COMMNDxx or issuing them directly ‘DD NAME=IPCS.&SYSNAME..D&DATE..T&TIME..&JOBNAME..S&SEQ’ ‘DD ADD,SMS=()’ ‘DD ALLOC=ACTIVE’ this will allocate dump datasets on dynamically when ever required. if these allocaiton fail then it would go for the pre-allocated SYS1.DUMPxx datasets.
ibmtssuseridCommands to create a userid in Topsecret tss cre(AD89TZZ) using(A93LNZZ) name(‘Ajay Ramankutty’) pass(Start123) opid(A3R) dept(DUK5) tss add(AD89TZZ) inst(00000000000EE74) tss add(AD89TZZ) group(omvsgrp) dfltgrp(omvsgrp) tss add(AD89TZZ) home(/) omvspgm(/bin/sh) tss add(AD5M2ZZ) uid(960200)
ibmDASDrecallRecover from a backup HSEND RECOVER ‘Dataset name’ — recover the latest backup if it was done by HSM.
CAbasezosmfinstalling broadcom products using zOSMF https://techdocs.broadcom.com/us/en/ca-mainframe-software/traditional-management/mainframe-common-maintenance-procedures/1-0/getting-started/z-osmf-requirements.html
ibmhmcmemoryhow to check memory in HMC login / selelect the mainframe / operatinal customization / storage information / we can see all the storage availablea and the storage divided between lpars and hsa. HSA — holds part of the total storage available — iocds / channel control inst. / hardware control
ibmhmcsystem detailsto check the model and capacity of the mainframe. login / selelect the mainframe / system details — > type, model, capacity
ibmrmfgpmservelogon page for DDR https://systemip :port/
ibmzosmfsoftware managementPortable software instance : this is where we will define the software that we want to install and provide the location fo the unix zip that we have uploaded to install the product. Deployments : We will install the product from the uploaded unix zip file using the steps in deployment.
ibm omvsbatch//MOUNT EXEC PGM=IKJEFT1A,COND=((0,NE,DEFINE),(0,NE,FORMATFS)) //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * BPXBATCH SH mkdir -p /var/zosmf MOUNT FILESYSTEM(‘OMVS.SYSD.IZU.SIZUUSRD’) TYPE(ZFS) + MOUNTPOINT(‘/var/zosmf’) MODE(RDWR) PARM(‘AGGRGROW’) AUTOMOVE BPXBATCH SH mkdir -p /var/zosmf/data/home/izusvr BPXBATCH SH mkdir -p /var/zosmf/configuration/workflow BPXBATCH SH chown -R IZUSVR:IZUADMIN /var/zosmf BPXBATCH SH chmod -R 755 /var/zosmf /* //
ibmzosmfupdatehttps://techdocs.broadcom.com/us/en/ca-mainframe-software/traditional-management/mainframe-common-maintenance-procedures/1-0/getting-started/z-osmf-requirements/mainframe-products-using-z-osmf-for-software-management.html
ibmECPHow to understand your mainframe and the hardware components. Here is the list of IBM resources to be used to draft ECP (Enterprise computing platform) 1. PCHID reports of IBM mainframe 2. IBM z15 (8561) Technical Guide and IBM z15 (8562) Technical Guide, IBM redbooks 3. IBM Z LSPR ITR ratios for IBM processors, https://www-40.ibm.com/servers/resourcelink/lib03060.nsf/pages/lsprITRzOSv2r3?OpenDocument#z15
ibmracfcertificateif we need to know where our certificate private key is stored. List the certificate and check for the keyword “‘PKDS Label’ is indicated in the RACDCERT LIST output, it confirms that the private key is stored in the ICSF PKDS”
ibmwaziTheoryhttps://www.ibm.com/cloud/wazi-as-a-service
RocketEOSTheoryPROF command to check for more options in the panels.
Open systemsvirtulizationtypes-1Desktop Virtualization : VDI and Local desktop virtualization Network Virtualizaiton : Network Virtualization uses software to create an overview of the network that an administrator can use to manage it without needing access to the physical components. Types : Software Defined Networking (SDN)-virtualizes hardware that controls network traffic routing. and Network function virtualization(NFV) – virtualizes hardware appliances that provide a network function, such as firewall, load balancer, or traffic analyzer thus, making it easier to configure and provision.
Open systemsvirtulizationtypes-2Application Virtualization : Application virtualization runs application software without needing it to be installed in the OS Local application virtualization runs on the endpoint device but runs in a runtime environment instead of on the native hardware. Application streaming lives on a server that sends small components of the software to run on the end user’s device when needed. Server-based application virtualization runs entirely on a server that sends only its user interface to the client device.
Open systemsvirtulizationtypes-3Server virtualization allows multiple virtual ‘guest’ servers to share the same physical hardware. This works by installing software called a hypervisor, which then controls shared access for each virtual guest to the physical components of the server, including CPU, memory, disk, and networking.
Open systemsCloud computingServerless computingAs cloud computing evolves, new models of service delivery have evolved, particularly in the compute space. For example, Serverless is a cloud execution model that offloads management responsibility, such as patching, provisioning, scheduling, and scaling to cloud providers while developers can spend their time and effort on coding or building their applications. Serverless automatically provisions the computing resources required to run application code on-demand and automatically scales resources up or down in response to demand and scales resources to zero when the application stops running.
Mainframe SalesSales1. Life cycle management (refresh/upgrades)? a. ISV Software life cycle at a customer starts with the requirement for a new software based on the solutions that we are planning to arrive. After looking for available options the best product suited for the customer environment is chosen. The product is acquired from the vendor after all the licensing terms are in place. The product’s N or N-1 version is installed based on when the N version is made available. Product is tested in test environment by all the respective users and then moved into production systems during an outage window and the availability of users for the required testing. b. zOS upgrades are planned when a N+2 version is available. (Ex: if running V2.3 then we plan zOS upgrade to V2.5 as and when released.) To be able to be upto date when the customer size is large a maintenance is applied even before the new version of zOS is rolled out to all the lpars. For some customer we ensure we are always at N-1 version as per their requirement. c. For subsystems the maintenance is applied every six months and upgrades are done to be at N-1 versions so we are running stable versions of the susbsystems. d. For mainframe we suggest the customers to be at N-1 or N-2 hardware level for being able to use all the features of the software running on the systems effectively. (Current is z16, it would be good to be at z15 or z14 and not at z13). Storage boxes we prefer to be at the latest version of hardware to make use of the latest features
Mainframe SalesSales2. How do you manage patching and vulnerability management? a. We check for all the products running on the systems every six months for the available maintenance and have them installed and tested in the test system and then rollout to production systems during production outage window and have it tested as required with the user teams. We have notifications in place for all the vendors and we look out for any hipers during this period that are released by the vendor. We check for the need to apply to the customers env. Based on the functionality that is affected and the maintenance is rolled out on need basis. b. For all the supported levels of zOS and other sub systems we apply RSU maintenance if the customer allows outage window for every 3 months. For customers where the outage windows are not frequent then a FIXCAT check is made to know all the available maintenance that is not applied and it is rolled out. The maintenance is first rolled out to the test lpars and after the required tests are done. The maintenance is moved to production during an outage window. HIPERS are checked as and when they are released as we have notifications enabled and they are rolled out based on the need for the environment being supported. c. For zOS or ISV products we during a hardware upgrade we check and apply all the required maintenance as per the vendors update. d. All ISV products are checked for compatibility maintenance before a zOS upgrade and are applied. e. Hardware maintenance is mostly for the CFCC and that is applied every six months by IBM during and outage window. For hardware upgrade is dependent on customer requirements we do plan for hardware upgrades. Microcode Level upgrade for the storage boxes is maintained at N-1 levels as when and a new release is available or as recommended by the vendor.
RocketEOSTheorythe WTR* tasks (writer tasks) has the parm that has the class that would be archived into that spool. We can have multiple WTR* tasks running each for one class.
Rocketeos Theorycheck for spool usage 1. TSO WSF2 2. enter the number that corresponds to the spool you need to check 3. 7 (facilities) 4. 1 (spool information) 5. check the left side of the screen for the spool utilization (data) and the right side for the directory utilization
BMCFDRreportReport to check all the successfull and failed backups //REPORT1 EXEC PGM=USTRPORT,REGION=6M //STEPLIB DD DISP=SHR,DSN=UPSTRM.LOADLIB //SYSUDUMP DD SYSOUT=* //SYSPRINT DD SYSOUT=* //USTCATLG DD DISP=SHR,DSN=UPSTRM.CATALOG.$UST.CLUSTER <
ibmomvscommands/f zfs,query,level /f zfs,query,status /f zfs,fsinfo – To display full file system status for all zFS aggregates that are quiesced, damaged, or disabled:DA DI /f zfs,fsinfo,all,full,select=Q DA DI – To display the filesystems which are in quiesced state /f zfs,query,filesets,quiesced
ibmomvscommandsTo determine all filesystems latches (Locks): /d omvs,w To resolve a latch, you can try the following command: /f bpxoinit,recover=latches /mount filesystem(‘omvs.plex2.gnu’) mountpoint(‘/products/gnu’) mode(read) type(zfs) – Mount the filesystem as READ attribute
Open systemswebservertomcathttps://tomcat.apache.org/tomcat-6.0-doc/manager-howto.html#Deploy_A_New_Application_Archive_(WAR)_Remotely
ibmomvsmessageIOEZ00048I Detaching aggregate filesystem name — this is the message that gets written to console when a file system is unmonted.
Open systemsgzpmdownlaodhttps://github.com/swetankkk/zos_tools — download the gzip-1.9-edc_b002.180703.tar that works on zos to unzip .gz files.
ibmomvsunzipto unzip .tar and .tar.gz files we can use the below command pax -rzf tar.gz tar -xvzf tar.gz the ‘z’ option on the commands above would allow you to extract the archive that has been created using gzip. More information on pax and tar shell commands can be found at https://www-40.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4sa232280/$file/bpxa500_v2r4.pdf
Open systemswebserverTheoryWebserver : Any server that runs a tool/program that would fetch static/dynamic pages or static files from the database and format it to be viewed in a web browser (chrome, IE) and share it with the requester. As per my knowledge the open system severs are not of similar capacity of the mainframe, they use multiple servers for multiple purposes. One server to run only database, one server to run the application one server to manage network and so on. But with our IBM Mainframe, we run everything on the same lpar (Database, application, network). So in our case we install apache tomcat to enable a webserver in the same lpar and no need to run in a different lpar. Servlet : a java program that helps with data collection from a webpage or updating a web page. They mostly respond to HTTP requests.
Open systemswebservertomcatWebserver technologies from Apache vendor: Apache HTTP server : A file server that can efficiently deliver images, audios, videos and text files to web based clients. Cannot do any changes/logics around data and present them as is available. Apache Tomcat server : Servlet engine that implements the servlet and JSP(java server pages) specification. Requires a JDK to run. Can run some logic before presenting the data. Like authenticating a user, query a database for information and so on.
Open systemsWEbservertomcatApache tomcat installation on zOS. 1. Download the tool from vendor site – https://tomcat.apache.org/ 2. Upload it to the mainframe. 3. Issue the command jar -xvf /fileloc./apache-tocat.zip /targetlocation/– this would create a folder 4. Issue the com. chtag -t -c ISO8859-1 /apachefolder/bin/*.sh – to make all the .sh file as executable. 5. If you want to change the default port CONNECTOR PORT 8080 then update server.xml in /apachefolder/conf 6. Update the following statements in your /etc/.profile to make them permanent $CATALINA_HOME=tomcat_directory/apache-tomcat-5.5.x BPXK_AUTOCVT=ON 7. execute the below commands for temporary allocation. export CATALINA_HOME=$HOME/tomcat/apache-tomcat-5.5.x export _BPXK_AUTOCVT=ON 8. To start tomcat issue the command $CATALINA_HOME/bin/startup.sh – if an user issues the comm. from omvs an STC gets started as USERID* 9. To stop tomcat issue the command $CATALINA_HOME/bin/shutdown.sh 10. http://domain_name:8080 — to see the start page of tomcat – 8080 is the default port We can also create a STC for tomcat rather then starting the tomcat using omvs commands
Open systemsWEbserverTOMCATTo deploy an web application in tomcat webserver : 1. Upload the *.war files into /tomcatfolder/webapps After couple of seconds 2. We can see that a folder gets created in webapps with the war file name. if the war file is abc.war then we get a directory created as abc. 3. Restart the tomcat. $CATALINA_HOME/bin/shutdown.sh and $CATALINA_HOME/bin/startup.sh 4. We can access the appl. using the weblink /host:port/foldername
ibmomvsissueBPXF274I FILE SYSTEM OMVS.PLEX2.U.AUDITUSR 221 FAILED TO MOUNT. we need to check who is mounting this file system. and chekc the home directory defined in the racf for the userid. it should be defined without any space ‘/u/user’ and not like ‘/u/user ‘. Check APAR OA59336
ibmsysplexcommandCommand to alter the size of structure dynamicaly. SETXCF ALTER,STRNAME=strname,SIZE=xxxx(y) xxxx – number, y-(K/M)
ibmrexxTheoryCLIST TRACE statement : “CONTROL LIST SYMLIST”
ibmjes2 checkpointif running chekpoint as a structure we may get an error like IXC585E STRUCTURE MVSJES2_CKPT2 IN COUPLING FACILITY  we dont have to be much worried if we have not changed the JOBNUM / JOBBUF values. the JES2 checkpoint size is a static value from which its usage will never exceed (considering you don’t change JOBNUM, JOENUM, TGSPACE, etc.). For example, you may calculate a checkpoint size (or use the value listed in $HASP537 when JES2 comes up) of a given size and use it at 100%. This would be a perfect viable environment. Strictly from a JES2 perspective, the checkpoint is considered all in use (100% of it) even if you had overspecified its size for future expansion. Now, if you leave structure monitoring (using FULLTHRESHOLD), you will always get IXC585E because usage exceeds 80%. For such structure, such as JES2 checkpoint, we recommend turning off monitoring by setting a threshold of zero (FULLTHRESHOLD(0)). Monitoring is not necessary for JES2 checkpoint structure because its size is checked at JES2 startup based on the its parameter values. If the required storage from $HASP537 is less or equal than structure size, then JES2 will come up fine; if value of $HASP537 is more than actual size, JES2 will fail.
ibm jes2 checkpointUsing FULLTHRESHOLD(0) for checkpoint structure is documented in Setting Up a Sysplex, In 12th paragraph in Section Monitoring Structure utilization on link https://www.ibm.com/docs/en/zos/2.5.0?topic=structures-monitoring-structure-utilization . That paragraph documents: “An application may “format” all of the structure objects within a structure before using them. This formatting makes it appear to structure full monitoring that 100% of the structure is in use, causing it to issue message IXC585E, even though there may be plenty of usable space in the formatted structure objects. An example of this kind of protocol is the coupling facility list structure JES2 uses for its checkpoint data. For a structure like this, we would recommend that structure full monitoring be suppressed by setting a FULLTHRESHOLD value of 0.” There is no risk as JES2 is running and checkpoint size will not grow. The threshold monitoring can be ignored or turned off for this structure. However, if you want to leave the threshold monitoring and alleviate the message, then you need to move checkpoint to DASD via checkpoint reconfig, then reallocate the structure with a larger policy (initsize), and finally return checkpoint back to the structure.
ibmjes2 Theoryz/OS, by default, routes requests (for example START commands) to the primary subsystem.
ibmjes2 TheoryJES2 JOB CORRELATOR Jes2 job correlator is parm that we can specify in our job card using the keyword UJOBCORR=’text’. This helps us to have jobs related with each other. If we are installing a product and we have 10 jobs to do the required smp/e or inital steps.. we generally name them as ABCxxxx1 / ABCxxxx2 / ABCxxxx3 / ABCxxxx4 or we may not do it.. and just go with random job names. How do we know from the list of jobs that we have submitted are related to a specific task that we are working with. We can use the parm UJOBCORR=’product_inst’ or UJOBCORR=’app_testing’ and so on and submit our jobs. We can use the display command /$D JOBQ,UJOBCORR=*product_inst* and it would list all the jobs with that mathcing JOBCORDD value. We can pass the UJOBCORR as a symbolic too and get an application name updated when submitted through an internal reader by a user application
ibmracfaccessto be access to issue the LU command we need the have access to IRR.LISTUSER In order to do a LISTUSER command OPSOSF needed to have read access to a resource profile named IRR.LISTUSER so OPSOSF was connected to profile SET@PW which has that access.
ibmzosmfcontactsHiren Shah , Kurt J. Quackenbush Collin Lester ; Kurt J. Quackenbush ; Marna Walle
ibmsmpeTheoryList the sysmods that are not applied but recived. NOAPPLY : indicates that SMP/E should list SYSMOD entries from the current zone that are not applied to a particular target zone. You can use NOAPPLY to: See which SYSMODs have been received but have not yet been applied to the specified target zone. To do this, specify the global zone on the SET command and the target zone you want to check on the NOAPPLY operand. SET BOUNDARY(GLOBAL) LIST SYSMOD NOAPPLY(targetZoneName)
ibmrmfgpmservewe need to define the following for the GPMSERVE DDS to work in zOS V2R5 The keyring on SYSE has to be similar to DDSSERVERKEYRING in SYST system. Please add the below setting to SYSE. RACDCERT ID(GPMSERVE) ADDRING(DDSSERVERKEYRING) RACDCERT ID(GPMSERVE) CONNECT(SITE LABEL(’SYSE SITE CERT’) RING(DDSSERVERKEYRING) USAGE(PERSONAL) DEFAULT) RACDCERT ID(GPMSERVE) CONNECT(SITE LABEL(’3M Root CA Sha2’) RING(DDSSERVERKEYRING) USAGE(CERTAUTH) RACDCERT ID(GPMSERVE) CONNECT(SITE LABEL(’3M Policy CA Sha2’) RING(DDSSERVERKEYRING) USAGE(CERTAUTH) RACDCERT ID(GPMSERVE) CONNECT(SITE LABEL(’3M Issue 1 Sha2’) RING(DDSSERVERKEYRING) USAGE(CERTAUTH)
ibmrmfgpmserveIn zOS V2R5 Make sure that SYS1.SERBLPA is not present on the LPA list. If present, remove SYS1.SERBLINK from the active LINKLIST set and from the APF list.
ibmrmfgpmservewe need to have the following resoruces in progam class ERB* SYS1.SERBLNKE//NOPADCHK SYS1.SGRBLINK//NOPADCHK GPM* SYS1.SERBLNKE//NOPADCHK
ibmomvscommandto list the entries of certian dir / files using ls command ls -ld /path/a* — list only the entries starting with name a* in the path.
ibmomvsTheoryOMVS ACL? access control list. To create and administer an ACL for a file, you must either be the file owner or you must have superuser authority by having UID(0) or READ access to SUPERUSER.FILESYS.CHANGEPERMS in the UNIXPRIV class. Additionally, you must also activate the FSSEC class before ACLs can be used in access decisions. Did you activate the FSSEC class? If the FSSEC class is not active, you can still see the ACLs you defined in the getfacl command, however, only the standard permission bit check is done.
ibmomvsTheorydefault permission bits for folder. umask : user file-creation mode mask issue the command umask to know the default permissions for a folder. isseh the command umask -S to see the default permissions for a folder for owner, group and users
ibmrmfispf invocationto invoke rmf in ispf. add the following to a sysproc concatentain member. and issue TSO %member PROC 0 UTILITY CONTROL MAIN MSG LIST CONLIST IF &SYSISPF ¬= ACTIVE THEN DO ISPSTART CMD(%RMFSTART &UTILITY) SET RC = &LASTCC END ELSE DO ALTLIB ACT APPL(CLIST) DA(‘SYS1.SERBCLS’) IF &STR(&UTILITY) = &STR(UTILITY) THEN %ERBRMFU ELSE RMF SET RC = &LASTCC ALTLIB DEACTIVATE APPL(CLIST) END
caxcomcommand/F XCOM,MODULES — to list the ptfs that has affeceted the modules.. will let us know the latest modules.
caxcomcommand/F XCOM,DIS — to dispaly all the connections /F XCOM,SHOW — to show all the transfers in flight.
ibmomvsissueif we are not able to access any files in batch then while doing ftp, then we need to check for access to the resource read access to all users/tasks to EZB.FTP.**. ‘
Macro4tubesTheoryINSTDATA in top secret data for the user– has the tubes profile to be used for the user and the authorization level.
ibmjclsymbolsif tyring to use &SYSNAME.. that are part of the system sysmbols and jcl errors with incorrect use of &. If the statement contains any incorrect characters, correct it. Submit the job again. The possibility exists that a variable cannot be substituted because the scope of its assignment has been exceeded. If the statement contains ampersands as part of a system symbol such as &SYSNAME., the job is running in a jobclass that does not include SYSSYM=ALLOW. Select a different jobclass or contact the system programmer and ask for SYSSYM=ALLOW to be added to the jobclass definition.
ibmzoslearningvideos https://www.redbooks.ibm.com/redbooks.nsf/redbookabstracts/crse0304.html?Open
ibmzomsfwebsitehttps://ipaddress of system/zosmf/LogOnPanel.jsp
ibmispfcommand Copy with overlay. if we want to copy lines but have content in other lines that are to be overlaid. use the block command CC CC to copy the lines and then use OO OO on the lines that we need to overlay.
ibmispfcommand zEXpand to get a extra space to issue long ISPF command. cmde : to get a extra space to issue long ISPF command.
ibmispfOPTIONissue the command RECOVERY ON in a member that you are editing and you would be able to havet he unsaved content that you were editing it there is a connection failure and the member is not saved.
ibmispfoption we can use the command UNDO to remove any changes done while editing a member, we can do multiple undo too.. till it hoes to the changes that are made after last save was done.
ibmispfcommandEDSET — to edit the nature of cut, paste, search.
ibmispfcommandBNDS — On the first line in the member, in the prefix area, enter the BNDS line command and press Enter. You will see a line appear which marks the bounds of the line by a < and > markers. These are in columns 1 and 80. • All operations, such as many of the line commands we will try, and primary commands, such as Find, only work within the BNDS. We can also issue the command BNDS 10 20
ibmispfcommandf P’.‘ – find any non-displayable character
ibmispfcommandWe use the block command CC CC and cut command to copy a certain no. of line. we can us the command CUT string and again we can use CC CC block command to copy more lines from this member or a different member and use the CUT string to append the lines to the earlier cut lines. Once we have all the required lines cut. We can use PASTE to copy over the lines to a desired member. Note : use the EDSET command to chekc if you have append for the cut setting.
ibm omvstoolto find the fid of a path or a directory/file with a file id then we can use the rexx at https://github.com/IBM/IBM-Z-zOS/blob/main/zOS-Tools-and-Toys/auditid/auditid.rexx copy it to you unix file and issue the command ==> /path/auditid /pathname or fid
ibmzosjavahttps://community.ibm.com/community/user/ibmz-and-linuxone/blogs/bill-keller2/2023/03/17/getting-started-with-java-applications-on-zos
ibmjes2 TheoryJob submission and job output processing. 1. RJE : Remote job entry . Multiple consoles or end nodes can submit a jcl to be run on a JES2. allows for the extension of your local processing configuration by defining remote locations that can consist of job input terminals and output devices at a different physical site connected to the z/OS-JES2 processor through telecommunication links such as telephone lines and satellites. In this manner, a z/OS-JES2 system can provide input and output support across various geographic locations. But all the remote sites and their attached devices are defined to a single z/OS-JES2 configuration 2. NJE : Network job entry: here jobs are submitted to Jes2 from multiple jes2 members that in a MAS. takes this concept further by allowing individual z/OS–JES2 processors, that are geographically dispersed, to be connected in a network of JES2 and non-JES2 systems that can communicate, pass jobs, and route output to any attached output devices.
ibmjes2 command$D JOBQ,SPOOL=(PERCENT>10) — to find jobs using more spool%
ibmracfcommandSETR NORACLIST(JESSPOOL)  SETR NOCLASSACT(JESSPOOL) — to deactivate a class
ibmsdsflogLOG O — to look at operlog if activated. LOG S — to look at system specific syslog.
ibmracfcommandrefresh a class — SETR RACLIST(JESSPOOL) REFRESH 
caendevorwebservices1. Configure the CCI and ENF stc to support web services a. Ensure to have J2Z CFF6F00 – USS based common services(Includes CCS Tomcat). b. CAW0LINK in LINKLST c. CAW0LOAD/CAW0PLD/CAW0DCM in Linklist or Steplib of CCI and ENF tasks d. CCSZFS dataset has the USS based components e. CEG1ZFS1 datasets had the CCS tomcat file sysetms. 2. Configure CA Endevor settings to support web services 3. Enable security access to web services 4. Deploy an instance of the CCS Tomcat with the CA Endevor web services 5. Start and test TOMCAT
IBmDASDspace managementIf we are using a management class with “Partial Release . . . . . . : COND_IMMED” parameter then COND IMMED    Unused space for data sets with secondary allocation is released either when a data set is closed or during the Space Management cycle, whichever comes first.       we need to allocate datasets only with primary allocation so the space is not released each time the dataset is edited and saved.
ibmsmfomvs smfThe resource rule FACILITY-BPX.SMF controls the ability to write SMF records from UNIX (OMVS) processes. if you want to write SMF 121 records for java useage, then we need access to this resource.
ibmzosmemoryto dispaly virtual storage details d virtstor,hvcommon/hvshare/lfarea d M=stor — total real memory allocated to the system.
ibmjavajzoswe are running the JCL that would start the application under JZOS and on one(SYST) system it is running without any issues and another system(SYSD) it is failing with “JVMJZBL1042E JZOS batch launcher failed, return code=101” Ensure the user runnign the jzos has access to /etc/profile. (EDC5205S DLL module not found.) If the JVM is using 31-bit Java, you need to use our 31-bit JVM agent which is “libgsvoagt1.so”. libgsvoagt4.so is our 64-bit Java agent.
ibmomvssyntaxif we want to pass a lengthy variable in //sTDENV then we can follow the below steps. instead of IJO=”$IJO -agentpath:/products/sysview/R16/run/jvmdata/binpc/libgsvoagt4.so export IBM_JAVA_OPTIONS=”$IJO” we can have it written as AGT=”/products/sysview/R16/run/jvmdata” — creating a variable for of the lenght IJO=”$IJO -agentpath:$AGT/bin/libgsvoagt1.so” — using the varibale to build the final path. export IBM_JAVA_OPTIONS=”$IJO” We can also use the option “\” at the end of command line and we can write the remaining command in next line.
ibmjes2 proclibif new proclib added to the concatenation is not being picked up. Proclib information is maintained in the DEB control block and when you add a new procedure, the information in the DEB is not automatically refreshed. To refresh the DEB and make JES2 aware of these changes, you can issue one of these commands below: If you are using dynamic proclibs, then issue $TPROCLIB(*) If you run with static proclibs, a hot start ($PJES2,ABEND followed by ‘S JES2’, no IPL), will refresh the DEB. If you cannot afford a hotstart and you run static proclibs, you can issue $TPROCLIB(PROC00). This will create a dynamic proclib copy of your static proclib with an updated DEB. The dynamic proclib will remain for the life of JES2 and on next JES2 restart, it will fall back to the static proclib.
ibmjes2 proclibdynamic proclib concatenations are defined in JES2PARM, whereby static proclib concatenations are defined in the JES2 start up procedure. So I think the $TPROCLIB(*) command recommended by my colleague is appropriated. why some proclibs may be affected while others are not affected relates to the fact that a JES2 converter will keep a proclib open for as long as jobs are being submitted into that converter that are using it. It is only when a job hits the converter that needs an entirely different proc that the converter will implicitly close the existing proclib and reopen/refresh the subsequent proclib. But this depends on the mixture of your jobs and what respective procs that you use.
ibmjavaissueWHen one of our user is trying to issue java -version. the is receiving error. Got an update from VM team that the JVM was performing a garbage collection, and was doing classunloading subcycle at time of failure . While doing classunload, it encountered a corrupt class structure resulting in the crash. As the crash happened at ‘java -version’ command, this was just loading the packaged java classes and nothing external. This could mean the java build itself is corrupt. Or the class cache is corrupt. So , Could you please try running this command by disabling shared class cache as : java -Xshareclasses:none -version If this crashes, please get the tdump from this crash, along with javacore, and the console log . Also upload the Java build (the entire jre directory) so that we can check in our system if the build is corrupt. If disabling shared class works , then the shared class cache needs to be cleared using -Xshareclasses:destroyAll Reference: https://www.ibm.com/docs/en/sdk-java-technology/8?topic=options-xshareclasses Finally it is the region size that was less for hte users and after it was increased all went fine.
ibmzos memory“The amount of virtual storage that an address space can use for private memory objects at any given time is controlled by the MEMLIMIT (memory limit) specification.” so at a max of 4G can be used for prvt. sorage.. SMFLIMxx introduced with V2.2
ibmzosmemorySMFLIMxx — Kind of replacement for IEFUSI exit for maintininag memory. It can be activate, updated and deactivate using SET command. step memory management. D SMFLIM IEFUSI and SMFLIMxx can co-exsist. Begining of a step IEFUSI is pulled in and then SMFLIM comes in .. if any values is being changed in SMFLIxx then SMFLIMxx value overrides the IEFUSI. SMFLIMxx can do message suppression that IEFUSI may write. No.of shared pages that can be used can be specified in SMFLIMxx
ibmNetworkcheckd net,uservar Allows us to check if any specific updates for the tasks to be run on specific systems.
ibmnetviewmoveF CNMNET,USERVAR,ID=xxxxxx,VALUE=xxxxxx,OPTION=UPDATE — check the output from teh d net,uservar command
ibmrmfcpc capacitywe check the full cec deatails using RMF option 3;1;3 — CPC CAPACITY
ibmhmccpc capacityHMC – soft capping 1. Select the processor a. Oepratinal customization i. Change lpar group controls
CaoptimisercheckWith the Management Reporting System (MRS) utility you can identify the programs in a load library that have been processed by Optimizer/II tools. In Article Id: 68481 there is a sample JCL and report created. How to check whether a load module is optimized by the Optimizer/II tools? There is information in Optimizer/II manuals that you can find in the following link. https://techdocs.broadcom.com/us/en/ca-miscellaneous/legacy_bookshelves_and_pdfs/bookshelves_and_pdfs/bookshelves/ca-optimizer-ii.html You have to download the ZIP file in ‘All guides with Searchable Index 8.5’, then after the unzip of the file the information about MRS utility is in PDF manual OptimizerII_User_Guide_ENU.pdf file.
cadeliverreportThere are examples in the CVDEJCL library of both SARGRW and RMOGRW Please see CVDEJCL(SARGRW*) and CVDEJCL(RMOGRW*) Here are some articles that can help you: Article Id:48044 Article Title: Sample RMOGRW utility to print out the JOBNAMES Article Id:195482 Article Title: CA View – SARGRW Syntax Inquiry Article Id:217840 Article Title: View – Can SARGRW be used to create a report displaying particular job run information?
ibmNetworkat-tlsCheck the TELNET(TN3270) task and look for configuraiton file. Look for port conneciton in TELNETPARMS section. If we have the below options then it is using TLS setup TelnetParms ttlsport 2323 — all the requests send to TCPIP and the encryption & Authentication is handled by tcpip. Conntype secure TelnetParms secureport 2323 — requests are handled at tn3270 port itself. Encryption & authentication characteristics are handled by the appilcaiton or port policy. Conntype secure
ibmftpftps FTPS is enabled on port 21 itself I believe in US but as we have “SECURE_FTP — ALLOWED ” in FTPDATA we are able to get to ftp using command prompt.
ibmzosconsoleICC – COnsole Integrated Console Controller
ibmsdsffeatureSDSF 3.1 seems to have a nice feature that will provide insights into VLF/LLA performance – see below: Module Fetch Monitor Another interesting addition to SDSF in the z/OS 3.1 Preview is a new Module Fetch Monitor. You might be familiar with an existing tool called Module Fetch Monitor (MFM) that has been distributed on request by Peter Relson (we mentioned this briefly in ‘Optimizing Efficiency of COBOL V5 Load Processing’ in Tuning Letter 2015 No. 1). The new MFM function in SDSF is a ‘new and improved’ version of Peter’s MFM tool. The SDSF MFM gathers information about program fetches from CSVFETCH and CSVLLIX1 dynamic exits. You can display information by load library data set name, by program name, or by job name. The information that is provided includes the number of fetches, and the average and maximum response time for loading the module from disk, and from VLF. For customers concerned about the potential overhead of collecting this information for every program load, you can limit the information gathering based on jobname, load library name, or program name. We think this could be a powerful tuning tool, especially if you are not getting the maximum value from VLF. Depending on interest from our readers, we might provide a short article on using this capability after z/OS 3.1 becomes generally available
ibmhardware processorThe Telum is a microprocessor made by IBM for the IBM Z mainframe computers, announced at the Hot Chips 2021 conference on August 23, 2021. Telum is IBM’s first processor that contains on-chip acceleration for AI inferencing while a transaction is taking place.
CAviewlistlisting the initializaiton parms //SARDT EXEC PGM=SARINIT,PARM=’database’ //SYSPRINT DD SYSOUT=* //SYSIN DD * NAME=database. we can check for database name from STC or panels.
OMCflasherjob ouputgive CO next to a job to copy the output to a dataset
ibmjes2 checkpoint-1JES2 checkpoint dataset enlargement There are two ways to extend the size of the CKPT dataset. The first, and easiest, method is to use $TCKPTDEF,CKPT1=SPACE=() command. The SPACE=() operand can either be set to MAX or a specific size in tracks or cylinders. You can see more information about the command here: https://www.ibm.com/docs/en/zos/2.5.0?topic=section-t-ckptdef-set-checkpoint-definition You can use this command to extend the size of CKPT1 and CKPT2 but it depends on there being free space adjacent to the CKPT extent on the current volume. The command invokes the checkpoint reconfiguration under the covers to increase the ckpt size. If that does not work, you will need to allocate new, larger CKPT1 and CKPT2 datasets manually, and then use the checkpoint reconfiguration dialog to forward the current CKPT1 and CKPT2 to the new, larger NEWCKPT1 and NEWCKPT2. I will outline the procedure below. To set this up, use the $TCKPTDEF command to set NEWCKPT1 and NEWCKPT2 to the values to which you want CKPT1 and CKPT2 changed to. $T CKPTDEF,NEWCKPT1=(DSN=sys1.some.new.larger.ckpt1,VOL=newvol1) $T CKPTDEF,NEWCKPT2=(DSN=sys1.some.new.larger.ckpt2,VOL=newvol2) Then, enter the reconfiguration dialog manually with $TCKPTDEF,RECONFIG=YES
ibmjes2 checkpoint-2You will be presented with several options. You want to choose the options that will forward the CKPT1 to NEWCKPT1 and forward CKPT2 to NEWCKPT2: $HASP271 CHECKPOINT RECONFIGURATION OPTIONS 751 VALID RESPONSES ARE: ‘1’ – FORWARD CKPT1 TO NEWCKPT1 ‘2’ – FORWARD CKPT2 TO NEWCKPT2 ‘5’ – SUSPEND THE USE OF CKPT1 ‘6’ – SUSPEND THE USE OF CKPT2 ‘CANCEL’ – EXIT FROM RECONFIGURATION CKPTDEF (NO OPERANDS) – DISPLAY MODIFIABLE SPECIFICATIONS CKPTDEF (WITH OPERANDS) – ALTER MODIFIABLE SPECIFICATIONS
ibmjes2 checkpoint-3 So, we choose option 1 for now. The dataset and volume that are set up as NEWCKPT1 will then become the current, in-use CKPT1. Repeat for option 2. The dataset and volume that are set up as NEWCKPT2 will then become the in-use CKPT2. After the reconfigurations are complete, the previous NEWCKPT1 and NEWCKPT2 will now be CKPT1 and CKPT2 respectively. NEWCKPT1 and NEWCKPT2 will be no longer configured (you can check using $DCKPTDEF). At this point, you can just use commands $T CKPTDEF,NEWCKPT1=(DSN=sys1.some.other.new.ckpt1,VOL=othernewvol1) $T CKPTDEF,NEWCKPT2=(DSN=sys1.some.other.new.ckpt2,VOL=othernewvol2) to set the values for NEWCKPT1 and NEWCKPT2. The NEWCKPTs are never in use…they are just predefined backups in case CKPT1 or CKPT2 fails for some reason. So, these can be modified using $TCKPTDEF command without needing their own reconfiguration. Note that while in the dialog, JES2 will not actively be modifying the CKPT datasets, aka, work will not be progressi
ibmjes2 spoolSimultaneous Peripheral Operations Online. The mechanism by which card and print records can be stored on disk, allowing jobs to be run or listings to be printed at times chosen by an operator.
ibmjes2 spoolingThe job is submitted and sent to the spooling program The job is stored in the DASD input queue The job is sent to the spooling program and then to JES Following job execution, data is sent to the spooling program Data is saved to the DASD output queue When a printer becomes available, the output is printed
ibmjes2 policiesJES2 policies have been introduced which provide alternate ways to customize JES2 processing. JES2 policy definitions can be viewed as a condition that is a logical expression that can be tested and will determine if a policy is applicable during JES2 processing to a specific JES2 object. If the conditions of the policy are satisfied, then one or more actions can be performed. Policy definitions are defined using JSON object text and EBCIDIC encoding (IBM1047) and can be stored either in a z/OS partitioned data set (PDS) or in a file in a directory within a zFS file system. JES2 policies are stored in the JES2 configuration directory of the JES2 checkpoint and are only available on z22 activation level (z22 mode)
ibmjes2 Disk reader support(DSP)The $SUBMIT command has been added to the list of JES2 commands and can be used to copy a member from the SUBMITLIB data asset to the SUBMIT reader and acts like a JES3 disk reader. This feature allows users to submit JCL to JES2 from a concatenation without the need to log on to TSO, submit a job, or run a started task. To create a submit library, use the $ADD SUBMITLIB(xxxxxxx) command and provide concatenation data sets. The concatenation data sets can be a combination of any partition data sets (PDSs) or zFS file system paths. Up to 255 concatenation data sets can be defined for each SUBMITLIB.
ibmjes2 commands$ADD SUBMITLIB(TEST),DD1=DSN=ABC.XYZ,DD2=DSN=SYS1.PROCLIB,DD3=PATH=/u/a93lnzz — creates a userdefined contacatention to submit jobs. $SUBMIT,M=J1234,DD=TEST — submits job J1234 from the TEST dd concatenation.
ibmjes2 jcl/* statements in jcl lets us know they are jes2 related statements.
ibmjes2 phases-1input–>conversion–>processing–>output–>hardcopy–>purge In the input phase , a job consisting of JCL statements and possibly in-stream data is read onto DASD. Here, the job awaits selection for processing by JES2. In the conversion phase , the JCL of a job is merged with the JCL from any procedures to be included from a procedure library. The JCL is then checked for any syntax or format errors. If errors are found in the JCL, JES2 issues messages and the job is queued for output rather than execution.If there are no JCL errors, the job is queued for execution in the order of priority within its job class.
ibmjes2 phases-2In the processing phase , the job is selected for execution in accordance with its priority and class. In the case of WLM initiators, the initiators select jobs based on their service class and the order in which they were made available for execution. During processing, the main steps that occur are: The job is given to an initiator and program execution begins SYSIN data is passed to the executing program SYSOUT data is written to DASD spool devices In the output phase , data sets are grouped according to output characteristics, such as the: Type of forms to be used Universal Character Set (UCS) to be used during printing Forms Control Buffer (FCB) to be used during printing The job’s output data sets are then queued according to the output class assigned to the job and the priority assigned to the job.
ibmjes2 phases-3During the hard copy phase , the output for a job is printed on local or remote printers or is sent to another JES2 system through the Network Job Entry (NJE) network. The operator decides which class is to be printed and the jobs will print according to the priority assigned to them. If two jobs have the same priority and class, the job that has been waiting the longest will be selected first. This is called First In First Out (FIFO).
ibmjes2 classCLASS=x — is the jobclass defined to execute the jobs and initial processing of the job. (jobclass(*)) SYSOUT=x — is the outclass for the step.. Specifies the output class and optionally, the form name for the print data set. SYSOUT=(x,,aaaa) — outcalss of P with form definiton of aaaa. MSGCLASS=x — To specify the output destination for the system and Job messages when the job is complete (OUTCLASS(*)) — this is for job log.
ibmjes2 phasesOutput is printed on local or remote printers or sent to another JES2 system via NJE: HARD COPY All traces of the job are removed from the system: PURGE Output is sorted into groups of class, priority, and device setup requirements: OUTPUT The job is passed to an initiator and then processed. The output is produced: PROCESSING The JCL is checked and procedures are merged from the procedure library: CONVERSION The job is read into the system and onto a DASD spool device: INPUT
IBMOMVSuseridTo update the user home locaiton access. 1. go into ishell – issue ISH from TSO 6. 2. with your personal directory in the display space, go to option SETUP top line, and select 7 (SU) 3. then go to first tab (FILE) and select ATTRIBUTES/ 4. there should be an EDIT button now available – select that. 5. change the owner to your ID, from ROOT/ 6. change the mod bits to 775.
ibmjes2 JQEThe JQE components are: Job name Job priority Details of the entry node ID of the execution node Occurrence or non-occurrence of the hold state Track address of the Job Control Table (JCT) on the spool data set Information on the next JES2 phase the job is eligible for
ibmjes2 initWLM – Initiaotors Where Workload Management (WLM) controls the initiators, they are started automatically by the system based on: performance goals importance of the batch workload system capability Once started, the initiators select jobs based on service class and the order they were made available for execution.
ibmjes2 checkpoint$HAPS478 message will let us know which checkpoint has been used to bring up jes2.
ibmjes2 startup NOFMT – No spool volume is to be formatted unless JES2 determines that formatting is necessary. Jes2 startup options: FORMAT – All spool volumes are to be formatted. This request is honored only if all other processors in a JES2 MAS configuration are inactive. If this option is taken, everything currently on the spool file will be lost. If you specify the FORMAT option, a cold start of JES2 will result. WARM – JES2 is to continue processing where it left off. This is the normal and preferred startup. COLD – All job data on the spool volumes will be lost. This is usually only at the request of the systems programmer. Some changes to JES2 need a cold start. REQ – JES2 is to stop and request a $S command before beginning job processing. NOREQ – Specifies that JES2 start processing once JES2 is initialized. This saves the operator having to type $S every time JES2 is initiated.
ibmjes2 shutdowncommands to shutdown jes2 $P JES2 $P $PJES2,QUICK — QUICK command is used to terminate JES without regard to cross-system activity. $PJES2,TERM — This allows JES2 to terminate with active tasks, but no hot start of JES2 can be performed so this method should only be used where the system is to be re-IPLed. $PJES2,ABEND — This command terminates JES2 immediately, regardless of any activity and can be used to terminate JES2 and perform a hot start without an intervening IPL when the need arises. The only activity that this command will wait for the completion of is a write to a checkpoint, where this is based on a coupling facility. In this example, a $PJES2,ABEND command has been entered and an abend code of $PJ2 has been issued. As a result of this command being entered, a WTOR has been issued. $PJES2,ABEND,FORCE –command should only be used as a last resort. It has the usual IBM warning that the results are unpredictable. It should not be used without knowing that an IPL will almost certainly be required, and that it could damage JES2 resources, such as checkpoints. This command must be entered as a string of characters; no blanks are allowed.