By Gregory Sechuga, Program Director, IBM Competitive Insights, email@example.com,
JaiPaul Antony, Principal Technology Advocate, IBM Competitive Insights, firstname.lastname@example.org, and
Srirama Krishnakumar, Manager, Principal Technology Advocate, IBM Competitive Insights; email@example.com
Many IBM z customers are looking to modernize and extend existing applications with microservices in IBM z infrastructure, particularly utilizing the existing data on DB2 on z/OS. Some of the ways that the customer might want to modernize the existing applications on IBM z is to move the application to an x86-based infrastructure which is either on-premises or on the public cloud. Another option is to modernize the applications with microservices architecture and deploy them on existing IBM z infrastructure using IBM z/OS Container Extensions (zCX) Foundation for Red Hat OpenShift1
(zCX for OCP).
In this blog, we will discuss why modernizing the existing applications using microservices and deploying them on IBM z using zCX makes the most sense compared to migrating them onto x86-based servers.
To compare the two approaches, we used a lightweight sample microservices application developed for testing various infrastructure options used for deploying containerized applications. This application simulates several online banking functions. The sample application has the following characteristics:
• 10 lightweight Java application microservices running in IBM WebSphere Liberty
• 1 Web Tier service and 9 Business Tier microservices
• All microservices to be deployed in Red Hat OpenShift2
• The database DB2 is hosted on an IBM z15 server
The high-level architecture of the sample application used is shown in Figure 1.
To compare the performance, the same application is deployed without any modifications on OCP on x86 servers and z15 servers with zCX. The database resides on the z15 server in both cases. The deployment architecture for the two compared solutions is shown in Figure 2.
Both OCP clusters on x86 and zCX for OCP on IBM z have the same number of vCPUs per processor core: on x86 servers each physical core is split into 2 vCPUs (1 vCPU per thread); on z15, vCPUs are mapped onto 12 zIIP processors leveraging SMT-2. Both deployments used DB2 database on z/OS. However, for OCP on x86, the configuration of DB2 on z/OS LPAR required 8 CPs and 8 zIIPs to achieve a similar level of transactions per second (TPS) compared to the same application on zCX for OCP colocate with DB2 database in the z/OS LPAR. In the case of zCX for OCP deployment, z/OS LPAR had 4 CPs and 12 zIIPs shared by zCX for OCP and DB2.
A total of 112 x86 cores were used for the production environment for OCP on x86 servers.
In the zCX case, the application is modernized in place and accesses the data source on the same z15 server.
Running the application and the database on the same physical z15 server and in the same LPAR reduces the latency of integration between the application tier and the database, thus improving the application's overall performance. Colocation of the application and the DB2 database also reduced system resources required compared to the application deployed on the OCP cluster on x86 servers and communicating with the database on z15: as noted before, in order to get to the same TPS level, we needed 16 processors (8 CPs and 8 zIIPs) for the LPAR running only DB2 subsystem in case of OCP on x86 compared to 16 processors (4 CPs and 12 zIPPs) shared between zCX and DB2.
The performance tests showed that on average, the OCP on x86 servers achieved 330 TPS per core, and zCX for OCP on z15 was able to deliver 589 TPS per core. This was a 1.8x improvement over the OCP on x86 servers.
Many enterprises would like their databases to be isolated from the application servers and other systems. On x86 platform, it is very common to run the database and the applications on separate servers to achieve high levels of isolation. It should be noted that more servers (hence cores) were required on the OCP on x86 as it required segregation of various types of IT environments - Production, Development, Test, QA, etc. Running these environments on separate servers wastes compute resources.
Contrary to an x86-based infrastructure solution, different types of workloads and even whole IT environments can run on the same IBM z15 server thanks to the PR/SM (Processor Resource/System Manager) hypervisor and LPAR (logical partition) technologies that support EAL5+ isolation levels and effective sharing and prioritization of resources across LPARs. This allows to colocate not only multiple workloads but multiple IT environments on the same large enterprise IBM z server and, therefore, optimizes the use of the compute resources.
Total cost of ownership
The 5-year total cost of ownership (TCO) of the two deployment infrastructures takes into consideration the cost of hardware, software, and facility costs (energy and data center space). The TCO also considers not only the production environment but also factors in the cost of the non-production environment (Development and Test, QA) and the Disaster Recovery (DR) environment.
The sizing of the infrastructure for both options is normalized to support 10,000 TPS. It is assumed that existing z15 servers are used to deploy the application and would require only additional zIIPs. It should be noted that the zIIPs can be shared with other applications on the server if required, to further optimize the utilization of the resources.
The table below shows the 5-year TCO for the two options. We see that deploying the same microservices application on zCX for OCP lowers the TCO by 48% or saves $1.29 Million over a 5-year period.
As noted earlier, more resources are required for DB2 in the x86 scenario than in the zCX scenario due to colocation. Hence the additional costs for HW (additional MIPS consumed) and SW (additional MSU for DB2) for the x86 case.
OCP software licensing only applies to compute node cores that are running the workloads on both platforms. Additionally, for IBM z15, 3 zIIP processors are provided at no charge for every 6 zIIPs purchased for deploying OCP applications.
Since existing IBM z15 servers are used, the cost of DR for the zCX scenario is eliminated completely. The IBM z15 server at the DR site can be configured with CBU capacity and the software does not incur license costs. For the x86 case, fully configured production servers are required with licensed software.
Energy savings and environmental sustainability
Enterprises should factor in the environmental impact when choosing the hosting infrastructure for an application. Deploying this sample microservices application on an IBM z15 server reduces the energy consumption by 327,000 kWh over a 5-year period.
The US Energy Information Administration (EIA) estimates 0.85 pounds of CO2 emissions for each unit (kWh) of electricity generated in the US3. Thus, the reduction in CO2 emissions is about 127 metric tons with the IBM z15.
Assuming an average cost of $0.10 per unit of electricity in the US, the total savings in energy from deploying the application on IBM z15 comes to $32,700.
It is possible to use zCX for OCP to modernize the applications on the IBM z platform by integrating Linux applications with z/OS. This allows for containerized microservices applications to be deployed on an IBM z alongside other z/OS applications. As mentioned earlier, there are additional benefits of deploying the application alongside the database. This approach simplifies the deployment while taking advantage of the scalability, reliability, and security aspects that are inherent in the IBM z platform.
Deploying a containerized solution also improves the application's performance, thus requiring much fewer compute resources. This reduces the overall TCO by 48% compared to deploying the same solution on x86-based servers.
Environmentally responsible enterprises should consider modernizing and deploying applications on zCX for OCP. Doing this reduces the CO2 emissions by 127 metric tons over five years and in the process saves on reduced energy costs.
1. IBM zCX Foundation for Red Hat Foundation. https://www.ibm.com/products/zcx-openshift
2. Red Hat OpenShift. https://www.redhat.com/en/technologies/cloud-computing/openshift
3. US Energy Information Administration. https://www.eia.gov/tools/faqs/faq.php?id=74&t=11
Rakesh Krishnakumar, IBM Global Sales – Cloud Platform. firstname.lastname@example.org
Allison Moshier, IBM, Product Manager – z/OS. Allison.Moshier@ibm.com
Ahilan Rajadeva, IBM, STSM – z/OS Container Extensions. email@example.com
Gary Puchkoff, IBM, z/OS New Technology. firstname.lastname@example.org
Antonia Paldera, IBM, Senior IT Economics Specialist. Antonia_Paldera@it.ibm.com
Giuseppe Calavaro, IBM, Senior IT Economics Specialist. email@example.com
Tilman Wagner, IBM, IT Economics – Europe & MEA. Tilman.Wagner@de.ibm.com
John Gustavson, IBM, Principal IT Economics Specialist. firstname.lastname@example.org