Memigrasi dan mereplikasi file VSAM ke Amazon RDS atau Amazon MSK menggunakan Connect from Excently - AWS Prescriptive Guidance

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memigrasi dan mereplikasi file VSAM ke Amazon RDS atau Amazon MSK menggunakan Connect from Excently

Prachi Khanna dan Boopathy GOPALSAMY, Amazon Web Services

Ringkasan

Pola ini menunjukkan kepada Anda cara memigrasi dan mereplikasi file Metode Akses Penyimpanan Virtual (VSAM) dari mainframe ke lingkungan target di AWS Cloud dengan menggunakan Connect from Accurly. Lingkungan target yang tercakup dalam pola ini termasuk Amazon Relational Database Service (Amazon RDS) dan Amazon Managed Streaming for Apache Kafka (Amazon MSK). Connect menggunakan change data capture (CDC) untuk terus memantau pembaruan ke file VSAM sumber Anda dan kemudian mentransfer pembaruan ini ke satu atau beberapa lingkungan target AWS Anda. Anda dapat menggunakan pola ini untuk memenuhi tujuan modernisasi aplikasi atau analisis data Anda. Misalnya, Anda dapat menggunakan Connect untuk memigrasikan file aplikasi VSAM Anda ke AWS Cloud dengan latensi rendah, atau memigrasikan data VSAM Anda ke gudang data AWS atau data lake untuk analitik yang dapat mentolerir latensi sinkronisasi yang lebih tinggi dari yang diperlukan untuk modernisasi aplikasi.

Prasyarat dan batasan

Prasyarat

Batasan

  • Connect tidak mendukung pembuatan tabel target otomatis berdasarkan skema atau copybook sumber VSAM. Anda harus menentukan struktur tabel target untuk pertama kalinya.

  • Untuk target non-streaming seperti Amazon RDS, Anda harus menentukan sumber konversi ke pemetaan target dalam skrip konfigurasi Apply Engine.

  • Fungsi pencatatan, pemantauan, dan peringatan diimplementasikan melalui APIs dan memerlukan komponen eksternal (seperti Amazon CloudWatch) untuk beroperasi penuh.

Versi produk

  • SQData 40134 untuk z/OS

  • SQData 4.0.43 untuk Amazon Linux Amazon Machine Image (AMI) di Amazon Elastic Compute Cloud (Amazon) EC2

Arsitektur

Tumpukan teknologi sumber

  • Bahasa Kontrol Pekerjaan (JCL)

  • z/OS Unix shell dan Fasilitas Produktivitas Sistem Interaktif (ISPF)

  • Utilitas VSAM (IDCAMS)

Tumpukan teknologi target

  • Amazon EC2

  • Amazon MSK

  • Amazon RDS

  • Amazon VPC

Arsitektur target

Memigrasi file VSAM ke Amazon RDS

Diagram berikut menunjukkan cara memigrasikan file VSAM ke database relasional, seperti Amazon RDS, secara real time atau mendekati waktu nyata dengan menggunakan CDC agent/publisher di lingkungan sumber (mainframe lokal) dan Apply Engine di lingkungan target (AWS Cloud).

Diagram showing VSAM file migration from on-premises mainframe to AWS Cloud using CDC and Apply Engine.

Diagram menunjukkan alur kerja batch berikut:

  1. Connect menangkap perubahan ke file dengan membandingkan file VSAM dari file cadangan untuk mengidentifikasi perubahan dan kemudian mengirimkan perubahan ke logstream.

  2. Penerbit mengkonsumsi data dari logstream sistem.

  3. Publisher mengkomunikasikan perubahan data yang ditangkap ke mesin target melalui TCP/IP. Controller Daemon mengotentikasi komunikasi antara sumber dan lingkungan target.

  4. Apply Engine di lingkungan target menerima perubahan dari agen Publisher dan menerapkannya ke database relasional atau non-relasional.

Diagram menunjukkan alur kerja online berikut:

  1. Connect menangkap perubahan dalam file online dengan menggunakan replika log dan kemudian mengalirkan perubahan yang ditangkap ke logstream.

  2. Penerbit mengkonsumsi data dari logstream sistem.

  3. Publisher mengkomunikasikan perubahan data yang ditangkap ke mesin target melalui TCP/IP. Controller Daemon mengotentikasi komunikasi antara sumber dan lingkungan target.

  4. Apply Engine di lingkungan target menerima perubahan dari agen Publisher dan kemudian menerapkannya ke database relasional atau non-relasional.

Migrasi file VSAM ke Amazon MSK

Diagram berikut menunjukkan cara mengalirkan struktur data VSAM dari mainframe ke Amazon MSK dalam mode kinerja tinggi dan secara otomatis menghasilkan konversi skema JSON atau AVRO yang terintegrasi dengan Amazon MSK.

Diagram showing data flow from on-premises mainframe to AWS Cloud services via Amazon VPC.

Diagram menunjukkan alur kerja batch berikut:

  1. Connect menangkap perubahan ke file dengan menggunakan CICS VR atau dengan membandingkan file VSAM dari file cadangan untuk mengidentifikasi perubahan. Perubahan yang diambil dikirim ke logstream.

  2. Penerbit mengkonsumsi data dari logstream sistem.

  3. Publisher mengkomunikasikan perubahan data yang ditangkap ke mesin target melalui TCP/IP. Controller Daemon mengotentikasi komunikasi antara sumber dan lingkungan target.

  4. Mesin Replicator yang beroperasi dalam mode pemrosesan paralel membagi data ke unit cache kerja.

  5. Thread pekerja menangkap data dari cache.

  6. Data dipublikasikan ke topik MSK Amazon dari utas pekerja.

  7. Pengguna menerapkan perubahan dari Amazon MSK ke target seperti Amazon DynamoDB, Amazon Simple Storage Service (Amazon S3) OpenSearch , atau Amazon Service dengan menggunakan konektor.

Diagram menunjukkan alur kerja online berikut:

  1. Perubahan dalam file online ditangkap dengan menggunakan replika log. Perubahan yang ditangkap dialirkan ke logstream.

  2. Penerbit mengkonsumsi data dari logstream sistem.

  3. Publisher mengkomunikasikan perubahan data yang ditangkap ke mesin target melalui TCP/IP. Controller Daemon mengotentikasi komunikasi antara sumber dan lingkungan target.

  4. Mesin Replicator yang beroperasi dalam mode pemrosesan paralel membagi data ke unit cache kerja.

  5. Thread pekerja menangkap data dari cache.

  6. Data dipublikasikan ke topik MSK Amazon dari utas pekerja.

  7. Pengguna menerapkan perubahan dari Amazon MSK ke target seperti DynamoDB, Amazon S3, atau Layanan dengan menggunakan konektor OpenSearch .

Alat

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Instal Connect CDC 4.1.

  1. Hubungi tim Support yang tepat untuk mendapatkan lisensi dan paket instalasi.

  2. Gunakan contoh JCLs untuk menginstal Connect CDC 4.1. Untuk petunjuk, lihat Instal Connect CDC (SQData) menggunakan JCL dalam dokumentasi Tepatnya.

  3. Jalankan SETPROG APF perintah untuk mengotorisasi pustaka beban Connect SQData.v4NNN.LoadLib.

Pengembang/Admin Mainframe IBM

Siapkan direktori ZFs.

Untuk menyiapkan direktori ZFs, ikuti instruksi dari direktori variabel ZFs di dokumentasi Tepat.

catatan

Konfigurasi Daemon dan Capture/Publisher agen pengontrol disimpan dalam sistem file z/OS UNIX Systems Services (disebut sebagai ZFs). Agen Controller Daemon, Capture, Storage, dan Publisher memerlukan struktur direktori ZFs yang telah ditentukan untuk menyimpan sejumlah kecil file.

Pengembang/Admin Mainframe IBM

Konfigurasikan TCP/IP port.

Untuk mengkonfigurasi TCP/IP port, ikuti instruksi dari port TCP/IP di dokumentasi Tepat.

catatan

Daemon Controller membutuhkan TCP/IP port pada sistem sumber. Port direferensikan oleh mesin pada sistem target (di mana data perubahan yang ditangkap diproses).

Pengembang/Admin Mainframe IBM

Buat z/OS logstream.

Untuk membuat logstream z/OS, ikuti instruksi dari Buat LogStreams z/OS sistem di dokumentasi Tepatnya.

catatan

Connect menggunakan logstream untuk menangkap dan mengalirkan data antara lingkungan sumber dan lingkungan target selama migrasi.

Untuk contoh JCL yang membuat z/OS LogStream, lihat Membuat z/OS sistem LogStreams dalam dokumentasi Tepatnya.

Pengembang Mainframe IBM

Identifikasi dan otorisasi IDs untuk pengguna ZF dan mulai tugas.

Gunakan RACF untuk memberikan akses ke sistem file OMVS ZFS. Untuk contoh JCL, lihat Mengidentifikasi dan mengotorisasi pengguna ZFs dan memulai tugas IDs dalam dokumentasi Tepatnya.

Pengembang/Admin Mainframe IBM

Hasilkan kunci z/OS publik/pribadi dan file kunci resmi.

Jalankan JCL untuk menghasilkan key pair. Sebagai contoh, lihat Contoh pasangan kunci di bagian Informasi tambahan dari pola ini.

Untuk petunjuk, lihat Menghasilkan kunci z/OS publik dan pribadi serta file kunci resmi dalam dokumentasi Tepatnya.

Pengembang/Admin Mainframe IBM

Aktifkan Replikasi Log CICS VSAM dan lampirkan ke logstream.

Jalankan skrip JCL berikut:

//STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * ALTER SQDATA.CICS.FILEA - LOGSTREAMID(SQDATA.VSAMCDC.LOG1) - LOGREPLICATE
Pengembang/Admin Mainframe IBM

Aktifkan Log Pemulihan File VSAM melalui FCT.

Ubah File Control Table (FCT) untuk mencerminkan perubahan parameter berikut:

Configure FCT Parms CEDA ALT FILE(name) GROUP(groupname) DSNAME(data set name) RECOVERY(NONE|BACKOUTONLY|ALL) FWDRECOVLOG(NO|1–99) BACKUPTYPE(STATIC|DYNAMIC) RECOVERY PARAMETERS RECOVery : None | Backoutonly | All Fwdrecovlog : No | 1-99 BAckuptype : Static | Dynamic
Pengembang/Admin Mainframe IBM

Siapkan CDCz Log untuk agen Penerbit.

  1. Buat file CAB Penerbit CDCz Log.

  2. Enkripsi data yang dipublikasikan.

  3. Siapkan CDCz Log Publisher Runtime JCL.

Pengembang/Admin Mainframe IBM

Aktifkan Daemon Pengontrol.

  1. Buka panel ISPF dan jalankan perintah berikut untuk membuka menu Tepat: EXEC 'SQDATA.V4nnnnn.ISPFLIB(SQDC$STA)' 'SQDATA.V4nnnnn'

  2. Untuk mengatur Daemon Pengontrol, pilih opsi 2 dari menu.

Pengembang/Admin Mainframe IBM

Aktifkan penerbit.

  1. Buka panel ISPF dan jalankan perintah berikut untuk membuka menu Tepat: EXEC 'SQDATA.V4nnnnn.ISPFLIB(SQDC$STA)' 'SQDATA.V4nnnnn'

  2. Untuk mengatur penerbit, pilih opsi 3 dari menu dan saya untuk menyisipkan.

Pengembang/Admin Mainframe IBM

Aktifkan logstream.

  1. Buka panel ISPF dan jalankan perintah berikut untuk membuka menu Tepat: EXEC 'SQDATA.V4nnnnn.ISPFLIB(SQDC$STA)' 'SQDATA.V4nnnnn'

  2. Untuk mengatur logstream, pilih opsi 4 dari menu dan saya untuk menyisipkan. Kemudian, masukkan nama logstream yang dibuat pada langkah-langkah sebelumnya.

Pengembang/Admin Mainframe IBM
TugasDeskripsiKeterampilan yang dibutuhkan

Instal Tepat pada sebuah EC2 instance.

Untuk menginstal Connect from Tepat di Amazon Linux AMI untuk Amazon EC2, ikuti petunjuk dari Install Connect CDC (SQData) pada UNIX dalam dokumentasi Tepat.

AWS Umum

Buka TCP/IP port.

Untuk memodifikasi grup keamanan untuk menyertakan port Daemon Pengontrol untuk akses masuk dan keluar, ikuti instruksi dari TCP/IP dalam dokumentasi Tepatnya.

AWS Umum

Buat direktori file.

Untuk membuat direktori file, ikuti petunjuk dari Siapkan lingkungan penerapan target dalam dokumentasi Tepat.

AWS Umum

Buat file konfigurasi Apply Engine.

Buat file konfigurasi Apply Engine di direktori kerja Apply Engine. Contoh file konfigurasi berikut menunjukkan Apache Kafka sebagai target:

builtin.features=SASL_SCRAM security.protocol=SASL_SSL sasl.mechanism=SCRAM-SHA-512 sasl.username= sasl.password= metadata.broker.list=
catatan

Untuk informasi selengkapnya, lihat Keamanan dalam dokumentasi Apache Kafka.

AWS Umum

Buat skrip untuk pemrosesan Apply Engine.

Buat skrip untuk Apply Engine untuk memproses data sumber dan mereplikasi data sumber ke target. Untuk informasi selengkapnya, lihat Membuat skrip mesin terapkan di dokumentasi Tepatnya.

AWS Umum

Jalankan skrip.

Gunakan SQDENG perintah SQDPARSE dan untuk menjalankan skrip. Untuk informasi selengkapnya, lihat Mengurai skrip untuk ZoS di dokumentasi Tepatnya.

AWS Umum
TugasDeskripsiKeterampilan yang dibutuhkan

Validasi daftar file VSAM dan tabel target untuk pemrosesan CDC.

  1. Validasi file VSAM, termasuk log replikasi, log pemulihan, parameter FCT, dan logstream.

  2. Validasi tabel database target, termasuk apakah tabel dibuat sesuai definisi skema yang diperlukan, akses tabel, dan kriteria lainnya.

AWS Umum, Mainframe

Verifikasi bahwa SQData produk Connect CDC ditautkan.

Jalankan pekerjaan pengujian dan verifikasi bahwa kode pengembalian dari pekerjaan ini adalah 0 (Berhasil).

catatan

Connect CDC SQData Apply Engine pesan status harus menampilkan pesan koneksi aktif.

AWS Umum, Mainframe
TugasDeskripsiKeterampilan yang dibutuhkan

Jalankan pekerjaan batch di mainframe.

Jalankan pekerjaan aplikasi batch menggunakan JCL yang dimodifikasi. Sertakan langkah-langkah dalam JCL yang dimodifikasi yang melakukan hal berikut:

  1. Ambil cadangan file data.

  2. Bandingkan file cadangan dengan file data yang dimodifikasi, buat file delta, lalu catat jumlah catatan delta dari pesan.

  3. Dorong file delta ke z/OS logstream.

  4. Jalankan JCL. Untuk contoh JCL, lihat Mempersiapkan file compare capture JCL dalam dokumentasi Tepatnya.

AWS Umum, Mainframe

Periksa logstream.

Periksa logstream untuk mengonfirmasi bahwa Anda dapat melihat data perubahan untuk pekerjaan batch mainframe yang telah selesai.

AWS Umum, Mainframe

Validasi jumlah untuk perubahan delta sumber dan tabel target.

Untuk mengonfirmasi bahwa catatan dihitung, lakukan hal berikut:

  1. Kumpulkan jumlah delta sumber dari pesan JCL batch.

  2. Pantau Apply Engine untuk mencatat jumlah level dari jumlah catatan yang dimasukkan, diperbarui, atau dihapus dalam file VSAM.

  3. Kueri tabel target untuk jumlah catatan.

  4. Bandingkan dan hitung semua jumlah rekor yang berbeda.

AWS Umum, Mainframe
TugasDeskripsiKeterampilan yang dibutuhkan

Jalankan transaksi online di wilayah CICS.

  1. Jalankan transaksi online untuk memvalidasi kasus uji.

  2. Validasi kode eksekusi transaksi (RC = 0 - Sukses).

Pengembang Mainframe IBM

Periksa logstream.

Konfirmasikan bahwa logstream diisi dengan perubahan tingkat catatan tertentu.

Pengembang AWS Mainframe

Validasi hitungan dalam database target.

Pantau Apply Engine untuk mencatat jumlah level.

Tepatnya, Linux

Validasi jumlah catatan dan catatan data dalam database target.

Kueri database target untuk memvalidasi jumlah catatan dan catatan data.

AWS Umum

Sumber daya terkait

Informasi tambahan

Contoh file konfigurasi

Ini adalah contoh file konfigurasi untuk logstream di mana lingkungan sumber adalah mainframe dan lingkungan target adalah 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;

Contoh pasangan kunci

Ini adalah contoh bagaimana menjalankan JCL untuk menghasilkan key pair:

//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