Modernizing Mainframe Applications with Azure- A Comprehensive Guide
As organizations strive to stay competitive in today’s fast-paced digital landscape, many are considering migrating their traditional mainframe applications to the cloud. Azure, Microsoft’s powerful cloud platform, offers a compelling alternative to the mainframe, providing hyperscale compute and storage in a highly available environment.
In this comprehensive guide, we’ll explore the key strategies and considerations for making the switch from a mainframe platform to Azure.
MIPS vs. vCPUs: Mapping Mainframe Workloads to the Cloud
One of the first challenges in a mainframe migration is determining the appropriate level of compute resources needed to run your workloads on Azure. While there is no universal mapping formula, the metric of million instructions per second (MIPS) is often used to estimate the number of virtual CPUs (vCPUs) required.
Generally, a small organization might require less than 500 MIPS, while a large enterprise can easily consume over 5,000 MIPS. At $1,000 per MIPS, a 5,000-MIPS mainframe infrastructure can cost a large organization around $5 million annually. In contrast, a similar Azure deployment is estimated to cost approximately one-tenth of that.
To help you estimate the vCPU requirements, a recent HPE zRef benchmark provides the following guidelines:
- 288 MIPS per Intel-based core for online (CICS) jobs
- 170 MIPS per Intel core for COBOL batch jobs
Based on these benchmarks, this guide estimates 200 MIPS per vCPU for online processing and 100 MIPS per vCPU for batch processing. However, keep in mind that these estimates are subject to change as new VM series become available in Azure.
High Availability and Failover: Ensuring Reliability in the Cloud
Mainframe systems often boast impressive availability, with five 9s (99.999%) uptime when using mainframe coupling and Parallel Sysplex. However, even with these advanced capabilities, system operators still need to schedule downtime for maintenance and initial program loads (IPLs), resulting in actual availability closer to two or three 9s.
In contrast, Azure offers commitment-based service-level agreements (SLAs) where multiple 9s availability is the default, achieved through local or geo-based replication of services. Azure provides additional availability by replicating data from multiple storage devices, either locally or in other geographic regions. In the event of an Azure-based failure, compute resources can access the replicated data on either the local or regional level.
When using Azure Platform as a Service (PaaS) resources, such as Azure SQL Database and Azure Cosmos DB, Azure can automatically handle failovers. For Azure Infrastructure as a Service (IaaS) deployments, failover relies on specific system functionality, such as SQL Server Always On features, failover clustering instances, and availability groups.
Scalability: Embracing the Flexibility of the Cloud
Mainframes typically scale up, while cloud environments scale out. Mainframes can scale out with the use of a coupling facility (CF), but the high cost of hardware and storage makes this approach expensive.
The scale-out features of Azure, on the other hand, are loosely coupled, allowing the cloud to scale up or down to match exact user specifications. This means that compute power, storage, and services can scale on demand under a usage-based billing model, providing greater flexibility and cost-effectiveness compared to traditional mainframe environments.
Backup and Recovery: Simplifying Disaster Preparedness
Mainframe customers often maintain costly disaster recovery sites or rely on independent mainframe providers for disaster contingencies. Synchronizing with a disaster recovery site is usually done through offline copies of data, further adding to the complexity and expense.
In contrast, Azure offers easy-to-implement and cost-effective options for backup, recovery, and redundancy at local, regional, or geo-redundant levels. Features like Azure Backup, Azure Site Recovery, and Azure Storage redundancy make it simpler and more cost-effective to ensure the continuity of your critical workloads.
Storage: Embracing the Flexibility of the Cloud
Mainframe storage terminology can be complex, with terms like central storage, real memory, real storage, and main storage all referring to storage attached directly to the mainframe processor. Mainframe hardware also includes devices such as direct-access storage devices (DASDs) and magnetic tape drives.
Azure, on the other hand, offers a range of flexible and scalable storage options, from massively scalable object stores to file system services, reliable messaging stores, and NoSQL databases. For virtual machines, managed and unmanaged disks provide persistent, secure disk storage. You’ll only pay for the storage options you need, without the high costs associated with traditional mainframe storage.
Mainframe Development and Testing: Accelerating the Migration Journey
A significant driver for mainframe migration projects is the desire to modernize the application development environment, making it more agile and responsive to business needs. Mainframes typically have separate logical partitions (LPARs) for development and testing, such as QA and staging environments.
Mainframe development solutions include compilers (COBOL, PL/I, Assembler) and editors, with the Interactive System Productivity Facility (ISPF) being the most common for the z/OS operating system. Other tools include ROSCOE Programming Facility (RPF) and Computer Associates tools like CA Librarian and CA-Panvalet.
Fortunately, emulation environments and compilers are available on x86 platforms, allowing development and testing workloads to be among the first to migrate from a mainframe to Azure. The availability and widespread use of DevOps tools in Azure, such as Azure DevOps, is further accelerating the migration of these environments.
Conclusion
Migrating from a mainframe platform to Azure offers organizations the opportunity to take advantage of a modern, cloud-based platform that provides hyperscale compute and storage in a highly available environment. By leveraging Azure’s capabilities, you can unlock the value and agility of the cloud while significantly reducing the costs associated with a traditional mainframe infrastructure.
This guide has provided a comprehensive overview of the key strategies and considerations for making the switch, covering topics such as MIPS to vCPU mapping, high availability and failover, scalability, backup and recovery, storage, and mainframe development and testing. With this knowledge, you can embark on your mainframe migration journey to Azure with confidence, positioning your organization for success in the digital era.
For more information, please refer to the original source material at https://raw.githubusercontent.com/MicrosoftDocs/cloud-adoption-framework/main/docs/infrastructure/mainframe-migration/migration-strategies.md.