기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Precisely의 Connect를 MSK 사용하여 Amazon RDS 또는 Amazon으로 VSAM 파일 마이그레이션 및 복제
작성자: Prachi Khanna(AWS) 및 BoopathyGOPALSAMY(AWS)
환경: PoC 또는 파일럿 | 소스: VSAM | 대상: 데이터베이스 |
R 유형: 리아키텍트 | 워크로드: IBM | 기술: 메인프레임, 현대화 |
AWS 서비스: Amazon MSK, Amazon RDS, AWS 메인프레임 현대화 |
요약
이 패턴은 Precisely에서 연결을
사전 조건 및 제한 사항
사전 조건
CICS z/OS용 트랜잭션 서버(CICS TS) V5.1
이상(CICS/VSAM 데이터 캡처) IBM MQ 8.0
이상 z/OS 보안 요구 사항
준수(예: SQData 로드 라이브러리에 대한 APF 권한 부여) VSAM 복구 로그가 켜져 있음
(선택 사항) CDC 로그를 자동으로 캡처하는 CICS VSAM 복구 버전(CICS VR)
활성 AWS 계정
레거시 플랫폼에서 연결할 수 있는 서브넷이 있는 Amazon Virtual Private Cloud(VPC)
Precisely의 VSAM Connect 라이선스
제한 사항
Connect는 소스 VSAM 스키마 또는 카피북을 기반으로 한 자동 대상 테이블 생성을 지원하지 않습니다. 대상 테이블 구조를 처음으로 정의해야 합니다.
Amazon 과 같은 비스트리밍 대상의 경우 엔진 적용 구성 스크립트에서 변환 소스를 대상 매핑으로 지정RDS해야 합니다.
로깅, 모니터링 및 알림 함수는 를 통해 구현APIs되며 외부 구성 요소(예: Amazon CloudWatch)가 완전히 작동해야 합니다.
제품 버전
SQData z/OS용 40134
SQData Amazon Elastic Compute Cloud(Amazon AMI)의 Amazon Linux Amazon Machine Image(EC2)에 대한 4.0.43
아키텍처
소스 기술 스택
작업 제어 언어(JCL)
z/OS Unix 쉘 및 대화형 시스템 생산성 시설(ISPF)
VSAM 유틸리티(IDCAMS)
대상 기술 스택
Amazon EC2
Amazon MSK
Amazon RDS
Amazon VPC
대상 아키텍처
Amazon으로 VSAM 파일 마이그레이션 RDS
다음 다이어그램은 소스 환경(온프레미스 메인프레임)RDS에서 CDC 에이전트/퍼블리셔를 사용하고 대상AWS 환경(클라우드)에서 Apply Engine
이 다이어그램은 다음 배치 워크플로를 보여 줍니다.
Connect는 백업 파일의 VSAM 파일을 비교하여 변경 사항을 식별하여 파일에 대한 변경 사항을 캡처한 다음 로그스트림에 전송합니다.
게시자는 시스템 로그스트림의 데이터를 사용합니다.
게시자는 캡처된 데이터 변경 사항을 TCP/IP를 통해 대상 엔진에 전달합니다. Controller Daemon은 소스와 대상 환경 간의 통신을 인증합니다.
대상 환경의 Apply Engine은 Publisher 에이전트로부터 변경 내용을 받아 관계형 또는 비관계형 데이터베이스에 적용합니다.
이 다이어그램은 다음 온라인 워크플로를 보여 줍니다.
Connect는 로그 복제를 사용하여 온라인 파일의 변경 사항을 캡처한 다음 캡처된 변경 사항을 로그스트림으로 스트리밍합니다.
게시자는 시스템 로그스트림의 데이터를 사용합니다.
게시자는 캡처된 데이터 변경 사항을 TCP/IP를 통해 대상 엔진에 전달합니다. Controller Daemon은 소스 환경과 대상 환경 간의 통신을 인증합니다.
대상 환경의 Apply Engine은 Publisher 에이전트로부터 변경 내용을 받아 관계형 또는 비관계형 데이터베이스에 적용합니다.
Amazon으로 VSAM 파일 마이그레이션 MSK
다음 다이어그램은 MSK 고성능 모드에서 메인프레임에서 Amazon으로 VSAM 데이터 구조를 스트리밍하고 Amazon AVRO 와 통합되는 변환을 자동으로 생성JSON하거나 스키마 변환하는 방법을 보여줍니다MSK.
이 다이어그램은 다음 배치 워크플로를 보여 줍니다.
Connect는 CICS VR을 사용하거나 백업 파일의 VSAM 파일을 비교하여 변경 사항을 식별하여 파일의 변경 사항을 캡처합니다. 캡처된 변경 사항은 로그스트림으로 전송됩니다.
게시자는 시스템 로그스트림의 데이터를 사용합니다.
게시자는 캡처된 데이터 변경 사항을 TCP/IP를 통해 대상 엔진에 전달합니다. Controller Daemon은 소스 환경과 대상 환경 간의 통신을 인증합니다.
병렬 처리 모드에서 작동하는 Replicator Engine은 데이터를 작업 캐시 단위로 분할합니다.
작업자 스레드는 캐시에서 데이터를 캡처합니다.
데이터는 작업자 스레드의 Amazon MSK 주제에 게시됩니다.
사용자는 커넥터를 사용하여 Amazon DynamoDB, Amazon Simple Storage Service(Amazon S3) 또는 Amazon OpenSearch Service와 같은 MSK 대상에 Amazon의 변경 사항을 적용합니다.
이 다이어그램은 다음 온라인 워크플로를 보여 줍니다.
온라인 파일의 변경 사항은 로그 복제를 사용하여 캡처됩니다. 캡처된 변경 사항은 로그스트림으로 스트리밍됩니다.
게시자는 시스템 로그스트림의 데이터를 사용합니다.
게시자는 캡처된 데이터 변경 사항을 TCP/IP를 통해 대상 엔진에 전달합니다. Controller Daemon은 소스 환경과 대상 환경 간의 통신을 인증합니다.
병렬 처리 모드에서 작동하는 Replicator Engine은 데이터를 작업 캐시 단위로 분할합니다.
작업자 스레드는 캐시에서 데이터를 캡처합니다.
데이터는 작업자 스레드의 Amazon MSK 주제에 게시됩니다.
사용자는 커넥터 MSK를 사용하여 Amazon의 변경 사항을 DynamoDB , Amazon S3 또는 OpenSearch Service와 같은 대상에 적용합니다.
도구
Amazon Managed Streaming for Apache Kafka(Amazon MSK)는 Apache Kafka를 사용하여 스트리밍 데이터를 처리하는 애플리케이션을 구축하고 실행하는 데 도움이 되는 완전 관리형 서비스입니다.
Amazon Relational Database Service(Amazon RDS)는 AWS 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장하는 데 도움이 됩니다.
에픽
작업 | 설명 | 필요한 기술 |
---|---|---|
Connect CDC 4.1을 설치합니다. |
| IBM 메인프레임 개발자/관리자 |
zFS 디렉터리를 설정합니다. | zFS 디렉터리를 설정하려면 Precisely 설명서에 있는 zFS 변수 디렉터리의 참고 : 컨트롤러 Daemon 및 Capture/Publisher 에이전트 구성은 z/OS UNIX Systems Services 파일 시스템(zFS라고 함)에 저장됩니다. Controller Daemon, Capture, Storage, Publisher 에이전트에는 적은 수의 파일을 저장하기 위해 사전 정의된 zFS 디렉터리 구조가 필요합니다. | IBM 메인프레임 개발자/관리자 |
TCP/IP 포트를 구성합니다. | TCP/IP 포트를 구성하려면 정밀 설명서의 TCP/IP 포트 참고 : Controller Daemon에는 소스 시스템에 TCP/IP 포트가 필요합니다. 포트는 (캡처된 변경 데이터가 처리되는) 대상 시스템의 엔진에서 참조합니다. | IBM 메인프레임 개발자/관리자 |
z/OS 로그스트림을 생성합니다. | z/OS 로그스트림 참고: Connect는 마이그레이션 중에 로그스트림을 사용하여 소스 환경과 대상 환경 간에 데이터를 캡처하고 스트리밍합니다. z/OS를 JCL 생성하는 예제는 정밀 설명서의 z/OS 시스템 생성을 logStreams | IBM 메인프레임 개발자 |
IDs zFS 사용자 및 시작된 작업을 식별하고 승인합니다. | RACF 를 사용하여 OMVS zFS 파일 시스템에 대한 액세스 권한을 부여합니다. 예제 는 정밀 설명서의 zFS 사용자 및 시작된 작업 식별 및 권한 부여IDs | IBM 메인프레임 개발자/관리자 |
z/OS 공개/개인 키와 인증된 키 파일을 생성합니다. | 를 실행JCL하여 키 페어를 생성합니다. 예제는 이 패턴의 추가 정보 섹션에 있는 키 쌍 예제를 참고하십시오. 자세한 지침은 Precisely 설명서의 z/OS 공개 및 개인 키와 인증된 키 파일 생성 | IBM 메인프레임 개발자/관리자 |
CICS VSAM 로그 복제본을 활성화하고 로그스트림에 연결합니다. | 다음 JCL 스크립트를 실행합니다.
| IBM 메인프레임 개발자/관리자 |
를 통해 VSAM 파일 복구 로그를 활성화합니다FCT. | 파일 제어 테이블(FCT)을 수정하여 다음 파라미터 변경 사항을 반영합니다.
| IBM 메인프레임 개발자/관리자 |
게시자 에이전트에 CDCzLog 대해 를 설정합니다. |
| IBM 메인프레임 개발자/관리자 |
Controller Daemon을 활성화합니다. |
| IBM 메인프레임 개발자/관리자 |
게시자를 활성화합니다. |
| IBM 메인프레임 개발자/관리자 |
로그스트림을 활성화합니다. |
| IBM 메인프레임 개발자/관리자 |
작업 | 설명 | 필요한 기술 |
---|---|---|
EC2 인스턴스에 를 정확하게 설치합니다. | Amazon Linux AMI for Amazon 에 Precisely에서 Connect를 설치하려면 Precisely 설명서의 에 있는 Install ConnectCDC(SQData)UNIX | 일반 AWS |
TCP/IP 포트를 엽니다. | 인바운드 및 아웃바운드 액세스를 위한 컨트롤러 데몬 포트를 포함하도록 보안 그룹을 수정하려면 정밀 설명서의 TCP/IP | 일반 AWS |
파일 디렉터리를 생성합니다. | 파일 디렉토리를 생성하려면 Precisely 설명서의 대상 적용 환경 준비 | 일반 AWS |
Apply Engine 구성 파일을 생성합니다. | Apply Engine의 작업 디렉토리에 Apply Engine 구성 파일을 생성합니다. 다음 예제 구성 파일은 Apache Kafka를 대상으로 보여줍니다.
참고: 자세한 내용은 Apache Kafka 설명서의 보안 | 일반 AWS |
Apply Engine 처리를 위한 스크립트를 생성합니다. | Apply Engine용 스크립트를 생성하여 소스 데이터를 처리하고 소스 데이터를 대상에 복제합니다. 자세한 내용은 Precisely 설명서의 Apply Engine 스크립트 생성 | 일반 AWS |
스크립트를 실행합니다. | 스크립트를 시작하려면 | 일반 AWS |
작업 | 설명 | 필요한 기술 |
---|---|---|
CDC 처리할 VSAM 파일 및 대상 테이블 목록을 확인합니다. |
| 일반 AWS, 메인프레임 |
Connect CDC SQData 제품이 연결되어 있는지 확인합니다. | 테스트 작업을 실행하고 이 작업의 반환 코드가 0(성공)인지 확인합니다. 참고 : Connect CDC SQData Apply Engine 상태 메시지에는 활성 연결 메시지가 표시되어야 합니다. | 일반 AWS, 메인프레임 |
작업 | 설명 | 필요한 기술 |
---|---|---|
메인프레임에서 일괄 작업을 실행합니다. | 수정된 를 사용하여 배치 애플리케이션 작업을 실행합니다JCL. 수정된 에 다음을 JCL 수행하는 단계를 포함합니다.
| 일반 AWS, 메인프레임 |
로그스트림을 확인합니다. | 로그스트림을 확인하여 완료된 메인프레임 일괄 작업에 대한 변경 데이터를 볼 수 있는지 확인합니다. | 일반 AWS, 메인프레임 |
소스 델타 변경 및 대상 테이블의 개수를 확인합니다. | 레코드가 집계되었는지 확인하려면 다음을 수행합니다.
| 일반 AWS, 메인프레임 |
작업 | 설명 | 필요한 기술 |
---|---|---|
CICS 리전에서 온라인 트랜잭션을 실행합니다. |
| IBM 메인프레임 개발자 |
로그스트림을 확인합니다. | 로그스트림이 특정 레코드 수준 변경으로 채워졌는지 확인합니다. | AWS 메인프레임 개발자 |
대상 데이터베이스의 개수를 확인합니다. | Apply Engine에서 레코드 수준 수를 모니터링합니다. | Precisely, Linux |
대상 데이터베이스의 레코드 수와 데이터 레코드를 확인합니다. | 대상 데이터베이스를 쿼리하여 레코드 수와 데이터 레코드를 확인합니다. | 일반 AWS |
관련 리소스
VSAM z/OS
(정밀 설명서) Apply engine
(Precisely 설명서) Replicator engine
(Precisely 설명서) 로그 스트림
(IBM 설명서)
추가 정보
구성 파일 예
이 파일은 소스 환경이 메인프레임이고 대상 환경이 Amazon인 로그스트림에 대한 예제 구성 파일입니다MSK.
-- JOBNAME -- PASS THE SUBSCRIBER NAME -- REPORT progress report will be produced after "n" (number) of Source records processed. JOBNAME VSMTOKFK; --REPORT EVERY 100; -- Change Op has been ‘I’ for insert, ‘D’ for delete , and ‘R’ for Replace. For RDS it is 'U' for update -- Character Encoding on z/OS is Code Page 1047, on Linux and UNIX it is Code Page 819 and on Windows, Code Page 1252 OPTIONS CDCOP('I', 'U', 'D'), PSEUDO NULL = NO, USE AVRO COMPATIBLE NAMES, APPLICATION ENCODING SCHEME = 1208; -- SOURCE DESCRIPTIONS BEGIN GROUP VSAM_SRC; DESCRIPTION COBOL ../copybk/ACCOUNT AS account_file; END GROUP; -- TARGET DESCRIPTIONS BEGIN GROUP VSAM_TGT; DESCRIPTION COBOL ../copybk/ACCOUNT AS account_file; END GROUP; -- SOURCE DATASTORE (IP & Publisher name) DATASTORE cdc://10.81.148.4:2626/vsmcdct/VSMTOKFK OF VSAMCDC AS CDCIN DESCRIBED BY GROUP VSAM_SRC ACCEPT ALL; -- TARGET DATASTORE(s) - Kafka and topic name DATASTORE 'kafka:///MSKTutorialTopic/key' OF JSON AS CDCOUT DESCRIBED BY GROUP VSAM_TGT FOR INSERT; -- MAIN SECTION PROCESS INTO CDCOUT SELECT { SETURL(CDCOUT, 'kafka:///MSKTutorialTopic/key') REMAP(CDCIN, account_file, GET_RAW_RECORD(CDCIN, AFTER), GET_RAW_RECORD(CDCIN, BEFORE)) REPLICATE(CDCOUT, account_file) } FROM CDCIN;
키 쌍 예제
다음은 를 실행JCL하여 키 페어를 생성하는 방법의 예입니다.
//SQDUTIL EXEC PGM=SQDUTIL //SQDPUBL DD DSN=&USER..NACL.PUBLIC, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=21200), // DISP=(,CATLG,DELETE),UNIT=SYSDA, // SPACE=(TRK,(1,1)) //SQDPKEY DD DSN=&USER..NACL.PRIVATE, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=21200), // DISP=(,CATLG,DELETE),UNIT=SYSDA, // SPACE=(TRK,(1,1)) //SQDPARMS DD keygen //SYSPRINT DD SYSOUT= //SYSOUT DD SYSOUT=* //SQDLOG DD SYSOUT=* //*SQDLOG8 DD DUMMY