Introduction
Today’s organizations are adopting cloud and distributed architecture which will support digital innovation, technology advancements, cost optimization & meet enterprise global standards. Mainframes have been globally used by many organizations such as financial
institutions, healthcare organizations, government agencies, retail banking for critical business needs, scalability and reliability and hence mainframe modernization on cloud can be looked at as an opportunity to reap benefits by providing innovative and
flexible solutions.
Modernizing mainframe-based applications has become an important part of today’s enterprise hybrid cloud approach, which will help create single IT infrastructure providing flexible solutions. We can integrate, modernize or implement mainframe solutions
and capabilities on cloud. Business can select the best transformation tools, services, platforms, environments for their workloads and maximize the benefit of modernizations, technical improvements, security, reliability, availability, elasticity & cost optimization.
For example, a simple java-based application for capturing ID card details which stores data in mainframe DB2 can be migrated to cloud-based solutions. In this case, DB2 can be replaced with PostgreSQL database while maintaining continuous data replication
for reliability, autoscaling for automatic instance failover, multiple availability zone for High availability and make use of pay per use model for cost optimization benefits.
As mainframe systems are legacy and tightly coupled, by applying right modernization strategies, we can take benefits of cloud services such as defining serverless architecture patterns, microservices architecture, event driven architecture etc. to achieve
desired results and business value.
Solution Choices
Let us look at key components within Mainframe and its solution choices on AWS cloud.
Compute
- Cobol Programs: COBOL is widely used by Mainframe as it helps write batch programs for various Business’s huge data processing needs. It can run on various platforms including mainframes, Linux, windows and Unix systems. It can be integrated with modern
technologies such as APIs, web services, and databases. - CICS Programs: CICS allows users to write online programs for transactions processing.
- JCL: JCL is used for submitting a program for execution in batch mode.
- Procs: Set of statements embedded in proc and executed through JCL to perform a particular function.
- Copybooks: Set of statements written in Cobol language and embedded in Cobol main programs. It can also be used to define record structure for data processing.
Potential choices on cloud platform can be (AWS Lambda, Amazon EC2, Amazon ECS, Amazon EKS, AWS Fargate, AWS Marketplace) for infrastructure needs while technology choices can be java services in spring boot, scripts, angular, react JS etc. We can also explore
AWS Mainframe Modernization platform which is an AWS cloud native fully managed runtime environment.
Batch Processing via Scheduler
Mainframe systems are mostly batch driven where millions of transactions updates happened offline during the batch window by running jobs via scheduler. This can be achieved by incorporating some cloud services like AWS Step functions, AWS Lambda, Amazon
EventBridge, AWS Batch various partner tools on AWS Marketplace such as Spring batch, IBM Control M, Autosys etc.
Storage
Mainframe storage mainly consists of DASD storage like flat file, VSAM, data warehousing storage type. For relational data, DB2 solutions are widely used.
- Fixed/Variable File Storage – VSAM
- Fixed File Storage – Flat File
- Generation Data Groups (GDG’s)
- DB2 Database
Based on storage type and application use cases, we can map potential services on AWS cloud such as Amazon S3, Amazon EFS, Amazon FSX, Amazon EBS, Amazon RDS PostgreSQL, Amazon global database etc.
Message Queue
Message queue is introduced by IBM to define distributed architecture as well as meet resiliency. A couple of solutions can be considered when designing event driven architecture such as Amazon SQS, Amazon MQ for active Apache, AWS Marketplace solutions
such as IBM MQ etc.
Miscellaneous parameters like control cards, ezy-trieve etc. can be modernized by writing scripts, Amazon S3 for storing parameters, AWS Lambda to execute script etc.
Conclusion
While there is a relatively slow movement on mainframe with respect to modernization, parallel options can be leveraged to develop modern stack. AWS is a significant leader in terms of providing multiple cloud services and prominent choices across various
mainframe solution components. We can build distributed solutions on cloud with Mainframe system integration or fully modernized workloads running on cloud which will present enterprise scale alternatives for modernization.