Modernizing Mainframe Applications by Harnessing Specialty Processors and the Power of the Cloud
This article digs into mainframe modernization by exploring the role of mainframe specialty processors and the significance of cloud computing in the digital age.
Join the DZone community and get the full member experience.Join For Free
The latest IBM mainframe model, the z16, is fully compatible with the original IBM 360, although many improvements have been made over the 60 years the product line has been in production. Today, IBM mainframes host applications that run many of the world’s largest and most successful businesses. An estimated 10,000 mainframe systems are being used today for industries spanning banking, healthcare, insurance, retail, telecommunications, travel, and more. And mainframe applications are used to process credit card payments, stock trades, and other business-critical transactions.
However, the cost of mainframe computing can be significant. As such, many modernization efforts are designed to reduce costs and modernize applications. These efforts can be aided using IBM Z mainframe specialty processors such as the IFL (Integrated Facility for Linux) and zIIP (System Z Integrated Information Processor). Workloads that run on these processors are less expensive than those that run on traditional IBM Z general-purpose processors.
And finally, integrating cloud computing techniques and technology can be another key aspect of mainframe modernization efforts. Cloud computing can provide a platform for integrating and extending mainframe systems by providing cost savings and are more modern development paradigm using microservices and containers.
The Impact and Benefits of Mainframe Specialty Processors
Mainframe specialty processors provide another significant benefit for mainframe modernization initiatives. Which raises the question, “What is a specialty processor?”
The IBM z16 mainframe runs on the Telum chip, which is used for general-purpose processing on the platform. The z16 can be augmented with specialty processors, as well. If so equipped, certain types of workloads are run on the specialty processor(s) instead of on the general-purpose CPU. Workload that runs on a specialty processor is not subject to licensed software charges, which can significantly decrease the software bill for mainframe customers.
Although a thorough understanding of mainframe pricing and licensing can be complex, an organization’s bill for mainframe software is calculated monthly based on the peak average usage during the month. Software cost rises as the capacity and utilization of the mainframe rises. But if capacity can be run on a specialty processor, then that workload can be removed from software bill calculation. As the workload that is redirected to specialty processors increases, cost savings can also increase. However, specialty processors can only run certain, specific types of workloads, so not everything can run on them.
There currently are three different types of mainframe specialty processors:
1. ICF: Internal Coupling Facility – used for processing coupling facility cycles in a data-sharing environment.
2. IFL: Integrated Facility for Linux – used for processing Linux on System Z workload on an IBM mainframe.
3. zIIP: Integrated Information Processor – used for processing certain, specific types of distributed workloads.
The ICF, or Internal Coupling Facility, is designed to be used for processing coupling facility cycles in a mainframe Data Sharing environment. Data Sharing is enabled via a Parallel Sysplex, which is a feature of the IBM Z mainframe that enables up to 32 IBM z/OS systems to be connected and behave as a single, logical computing platform.
A Parallel Sysplex requires at least one Coupling Facility (CF). The CF controls the manner in which data is shared between and among the connected systems, including lock management and synchronization, system availability, and other systems management facilities.
A CF can run in a logical partition (LPAR), or it can run on an ICF. Most large organizations choose to use ICFs because they are tightly integrated into the mainframe architecture, provide lower-latency access to shared data, locks, and synchronization services, and the workload performed on the ICF is not chargeable.
The IFL, or Integrated Facility for Linux, is a specialty processor that is optimized for running Linux-based workloads. Using an IFL, organizations can run Linux workloads utilizing the power and reliability of IBM mainframes.
Traditional z/OS workloads are not charged for IFL capacity. Organizations are charged for IFL capacity based on the number of IFL processors they have allocated and the usage, generally as a fixed monthly fee or a pay-as-you-go model.
Finally, the zIIP, or Integrated Information Processor, is a dedicated processor that operates asynchronously with mainframe general processors. Relevant workloads can be redirected to run on a zIIP instead of a general processor. Software charges are not imposed on the workload that runs on the zIIP.
However, not all types of work can run on the zIIP, only “relevant workloads.” What is relevant is decided by IBM, but the types of workloads that run on the zIIP are typically newer functionality that might otherwise be built to run on non-mainframe platforms. The zIIP is a mechanism IBM uses to reduce the cost of such workload to encourage users to run it on the mainframe. It is also a target for organizations looking to modernize their mainframe processes.
The exact types of workloads that can run on the zIIP are ever-evolving and documented by IBM on their website. The predominant workloads that can exploit zIIPs are Db2-distributed SQL requests and Java applications. As such, legacy modernization efforts that convert COBOL workloads to Java workloads may not only rejuvenate the program code into a more modern language understood by younger developers but can also result in a lower overall cost to run the mainframe by exploiting zIIPs.
Java is one of the world’s most popular programming languages, especially for developing enterprise applications in large organizations. As we mentioned earlier, Java consistently ranks near the top of the TIOBE index, which ranks the popularity of programming languages. Furthermore, many organizations are modernizing their legacy applications to use Java as a part of digital transformation efforts. The ability to redirect Java workload from general-purpose CPUs to zIIPs can provide significant cost savings to organizations with heavily used Java applications.
Therefore, using technology like IBM watsonx.ai with GenAI to convert from COBOL to Java is a growing and cost-effective component of mainframe modernization initiatives.
As an additional consideration, all the specialty processors are less costly than the general-purpose mainframe CPU, and as such, not only can they reduce software cost as discussed in the earlier portions of this section, specialty processors also can reduce hardware cost. By running workload on the lower cost specialty processors, organizations can utilize lower cost general-purpose processors and delay costly system upgrades.
Cloud Computing in Mainframe Modernization
Cloud computing can be another significant enabler in modernization efforts, fostering cloud-native applications and innovative strategies while addressing migration and integration challenges. A tactic taken by many organizations that rely on mainframe computing is a hybrid multi-cloud approach.
But what is meant by hybrid multi-cloud? The term hybrid indicates heterogeneity, composed of multiple components. The term multi-cloud means using more than one cloud computing service. So, a hybrid multi-cloud is an IT infrastructure that uses a mix of on-premises computing with private and public cloud from multiple providers.
With the hybrid cloud approach, organizations connect mainframe systems with cloud services. This allows them to leverage cloud resources as needed while still using their mainframes for core applications. Organizations that rely on mainframes tend to adopt this approach because they can continue to benefit from the significant investment they have made in mainframe applications and systems. At the same time, they adopt and integrate cloud services so they can take advantage of their potential for reduced cost and scalability.
Cloud computing provides a platform for integrating and extending mainframe systems. In some cases, organizations may move non-core workloads from the mainframe to the cloud. This offloads processing and storage demands from the mainframe, reducing costs and increasing scalability. The cloud also can be used to store and backup mainframe data, providing scalable and cost-effective storage solutions. Data can be easily accessed and recovered from the cloud when and as needed.
Another approach to integrating cloud with mainframe applications is through application integration. In this case, cloud-based services can be used to build new applications and interfaces that interact with the mainframe, enabling a modern user experience without extensive changes to the mainframe applications.
Deploying microservices as part of a mainframe modernization project can be an important aspect of modernizing legacy mainframe systems. Microservices are a software development approach wherein a complex application is broken down into smaller, independent, and loosely coupled services that communicate using well-defined APIs. Each microservice is designed to perform a specific function or business capability. By contrast, most mainframe applications were built using a traditional monolithic architecture, where all application functionality is tightly integrated into a single codebase.
Microservices are well-suited for cloud-native applications and distributed systems. They require architectural planning, strong governance, and effective software tools to manage the complexity and coordination among services. When implemented correctly, microservices can offer improved maintainability, scalability, and agility for software applications.
Furthermore, microservices are associated with DevOps, continuous integration, and continuous deployment (CI/CD) pipelines. Adopting DevOps can enable more rapid development, testing, and deployment. However, it also requires a change in culture as changes are integrated and adopted more frequently than is the norm for mainframe systems.
Frequently, adopting microservices with DevOps means embracing containerization. A container is a lightweight, standalone, and executable package that includes everything needed to run a piece of software, including the code, runtime, libraries, and system tools. Containers provide a consistent and isolated environment for applications to operate, making them highly portable across different computing environments. This is often associated with containerization technologies like Docker.
IBM z/OS Container Extensions (zCX) delivers integrated container technology, specifically Docker containers, into the mainframe environment. This enables organizations to run Linux-based containers on IBM Z mainframes alongside traditional mainframe workloads. Using zCX, you can isolate the mainframe and container workloads, allowing both to run side by side on the same hardware. This ensures that mainframe operations are not disrupted by the presence of containers and vice versa.
Container workloads running on zCX share the same underlying hardware resources as the mainframe, thereby using the mainframe's high-performance computing capabilities. This resource efficiency can be a critical success factor when modernizing legacy mainframe applications.
Furthermore, zCX containers can be easily moved between different IBM Z mainframes and even to other platforms where Docker containers are supported. This portability enhances the flexibility of deploying applications.
And zCX supports DevOps practices by allowing mainframe applications and containerized applications to be developed, tested, and deployed together. IBM zCX integrates with the broader container ecosystem, including Docker tools, Kubernetes, and container orchestration platforms. This allows organizations to leverage familiar container technologies.
Modernization: ZCX can be a valuable tool in the modernization of legacy mainframe applications. It allows organizations to containerize parts of the mainframe application, enabling more flexible development and deployment practices.
In summary, ZCX for containers on IBM Z mainframes is a technology that bridges the gap between traditional mainframe workloads and modern containerized applications. It provides a path for organizations to modernize their mainframe environments by adopting containerization and integrating them into their existing mainframe infrastructure. This can offer greater agility, scalability, and flexibility in running workloads on IBM Z systems.
While taking advantage of the benefits of microservices architecture. Here's a step-by-step guide on how to deploy microservices in the context of mainframe modernization:
- Scalability: Cloud resources can be dynamically scaled to handle peak loads, ensuring that the mainframe system doesn't become a bottleneck during periods of high demand.
- Leveraging the cloud for mainframe modernization is a complex process that requires careful planning and execution.
- Modernizing legacy systems is never as simple as wholesale replacement of existing processes, many of which have run for decades.
- Adopting a hybrid cloud approach can help to deliver modernization at a lower cost while taking advantage of the best features of multiple computing architectures and platforms.
While banking on the robust capabilities, expansive scalability, and unwavering reliability of the IBM mainframe, organizations are actively engaged in the integration of contemporary technologies and architectures into their IT framework. Initiatives to revamp their mainframe systems are underway, presenting notable challenges due to the critical role these systems play in managing the infrastructure of some of the globe's most substantial enterprises.
The examination in this article encompasses various technologies aimed at facilitating the success of organizations in the modernization of their mainframe systems and applications. To support converted code and achieve cost reduction, organizations can employ mainframe specialty processors. Additionally, by adopting a hybrid multi-cloud approach, organizations can advance their mainframe modernization efforts, capitalizing on the architectural strengths and best practices inherent in both mainframe and cloud computing.
Opinions expressed by DZone contributors are their own.