Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Raccolta di artefatti sorgenti per mainframe
Questo argomento descrive il processo di raccolta del codice sorgente del mainframe e degli artefatti correlati per supportare le iniziative di modernizzazione del mainframe utilizzando Transform. AWS La raccolta e la preparazione adeguate degli artefatti di origine sono fondamentali per il successo dell'analisi, della pianificazione della migrazione e dell'implementazione.
Inventario del codice sorgente
Tipi di codice sorgente dell'applicazione
Sono supportati i seguenti tipi di codice sorgente dell'applicazione:
Programmi COBOL
script JCL
Programmi Assembler
PL/I programmi
transazioni CICS
Programmi naturali
Script REXX
Programmi Easytrieve
Quaderni e articoli inclusi
Librerie Proc
Risorse del database
Sono supportate le seguenti risorse di database:
Script DB2 DCLGEN e DDL
Definizioni del database IMS (PSB e DBD)
Definizioni dei file VSAM
Schemi di database fisici e logici
Procedure e trigger del database
Estensioni dei file del codice sorgente
Se non sei sicuro dell'estensione, lasciala vuota o in formato.txt e AWS Transform la classificherà automaticamente.
La tabella seguente elenca le estensioni di file più comuni per gli artefatti di origine del mainframe.
| Language/Type | Estensioni comuni | Description |
|---|---|---|
| COBOL | .cbl, .cob, .cobol | Programmi sorgente COBOL |
| JCL | .jcl | Script Job Control Language |
| Assemblatore | .asm | programmi in linguaggio Assembler |
| PL/I | .pl1 | PL/I programmi linguistici |
| Definizione CICS | .csd | definizione del sistema CICS (CSD) |
| Naturale | .nat | Programmi naturali |
| REXX | .rex, .rexx | script REXX |
| Facile trieve | .ezt | Programmi di report Easytrieve |
| Quaderni | .copy | quaderni COBOL |
| BMS | .bms | Basic Mapping Support (BMS) |
| PL/I quaderni | .pl1_copy | PL/I quaderni |
| Db2 DCLGEN | .dcl | generatore di dichiarazioni Db2 |
| Definizione Db2 | .sql, .ddl | Definizioni del database Db2 |
| Definizione IMS | .ims | Set di dati di definizione delle risorse IMS (IMS Stage 1) |
| MFS | .mfs | IMS MFS (servizio di formattazione dei messaggi) |
| PSB | .psb | IMS PSB (blocco delle specifiche del programma) |
| DBD | .dbd | Definizioni del database IMS |
| JCL Proc | .prc, .proc | Librerie di procedure JCL |
| JCL include | .inc | JCL Include file |
| Macro | .mac | Macro Assembler |
| Schede di controllo | .ctl | Schede di controllo JCL Utility |
Metodi di raccolta
Estrazione del codice sorgente
Utilizzate client FTP sicuri (WinSCP/FileZilla) per l'estrazione interattiva del codice sorgente dalle librerie PDS mainframe.
Estrazione dello schema DB2
Il software client DB2 LUW (Linux, UNIX e Windows) include l'db2lookutilità come parte del pacchetto di installazione. L'db2lookutilità estrae le istruzioni DDL (Data Definition Language) da un database DB2.
Esegui il comando seguente:
db2look -dDATABASE_NAME-iuserid-wpassword-a -e -m -l -x -f -createdb -printdbcfg -oDATABASE_NAME.sql
L'elenco seguente descrive i parametri:
-d: specifica il nome del database da cui estrarre lo schemaDATABASE_NAME-i: ID utente per l'autenticazione del databaseuserid-w: password per l'autenticazione del databasepassword-a: estrae le informazioni di autorizzazione (concessioni)-e: estrae tutti gli oggetti del database (tabelle, viste, indici e così via)-m: estrae statistiche e caratteristiche fisiche-l: estrae i commenti di tabelle e colonne-x: gli estratti spiegano le tabelle-f: formatta l'output per una migliore leggibilità-createdb: include istruzioni per la creazione di database-printdbcfg: include i parametri di configurazione del database-o: specifica il nome del file di outputDATABASE_NAME.sql
Estrazione delle informazioni del catalogo dal mainframe
Il comando LISTCAT di IDCAMS è un'utilità per recuperare le informazioni del catalogo sui set di dati sul mainframe. Ciò è utile durante i progetti di modernizzazione del mainframe per inventariare i set di dati e comprenderne le caratteristiche.
//LSTCATJ JOB 'LISTCAT',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID //* //STEP1 EXEC PGM=IDCAMS //* //SYSPRINT DD DSN=AWS.M2.CATALOG.LIST, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(1,1),RLSE), // DCB=(RECFM=FBA,LRECL=133,BLKSIZE=0) //* //SYSIN DD * LISTCAT ENT('AWS.M2.CARDDEMO.*') ALL LISTCAT ENT('SYS1.*') ALL /*
Estrazione delle definizioni CICS
L'utilità IBM-provided DFHCSDUP può estrarre le definizioni delle risorse CICS dal file CICS System Definition (CSD).
Utilizzate il seguente JCL per scaricare le definizioni esistenti dal DFHCSD:
//CSDEXTJ JOB 'EXTRACT CSD',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID //* //STEP1 EXEC PGM=DFHCSDUP,REGION=0M, // PARM='CSD(READONLY),PAGESIZE(60),NOCOMPAT' //* //STEPLIB DD DSN=your-hlq.SDFHLOAD,DISP=SHR //DFHCSD DD DSN=your-hlq.DFHCSD,DISP=SHR //* //CBDOUT DD DSN=your-hlq.CSD, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(1,1),RLSE), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=0) //SYSPRINT DD SYSOUT=* //SYSIN DD * EXTRACT GROUP(cics-group) USERPROGRAM(DFH0CBDC) OBJECTS /*
Estrazione delle definizioni IMS
Per estrarre le definizioni IMS, è possibile generare il file di transazione IMS utilizzando l'utilità DFSURDD0. Questa utilità crea istruzioni macro di fase 1 che è possibile utilizzare per scopi di migrazione. Attualmente è supportato solo IMS Stage 1.
Utilizza il seguente JCL per estrarre le definizioni IMS:
//IMSEXTJ JOB 'IMS STAGE 1',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID //* //STEP1 EXEC PGM=DFSURDD0,MEMLIMIT=12G //* //STEPLIB DD DISP=SHR,DSN=your-hlq.SDFSRESL //* //RDDSDSN DD DISP=SHR,DSN=your-rdds//* //SYSOUT DD DSN=your-hlq.STAGE1.IMS, // DISP=(NEW,CATLG,DELETE), // SPACE=(CYL,(1,1),RLSE), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=0) //SYSPRINT DD SYSOUT=* //SYSIN DD * OUTPUT=MAC /*
Estrazione CA-7 delle informazioni sullo scheduler
CA-7 le informazioni sulla pianificazione delle mansioni sono incluse nei report LJOB. Utilizzate l'utilità LJOB con il LIST=NODD parametro per generare i report sul mainframe. I report devono avere un'.ca7estensione. Ogni rapporto deve contenere caratteri ANSI Carriage Control nella colonna 1. È possibile creare un report con caratteri di controllo del carrello nella colonna 1 specificando DCB=RECFM=FBA (o FA) nel codice JCL utilizzato per eseguire l'utilità LJOB.
Ad esempio: LJOB,JOB=ZBN*,LIST=ALL
Per ulteriori informazioni, consulta la documentazione di Broadcom.
Estrazione di dati SMF
I record di System Management Facility (SMF) forniscono metriche di attività utilizzate da AWS Transform per analizzare i processi in batch e l'utilizzo delle transazioni CICS. Sono supportati i seguenti tipi di record SMF: 14, 15, 30 (sottotipo 5), 64, 102, 110 (sottotipo 1 con classe di dati 1, 3 e 4).
Requisiti di formato per i record SMF:
Deve includere i tipi di record 30 e 110 (come minimo)
Deve essere in formato EBCDIC binario non elaborato con byte RDW (Record Descriptor Word) inclusi
Deve essere fornito in uno dei seguenti formati:
Un file fino a 600 MB compresso in formato.zip
Un file di dimensioni fino a 5 GB compresso in formato.tar.gz o .gz
Deve essere archiviato in una cartella separata dal codice sorgente in Amazon S3
Fornisci almeno 13 mesi di record SMF per acquisire cicli di batch annuali e modelli stagionali che potrebbero non essere rilevati in intervalli di tempo più brevi.
Opzione 1: Estrarre e ordinare i record SMF
Utilizzate il seguente esempio di JCL per estrarre e ordinare i record SMF:
//SMFEXTR JOB (ACCT),'EXTRACT SMF',CLASS=A, // MSGCLASS=X,NOTIFY=&SYSUID //*-------------------------------------------------------------------* //* SMF RECORD EXTRACTION TEMPLATE //* CUSTOMIZE: Job card, dataset names, date range, record types //*-------------------------------------------------------------------* //* //* STEP 1: EXTRACT SMF RECORDS //* //EXTRACT EXEC PGM=IFASMFDP //SYSPRINT DD SYSOUT=* //* //* INPUT: Specify your SMF datasets (MAN files or GDG) //* //DUMPIN DD DISP=SHR,DSN=SYS1.MAN1// DD DISP=SHR,DSN=SYS1.MAN2// DD DISP=SHR,DSN=SYS1.MAN3//* //* OUTPUT: Extracted SMF records //* //DUMPOUT DD DSN=your.hlq.SMF.EXTRACT, // DISP=(NEW,CATLG,DELETE), // UNIT=SYSDA, // SPACE=(CYL,(500,100),RLSE), // DCB=(RECFM=VBS,LRECL=32760,BLKSIZE=27998) //* //* CONTROL CARDS //* //SYSIN DD * INDD(DUMPIN,OPTIONS(DUMP)) OUTDD(DUMPOUT,TYPE(14,15,30,110)) DATE(yyyy/ddd,yyyy/ddd) START(0000) END(2359) /* //* //* STEP 2: SORT EXTRACTED RECORDS (OPTIONAL) //* //SORT EXEC PGM=SORT //SORTIN DD DISP=SHR,DSN=your.hlq.SMF.EXTRACT //SORTOUT DD DSN=your.hlq.SMF.SORTED, // DISP=(NEW,CATLG,DELETE), // UNIT=SYSDA, // SPACE=(CYL,(500,100),RLSE), // DCB=(RECFM=VBS,LRECL=32760) //SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(50)) //SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(50)) //SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(50)) //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSIN DD * SORT FIELDS=(11,4,CH,A,7,4,CH,A,15,4,CH,A),EQUALS /*
Personalizza i seguenti valori nel JCL precedente:
Job card: aggiorna account, classe e msgclass
DUMPIN: indica i tuoi set di dati SMF
DUMPOUT: specifica il nome del set di dati di output e l'HLQ
TIPO: Seleziona i tipi di record (14, 15, 30, 110 o altri)
DATA: formato yyyy/ddd (ad esempio 2026/055,2026/056)
SPAZIO: regola in base al volume di dati previsto
Rimuovi il passaggio SORT se non necessario
Opzione 2: Estrarre i dati SMF con DFSORT
È possibile utilizzare DFSORT per consolidare e riportare i dati SMF storici. Ciò è utile se si archiviano i record SMF in un GDG per giorno o settimana. Il seguente processo utilizza DFSORT per consolidare i record SMF dal file SORTIN e filtrare in base ai record specificati nel parametro INCLUDE COND.
//EXTRSMF JOB 'EXTRACT SMF RECORDS',CLASS=S,MSGCLASS=H, // MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID,TIME=1440 //SORTJES2 EXEC PGM=SORT,REGION=0M //SYSOUT DD SYSOUT=* //SORTMSG DD SYSOUT=* //SORTIN DD DISP=SHR,DSN=your.hlq.SMF.EXTRACT //SORTOUT DD DSN=your.hlq.SMF.OUTPUT, // DISP=(MOD,CATLG,DELETE), // DCB=(BUFNO=20, // RECFM=VBS,LRECL=32760,BLKSIZE=27998), // SPACE=(CYL,(1400,900),RLSE) //SORTWK1 DD UNIT=SYSDA,SPACE=(CYL,(30,50)) //SORTWK2 DD UNIT=SYSDA,SPACE=(CYL,(30,50)) //SORTWK3 DD UNIT=SYSDA,SPACE=(CYL,(30,50)) //SORTWK4 DD UNIT=SYSDA,SPACE=(CYL,(30,50)) //SYSIN DD * OPTION COPY INCLUDE COND=(6,1,BI,EQ,X'0E',OR,6,1,BI,EQ,X'0F',OR, 6,1,BI,EQ,X'1E',OR,6,1,BI,EQ,X'40',OR, 6,1,BI,EQ,X'50',OR,6,1,BI,EQ,X'59',OR, 6,1,BI,EQ,X'5C',OR,6,1,BI,EQ,X'65',OR, 6,1,BI,EQ,X'66',OR,6,1,BI,EQ,X'6E')
Per scaricare i dati conservando i dati RDW, è possibile utilizzare un server FTP per ricevere il file estratto. Assicurati che i dati vengano trasferiti in formato binario e che venga utilizzata l'opzione RDW in modo che l'RDW sia incluso nel trasferimento dei dati. Il seguente job mostra un esempio di job FTP per trasferire questo file.
//EXTRSMF JOB 'EXTRACT SMF RECORDS',CLASS=A,MSGCLASS=H, // MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID,TIME=1440 //STEP1 EXEC PGM=FTP,REGION=2048K //SYSIN DD *10.10.10.10useridpasswordtype i LOCSITE RDW put 'your.hlq.SMF.OUTPUT'SMFREQS.SMFquit
Caricamento del rapporto SCRT
Puoi anche caricare un Sub-Capacity rapporto SCRT (Reporting Tool) in Transform. AWS
Caricamento dell'inventario delle applicazioni
Dopo aver raccolto tutti gli artefatti, completa i seguenti passaggi:
Organizza i file in sottocartelle per tipo di elemento (ad esempio, /cobol, /jcl, /copybooks, /db2, /ims, /cics, /ca7).
Comprimi la cartella di primo livello in un unico file.zip.
Carica il file.zip nel bucket Amazon S3 collegato al tuo spazio di lavoro Transform. AWS
Nota
I record SMF devono essere collocati in una cartella separata dal codice sorgente all'interno del bucket Amazon S3 e devono essere in formato.tar.gz o.gz.
Per istruzioni dettagliate su come collegare il bucket Amazon S3 a AWS Transform, consulta. Configura un connettore