Rehost aplikasi mainframe untuk Azure dengan kompilator Raincode

Azure Virtual Machines
Azure Kubernetes Service (AKS)
Azure Files
Azure ExpressRoute
Penyeimbang Beban Azure

Arsitektur ini menunjukkan bagaimana pengkompilasi Raincode COBOL memodernisasi aplikasi warisan mainframe dengan memigrasikan dan mengintegrasikannya dengan tumpukan teknologi modern berbasis Azure tanpa mengubah satu baris kode pun. Dengan teknologi kompilator Raincode, Anda dapat menjaga aplikasi mainframe yang dioptimalkan saat ini dan menyebarkannya di cloud, memungkinkan Anda mempertahankan pengembangan selama beberapa dekade sambil meningkatkan performa dan fleksibilitas. Solusi Raincode bertujuan untuk mengubah mainframe menjadi arsitektur Azure asli dengan mempertahankan logika bisnis sambil mengubah seluruh arsitektur. Raincode mendukung fleksibilitas aplikasi di seluruh Linux dan Windows dengan penyebaran komputer virtual (VM) atau kontainer pada Azure.

Arsitektur

Arsitektur IBM z/OS lama

Diagram berikut menunjukkan contoh arsitektur mainframe berbasis COBOL warisan, sebelum migrasi ke Azure.

Diagram yang menunjukkan arsitektur mainframe berbasis COBOL warisan.

Unduh file Visio dari arsitektur ini.

Alur kerja

Anotasi berikut memetakan dari sumber IBM z/OS ke Azure:

A. Emulasi terminal IBM 3270 untuk permintaan dan pengguna online digantikan oleh browser web untuk mengakses sumber daya sistem di Azure.

B. COBOL dan kode aplikasi warisan lainnya dikonversi ke C#/.NET. Raincode menghasilkan kode 100% aman dan terkelola untuk .NET dan .NET Core.

C. Pengkompilasi RAINCODE COBOL memodernisasi aplikasi warisan mainframe dengan memigrasikan dan mengintegrasikannya dengan tumpukan teknologi modern berbasis cloud tanpa mengubah satu baris kode pun.

D. Fungsi otomatisasi beban kerja, penjadwalan, pelaporan, dan pemantauan sistem dapat mempertahankan platform saat ini, karena platform tersebut sudah kompatibel dengan Azure.

E. Struktur database warisan seperti Db2 dan IDMS dapat dimigrasikan ke Azure SQL Database dengan semua kemampuan DR/HA yang Azure sediakan. Raincode juga mendukung kueri SQL statis atau dinamis melalui SQL Server atau di Azure SQL DB.

F. Struktur file (VSAM, file flat, pita virtual, dan sejenisnya) dipetakan ke konstruksi data Azure dalam file terstruktur dan/atau penyimpanan blob. Fitur seperti replikasi geografis redundan dan Replikasi Grup Failover Otomatis Azure tersedia guna menyediakan perlindungan data.

G. Subsistem printer opsional mengelola printer lokal.

H. z/OS berjalan pada Partisi Logis (LPAR)

1. LPAR mewakili subset dari sumber daya perangkat keras komputer. Setiap LPAR dapat menghosting OS terpisah. Meskipun contoh ini hanya menampilkan instans Z/OS, LPAR lain yang berjalan pada perangkat keras yang sama dapat menghosting lingkungan operasi lainnya, seperti z/VM, atau mesin lain, seperti zIIP atau IFL.

Pascamigrasi, arsitektur berbasis Azure

Diagram ini menunjukkan bagaimana arsitektur warisan dapat dimigrasikan ke Azure, memanfaatkan kompilator Raincode dan banyak layanan Azure modern lainnya.

Migrasi arsitektur lama ke alur kerja Azure.

Unduh file Visio dari arsitektur ini.

Alur kerja

  1. Akses pengguna disediakan melalui port TLS 443 untuk mengakses aplikasi berbasis web. Lapisan presentasi aplikasi berbasis web dapat disimpan dengan perubahan minimal untuk mengurangi pelatihan ulang pengguna. Alternatifnya, lapisan presentasi aplikasi web dapat diperbarui dengan kerangka kerja UX modern sesuai kebutuhan.

  2. Dalam Azure, akses ke kluster komputasi aplikasi dilakukan melalui Azure Load Balancer, memungkinkan perluasan sumber daya komputasi untuk memproses pekerjaan masukan.

  3. Perangkat lunak emulasi sistem Raincode juga dapat mendukung penyebaran dalam kontainer. Dengan teknologi kompilator Raincode, Anda dapat menjaga aplikasi mainframe yang dioptimalkan saat ini dan menyebarkannya di .NET Core.

  4. Aplikasi native cloud adalah kumpulan layanan independen dan otonom yang dikemas sebagai kontainer ringan.

    Tidak seperti mesin virtual, kontainer dapat menambah dan mengurangi skala dengan cepat. Karena unit penskalaan bergeser ke kontainer, pemanfaatan infrastruktur dioptimalkan.

  5. Layanan data menggunakan kombinasi penyimpanan berkinerja tinggi pada disk solid-state (SSD) Ultra atau Premium, penyimpanan file pada Azure NetApp Files atau Azure Files, dan penyimpanan blob, arsip, dan cadangan standar yang dapat redundan secara lokal atau geo-redundan.

  6. Azure SQL Database menggunakan tier Hyperscale atau Business Critical untuk mendukung IOPS tinggi dan SLA waktu aktif yang tinggi. Selanjutnya, Private Link untuk Azure SQL Database digunakan untuk menyediakan koneksi privat dan langsung yang diisolasi ke Backbone Jaringan Azure dari VM Azure ke Azure SQL Database. Alat migrasi data Raincode dapat mengonversi skema DMS/RDMS menjadi SQL.

  7. Azure Blob Storage adalah zona pendaratan umum untuk sumber data eksternal.

  8. Implementasi Direktori Aktif perlu dibuat atau sudah dijalankan. Raincode menyediakan integrasi identitas RACF dan Top Secret menggunakan ekstensi Direktori Aktif.

Komponen

  • Azure Kubernetes Service (AKS) adalah layanan Kubernetes yang dikelola sepenuhnya untuk menyebarkan dan mengelola aplikasi dalam kluster komputasi berbasis kontainer.

  • Microsoft Azure Virtual Network (VNet) adalah blok penyusun dasar untuk jaringan privat Anda di Azure. VNet memungkinkan banyak jenis sumber daya Azure, seperti Azure Virtual Machines (VM), untuk berkomunikasi satu sama lain dengan aman, internet, dan jaringan lokal. VNet mirip dengan jaringan tradisional yang akan Anda operasikan di pusat data Anda sendiri, tetapi membawa lebih banyak manfaat dari infrastruktur Azure, seperti skala, ketersediaan, dan isolasi.

  • Azure Files menawarkan berbagi file yang dikelola sepenuhnya di cloud yang dapat diakses melalui protokol Blok Pesan Server (SMB) standar industri. Berbagi file Azure dapat dipasang secara bersamaan pada penyebaran di cloud atau di lokal untuk Windows, Linux, dan macOS.

  • Azure ExpressRoute memungkinkan Anda memperluas jaringan lokal ke cloud Microsoft melalui koneksi privat yang difasilitasi oleh penyedia konektivitas. Dengan ExpressRoute, Anda dapat membuat koneksi ke layanan cloud Microsoft, seperti Microsoft Azure dan Microsoft 365.

  • Azure Load Balancer beroperasi pada lapisan empat model Open Systems Interconnection (OSI). Ini adalah titik kontak tunggal untuk klien. Load Balancer mendistribusikan alur masuk yang tiba di bagian depan load balancer ke instans kumpulan back-end. Alur ini sesuai dengan aturan penyeimbangan beban dan pemeriksaan kesehatan yang telah dikonfigurasi. Instans kumpulan back-end dapat menjadi Mesin Virtual Azure atau instans dalam set skala mesin virtual.

  • Azure SQL Database adalah mesin database platform as a service (PaaS) yang dikelola sepenuhnya yang selalu menjalankan versi stabil terbaru dari SQL Server dan OS yang di-patch, dengan ketersediaan 99,99%. SQL Database menangani peningkatan, patching, backup, pemantauan, dan sebagian besar fungsi manajemen database lainnya tanpa keterlibatan pengguna. Kemampuan PaaS ini memungkinkan Anda fokus pada administrasi dan pengoptimalan basis data khusus domain yang penting bagi bisnis.

  • Azure Cosmos DB adalah layanan PaaS Azure untuk database NoSQL.

  • Azure Database for PostgreSQL adalah layanan PaaS Azure untuk database PostgreSQL.

Detail skenario

Arsitektur ini menggambarkan bagaimana solusi Raincode berjalan pada Azure. Raincode di Azure mendukung fitur-fitur berikut:

  • Kode yang 100% thread-safe dan dikelola untuk .NET Framework dan .NET.

  • Solusi yang terutama ditujukan untuk mengubah mainframe menjadi arsitektur cloud-native.

  • Dukungan asli untuk kueri SQL statis atau dinamis melalui SQL Server lokal atau di Azure SQL DB.

  • Dukungan untuk Db2 (melalui HIS Microsoft) dan SQL Server.

  • Integrasi Visual Studio, memiliki debugger, kompilator, konfigurasi, IntelliSense, pemberi warna kode, dan manajemen proyek.

  • Dukungan untuk semua jenis data COBOL, dengan representasi memori mainframe.

  • Integrasi dengan kompilator PL/I dan ASM370.

  • Repositori dengan graf panggilan, statistik, dan informasi lain pada saat kompilasi.

  • Dukungan EBCDIC bawaan saat kompilasi dan saat runtime.

Bermigrasi ke infrastruktur cloud modern yang terdistribusi menggunakan Raincode memungkinkan Anda untuk:

  • Memfasilitasi pengembangan dan pemeliharaan baru di C#.

  • Membebaskan diri Anda dari beban keuangan biaya lisensi COBOL.

  • Mengadopsi platform yang fleksibel dan dapat diskalakan dengan menggunakan teknologi terbaru melalui .NET Core.

  • Mengintegrasikan dengan aplikasi modern seperti web dan seluler guna meningkatkan pengalaman pelanggan.

  • Mengubah aplikasi warisan monolitik menjadi arsitektur berorientasi mikro atau layanan (SOA).

  • Kontrol total biaya kepemilikan (TCO) Anda dengan menggunakan fitur skalabilitas dan ketersediaan Azure.

Kemungkinan kasus penggunaan

Banyak kasus penggunaan dapat memanfaatkan kompiler Raincode; kemungkinannya meliputi:

  • Bisnis yang berusaha memodernisasi infrastruktur dan menghindari biaya tinggi, keterbatasan, dan kekakuan terkait dengan mainframe.

  • Mengurangi Utang Teknis dengan memakai cloud native dan DevOps.

  • Mengurangi biaya operasional dan belanja modal.

  • Organisasi yang memilih untuk memindahkan beban kerja mainframe IBM zSeries ke cloud tanpa efek samping dari pembangunan kembali secara menyeluruh.

  • Pelanggan mainframe IBM zSeries yang perlu bermigrasi aplikasi misi-kritis sambil mempertahankan kontinuitas dengan aplikasi lokal lainnya.

  • Tim yang mencari skalabilitas horizontal dan vertikal yang Azure tawarkan.

  • Bisnis yang mendukung solusi yang menawarkan opsi pemulihan bencana.

  • Mengambil keuntungan dari inovasi pengembangan perangkat lunak terbaru: alat, kerangka kerja, bahasa, dan praktik.

Pertimbangan

Pertimbangan ini mengimplementasikan pilar Azure Well-Architected Framework, yang merupakan sekumpulan tenet panduan yang dapat digunakan untuk meningkatkan kualitas beban kerja. Untuk informasi selengkapnya, lihat Microsoft Azure Well-Architected Framework.

Keandalan

Keandalan memastikan aplikasi Anda dapat memenuhi komitmen yang Anda buat kepada pelanggan Anda. Untuk informasi selengkapnya, lihat Daftar Periksa Tinjauan Desain untuk Keandalan.

  • Arsitektur raincode menggunakan Azure Site Recovery untuk mencerminkan VM Azure ke wilayah Azure sekunder untuk failover cepat dan pemulihan bencana (DR) jika pusat data Azure gagal.

Keamanan

Keamanan memberikan jaminan terhadap serangan yang disengaja dan penyalahgunaan terhadap data dan sistem yang berharga. Untuk informasi selengkapnya, lihat daftar periksa desain untuk tinjauan keamanan.

Pengoptimalan Biaya

Pengoptimalan Biaya adalah tentang melihat cara untuk mengurangi pengeluaran yang tidak perlu dan meningkatkan efisiensi operasional. Untuk informasi selengkapnya, lihat Daftar periksa tinjauan desain untuk optimalisasi biaya.

  • Kompiler Raincode COBOL memfasilitasi pengembangan baru di C# dan menghilangkan beban keuangan biaya lisensi COBOL.

  • Dukungan native untuk SQL dan CICS. Kode sumber yang di-debug sama dengan sumber yang dipertahankan, bukan output dari praprosesor.

Keunggulan dalam Operasional

Keunggulan Operasional mencakup proses operasi yang menyebarkan aplikasi dan membuatnya tetap berjalan dalam produksi. Untuk informasi selengkapnya, lihat Daftar periksa tinjauan desain untuk Keunggulan Operasional.

  • Setiap layanan aplikasi native cloud melewati siklus hidup independen, yang dikelola melalui proses DevOps yang gesit.

  • Beberapa alur continuous integration/continuous delivery (CI/CD) dapat bekerja bersama untuk menyebarkan dan mengelola aplikasi native cloud.

Efisiensi Performa

Efisiensi Performa adalah kemampuan beban kerja Anda untuk menskalakan untuk memenuhi tuntutan yang ditempatkan di atasnya oleh pengguna dengan cara yang efisien. Untuk informasi selengkapnya, lihat Daftar Periksa Tinjauan Desain untuk Efisiensi Kinerja.

  • Aplikasi native cloud adalah kumpulan layanan independen dan otonom yang dikemas sebagai kontainer ringan.

  • Tidak seperti mesin virtual, kontainer dapat dengan cepat memperluas dan memperkecil skala.

  • Karena unit penskalaan bergeser ke kontainer, penggunaan infrastruktur dioptimalkan.

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Untukan melihat profil LinkedIn non-publik, masuk ke LinkedIn.

Langkah berikutnya