Skip to main content
Skip table of contents

Mainframe - How to collect data for a msc backup analysis

Created:  | Updated:


A complete tape analysis provides us with the current tape system and storage utilization, performance and capacity.

The steps below explain how to collect the relevant information that we require to perform a comprehensive tape analysis.


Step 1: Tape Configuration

Please supply us with your current tape configuration. Below is an example of a tape configuration document.

Stand-Alone Drives Example

Vendor

Device Type

Count

Address Range

Volser Range

Device Name

CHIPIDs by LPAR

STK

9940

8

E300-E307

000000 – 599999

2B, 4C SYSA 3A, 9B SYSB

STK

9940

8

E400-E407

*

E5, F3 SYSA F2, F9 SYSB

IBM

3590

8

E500-E507

*

AA, B2 SYSA 31, 5A SYSB

Automated Tape Libraries (Silos)

Vendor

Device Type

Count

Address Range

Volser Range

Device Name

CHIPIDs by LPAR

STK

9940

8

E600-E607

600000 – 799999

R2D2

1C, 1D, 1E

STK

9940

8

E700-E707

800000 – 999999

C3PO

22, 28, 2A

IBM

3590

8

E800-E807

I00000 – I29999

GIZMO

43, 47, 48

Virtual Tape Drives

Vendor

Device Type

Count

Address Range

Volser Range

Device Name

CHIPIDs by LPAR

STK

VSM

256

E900-E9FF

S00000 – S29999

VSM1

50, 51, 52

IBM

VTK

256

EA00-EAFF

I30000 – I59999

VTS1

60, 61, 6B


Step 2: Tape Management Report 

IBM RMM report

Datasets referenced by MESSAGE and REPTEXT DDs must already exist prior to generating the RMM report.

Click to expand RMM report job example ...
CODE
//EDGHSKP EXEC PGM=EDGHSKP,PARM='RPTEXT,DATEFORM(A)'
//MESSAGE  DD DISP=SHR,DSN=HSKP.MESSAGES
//* For all other records except Extended records use REPTEXT
//REPTEXT DD DSN=HLQ.RMM.EXTRACT,DISP=SHR
// UNIT=SYSALLDA,AVGREC=U,SPACE=(1024,(pp,ss))
//SYSIN DD *
RPTEXT RECORDS(V,D)
/*
//* PACK THE REPORT FOR BINARY UPLOAD
//PACKX	EXEC PGM=TRSMAIN,PARM=PACK                   
//SYSPRINT DD   SYSOUT=H                                 
//INFILE   DD   DISP=(OLD,DELETE),DSN=HLQ.RMM.EXTRACT
//OUTFILE  DD   DISP=(NEW,CATLG),UNIT=3390,VOL=SER=VVVVVV,
//   	SPACE=(CYL,(PPP,SSS),RLSE),
//   	DSN=HLQ.RMM.EXTRACT.TRS

TLMS and Control-T

This is a backup of the tape management system control database. For TLMS and Control-T, use IEBGENER to back up the TLMS VMFbase or the Control-T DBD database.

Extract TMS Data

Click to expand TMS job example ...
CODE
//TMSCOPY EXEC PGM=TMSCOPY,REGION=0M
//TMSRPT DD SYSOUT=*
//AUDITDD DD DUMMY
//TMSOPTNS DD DUMMY
//DUMPDD DD DSN=HLQ.TMC.BACKUP,UNIT=SYSDA,DISP=(,CATLG,DELETE),
// SPACE=(CYL,(400,50),RLSE),DCB=(RECFM=FB,LRECL=340,BLKSIZE=0)
//DUMPDD2 DD DUMMY
//AUDUMP DD DUMMY


Step 3: Collect SMF records

Collect at least seven to thirty days of data for each LPAR or SYSPLEX or the most significant system, e.g. Production.

Record Types to collect

SMF type 21 and Copy Cross or VTFm records.

Tape Mount activity. If Copy Cross (VTFm) is active, SMF record type is user-specified.

SMF Type 70, 73: RMF data  

RMF data containing WLM Activity and Channel data

SMF 30 subtype 2

CPU and tape task allocations.

SMF 241: HSM activity 

See the ARCCMDxx member for each HSM. If there is no SETSYS SMF(nnn), the default value is 241. If there is a SETSYS SMF(nnn), add 1 to nnn for the FSR record number. For example, if the ARCCMDxx member shows SETSYS SMF(200), the HSM FSR record number would be 200+1=201.

SMF 94

VTS data 

SMF 194

TS7700 data 


Step 4: WLM Activity

Reports on the CPU usage by data management software (such as CA-Disk, HSM or FDR).

Please supply us with:

  • the dedicated WLM Report Class for data management software address spaces.

  • If applicable to your licensing model, the primary and secondary CPU peak dates and times.

Sorting SMF Records

Locate all the relevant SMF data sets from all the LPARs in the Sysplex and run the following SORT step to filter and sort the records for RMF processing on the next step

CODE
//M9SORTF  JOB ACCT#,SYSPROG,TIME=NOLIMIT,REGION=0M,
// NOTIFY=&SYSUID,MSGLEVEL=(1,1),MSGCLASS=X   
// SET OUTDSN=OUTPUT.SMF.DATA.SET.NAME              
//RMFSORT  EXEC PGM=SORT                            
//SORTIN DD DISP=SHR,DSN=INPUT.SMF.DATA.SYSTEM1
//       DD DISP=SHR,DSN=INPUT.SMF.DATA.SYSTEM2
//       DD DISP=SHR,DSN=INPUT.SMF.DATA.SYSTEMN
//SORTOUT  DD   DISP=(NEW,CATLG),UNIT=TAPE,
//  DSN=&OUTDSN
//SORTWK01 DD DISP=(NEW,DELETE),UNIT=3390,SPACE=(TRK,(800,700))
//SORTWK02 DD DISP=(NEW,DELETE),UNIT=3390,SPACE=(TRK,(800,700))
//SORTWK03 DD DISP=(NEW,DELETE),UNIT=3390,SPACE=(TRK,(800,700))
//SYSPRINT DD   SYSOUT=*                                               
//SYSOUT   DD   SYSOUT=*                                               
//SYSIN    DD   *                                                      
 SORT FIELDS=(11,4,CH,A,7,4,CH,A,15,4,CH,A),EQUALS              
 INCLUDE COND=(6,1,CH,EQ,X'48')                                  
 MODS E15=(ERBPPE15,36000,,N),E35=(ERBPPE35,3000,,N)  

Generating RMF Report

Use the sorted output file from the previous step to generate the following RMF report.

CODE
//M9WLMR   JOB ACCT#,SYSPROG,TIME=NOLIMIT,REGION=0M,                   
// NOTIFY=&SYSUID,MSGLEVEL=(1,1),MSGCLASS=X                            
// SET SMF=YOUR.SMF.SORTED.DATA
// SET RMFDSN=OUTPUT.REPORT.DATA.SET.NAME                              
//RMFPP    EXEC PGM=ERBRMFPP,REGION=0M                                 
//MFPINPUT DD DISP=SHR,DSN=&SMF
//MFPMSGDS DD SYSOUT=*                                                 
//PPXSRPTS DD DISP=(,CATLG),DSN=&RMFDSN,                             
// UNIT=3390,SPACE=(CYL,(10,5),RLSE)                   
//SYSIN    DD *                                                        
  DINTV(0100)                    /* DURATION INTERVAL         */
  SYSOUT(X)                                                            
  SYSRPTS(WLMGL(SCLASS,RCLASS))                                        
  NOSUMMARY                                                            
/*

Step 5: Sysplex CPU Information

Use the following operator command to get the CPU information from each SYSPLEX:

CODE
RO *ALL,D M=CPU

Step 6: Additional HSM Data Collection

Copy of ARCCMDxx

Copy the active ARCCMDxx member to a text file. Can be sent via FTP in text mode

Generate HSM report

Where YYYY/MM/DD is one month back. Can be sent via FTP in text mode

CODE
TSO HSEND REPORT DAILY FUNCTION FROMDATE(YYYY/MM/DD) ODS('output.dsn')

HSM run time parameters

Can be sent via FTP in text mode

CODE
 HSEND QUERY SETSYS

TTOC

Can be sent via FTP in text mode

CODE
HSEND LIST TTOC SELECT(BOTH) ODS(output.dataset) 

HSM MCDS & BCDS data

Point-in-time (DCOLLECT "M" and "B" records, all HSM plexes)

CODE
//*insert JOBCARD
//ALLOC EXEC PGM=IEFBR14
//DCOUT DD DSN=HLQ.DCOLLECT.DATA,
//DISP=(,CATLG),UNIT=SYSDA,
//SPACE=(CYL,(20,10),RLSE),
//DCB=(RECFM=VB,LRECL=1024,BLKSIZE=10800)
//*
//DCOLLECT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//MCDSDD DSN=DFHSM.MCDS,DISP=SHR
//BCDSDD DSN=DFHSM.BCDS,DISP=SHR
//SYSIN DD *
  DCOLLECT -
  OUTDATASET(HLQ.DCOLLECT.DATA) -
  MIGRATEDATA -
  BACKUPDATA -
  CAPPLANDATA
/*

Step 7: Collect VSM data 

VSM capacity data - (MVC, VTV and VOL Report)

This applies to a tape configuration with VSM systems with RTD's, maybe combined with some tape drives in the tape library directly connected to MF (i.e. some tape drives are not RTD's behind VSM, but they are in the same tapelib).
This is data extracted from the Oracle (HSC/ELS) CDS (Control DataSet). Please collect one report for each CDS.

MVC, VTV and VOL Report

GROOVY
//VMVCRPT   JOB (ACCNT#),'IEBCOPY',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1), 
//         NOTIFY=&SYSUID,TIME=1440                                   
//***************************************************************     
//*  GENERATE AN MVC REPORT                            *     
//***************************************************************     
//MVCR   EXEC PGM=SWSADMIN                                            
//SLSCNTL    DD DSN=STK.HSC.CDS1,DISP=SHR   <=PRIMARY CDS DSN=>       
//SLSPRINT   DD SYSOUT=*                                              
//SYSOUT     DD SYSOUT=*                                              
//SLSIN      DD *                                                     
 MVCRPT 
***********************************************************************************
//VVTVRPT   JOB (ACCNT#),'IEBCOPY',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1), 
//         NOTIFY=&SYSUID,TIME=1440                                   
//*                                                                   
//***************************************************************     
//*  GENERATE A VTV REPORT                             *     
//***************************************************************     
//VTVR   EXEC PGM=SWSADMIN                                            
//SLSCNTL    DD DSN=STK.HSC.CDS1,DISP=SHR    <=PRIMARY CDS DSN=>      
//SLSPRINT   DD SYSOUT=*                                              
//SLSIN      DD *                                                     
 VTVRPT                                                               
***********************************************************************************
//VVOLRPT   JOB (ACCNT#),'IEBCOPY',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1), 
//         NOTIFY=&SYSUID,TIME=1440                                   
//*                                                                   
//***************************************************************     
//*  GENERATE A VOL REPORT                             *     
//***************************************************************     
//VOLR   EXEC PGM=SWSADMIN                                            
//SLSCNTL    DD DSN=STK.HSC.CDS1,DISP=SHR    <=PRIMARY CDS DSN=>      
//SLSPRINT   DD SYSOUT=*                                              
//SLSIN      DD *                                                     
 VOLRPT                                                               

Step 8: Terse

Compressing the data sets reduces the file size before transfer via FTP.

If you do not have the IBM TRSMAIN program installed, it can be downloaded for free from the IBM support website. The TRSMAIN program does not support tape. Please move the data to disk before compression.

GROOVY
//TERSE EXEC PGM=TRSMAIN,PARM='PACK'
//SYSPRINT DD SYSOUT=*
//INFILE DD DISP=SHR,DSN=HLQ.SMF21
//OUTFILE DD DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,SPACE=(CYL,(50,50),RLSE),
// DCB=(RECFM=FB,LRECL=1024,BLKSIZE=6144),
// DSN=HLQ.SMF21.TRS 

Please terse all data sets except those where transfer via text mode is possible.

Step 9: Share files to mainstorconcept

Contact your mainstorconcept representative as soon as you are ready to transfer data to us so that we can provide you with your secure data transfer access.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.